Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » EclipseLink » Can't get static weaving working(Toplink=>Eclipselink Upgrade, unable to get weaving working)
Can't get static weaving working [message #663726] Wed, 06 April 2011 10:48 Go to next message
Rich Livingstone is currently offline Rich LivingstoneFriend
Messages: 12
Registered: April 2011
Junior Member
Hi

I am upgrading a Toplink Essentials project running on OC4J 10.3.1.1 to Eclipselink (2.0.2 currently) but can't get static weaving working, and hence lazy loading won't work. I think apart from that the code is ok under Eclipselink because when I change my entity relationships from LAZY to EAGER it all works fine. The deployment EAR file contains a jar with several EJB 3.0 stateless session beans exposing Java-first web services. The application has been running successfully in the wild for about 16 months now.

Anyway, how I did it was like this:

1) Add to my ANT build:

<taskdef name="eclipselink.weave"
classname=" org.eclipse.persistence.tools.weaving.jpa.StaticWeaveAntTask ">
<classpath>
<fileset file="${eclipselink.weave.classpath}"/>
</classpath>
</taskdef>

2) Run this task on the compiled application .class files and , then proceed as I did before ie create a jar with this and persistence.xml, package that jar in an ear along with some OC4J and EJB 3.0 descriptors, then deploy the ear file

When I do, I get a null pointer exception as below:
11/04/06 10:53:34 WARNING: DeployerRunnable.run java.lang.InstantiationException: Application: democustomer is in failed state as initialization failedoracle.oc4j.admin.internal.DeployerException: java.lang.InstantiationException: Application: democustomer is in failed state as initialization failed
at oracle.oc4j.admin.internal.DeployerBase.execute(DeployerBase .java:126)
at oracle.oc4j.admin.jmx.server.mbeans.deploy.OC4JDeployerRunna ble.doRun(OC4JDeployerRunnable.java:52)
at oracle.oc4j.admin.jmx.server.mbeans.deploy.DeployerRunnable. run(DeployerRunnable.java:81)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker. run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.InstantiationException: Application: democustomer is in failed state as initialization failed
at com.evermind.server.Application.setConfig(Application.java:4 71)
at com.evermind.server.Application.setConfig(Application.java:3 14)
at com.evermind.server.ApplicationServer.addApplication(Applica tionServer.java:1853)
at oracle.oc4j.admin.internal.ApplicationDeployer.addApplicatio n(ApplicationDeployer.java:512)
at oracle.oc4j.admin.internal.ApplicationDeployer.doDeploy(Appl icationDeployer.java:196)
at oracle.oc4j.admin.internal.DeployerBase.execute(DeployerBase .java:93)
... 4 more
Caused by: java.lang.InstantiationException: Error initializing ejb-modules: nested exception is: java.lang.NullPointerException
at com.evermind.server.ejb.EJBContainer.postInit(EJBContainer.j ava:1064)
at com.evermind.server.ApplicationStateRunning.initializeApplic ation(ApplicationStateRunning.java:217)

and this in stderr:
2011-04-06 10:53:31.660 NOTIFICATION Processing EJB module: democustomer.jar
2011-04-06 10:53:33.019 WARNING OWS-00086 The nested parameterized generic type java.util.Set<java.util.Map.java.util.Map$Entry<K, V>> is not supported.
2011-04-06 10:53:33.021 WARNING OWS-00086 The nested parameterized generic type java.util.Map<java.lang.String, java.util.Vector<java.util.List<java.lang.String>>> is not supported.
2011-04-06 10:53:33.029 WARNING OWS-00086 The nested parameterized generic type java.util.Map<java.lang.Class, java.util.Map<org.eclipse.persistence.internal.sessions.ObjectChangeSet, org.eclipse.persistence.internal.sessions.ObjectChangeSet>> is not supported.
2011-04-06 10:53:33.029 WARNING OWS-00086 The nested parameterized generic type java.util.Map<java.lang.Class, java.util.Map<org.eclipse.persistence.internal.sessions.ObjectChangeSet, org.eclipse.persistence.internal.sessions.ObjectChangeSet>> is not supported.
2011-04-06 10:53:33.042 WARNING OWS-00086 The nested parameterized generic type java.util.Map<org.eclipse.persistence.internal.helper.DatabaseField, java.util.List<org.eclipse.persistence.mappings.DatabaseMapping >> is not supported.
2011-04-06 10:53:33.043 WARNING OWS-00086 The nested parameterized generic type java.util.Map<org.eclipse.persistence.internal.helper.DatabaseField, java.util.List<org.eclipse.persistence.mappings.DatabaseMapping >> is not supported.
2011-04-06 10:53:33.043 WARNING OWS-00086 The nested parameterized generic type java.util.Map<org.eclipse.persistence.internal.helper.DatabaseField, java.util.List<org.eclipse.persistence.mappings.DatabaseMapping >> is not supported.
2011-04-06 10:53:33.049 WARNING OWS-00086 The nested parameterized generic type java.util.Map<org.eclipse.persistence.internal.helper.DatabaseTable, java.util.Map<org.eclipse.persistence.internal.helper.DatabaseField, org.eclipse.persistence.internal.helper.DatabaseField>> is not supported.
2011-04-06 10:53:33.052 WARNING OWS-00086 The nested parameterized generic type java.util.Map<org.eclipse.persistence.internal.helper.DatabaseTable, java.util.Set<org.eclipse.persistence.internal.helper.DatabaseTable >> is not supported.
2011-04-06 10:53:33.052 WARNING OWS-00086 The nested parameterized generic type java.util.Map<org.eclipse.persistence.internal.helper.DatabaseTable, java.util.Map<org.eclipse.persistence.internal.helper.DatabaseField, org.eclipse.persistence.internal.helper.DatabaseField>> is not supported.
2011-04-06 10:53:33.053 WARNING OWS-00086 The nested parameterized generic type java.util.Map<org.eclipse.persistence.internal.helper.DatabaseTable, java.util.Map<org.eclipse.persistence.internal.helper.DatabaseField, org.eclipse.persistence.internal.helper.DatabaseField>> is not supported.
2011-04-06 10:53:33.054 WARNING OWS-00086 The nested parameterized generic type java.util.Map<java.lang.String, java.util.List<java.lang.String>> is not supported.
2011-04-06 10:53:33.074 WARNING OWS-00086 The nested parameterized generic type java.util.Map<org.eclipse.persistence.internal.helper.DatabaseTable, java.util.Map<org.eclipse.persistence.internal.helper.DatabaseField, org.eclipse.persistence.internal.helper.DatabaseField>> is not supported.
2011-04-06 10:53:33.075 WARNING OWS-00086 The nested parameterized generic type java.util.Map<org.eclipse.persistence.internal.helper.DatabaseTable, java.util.Set<org.eclipse.persistence.internal.helper.DatabaseTable >> is not supported.
2011-04-06 10:53:33.075 WARNING OWS-00086 The nested parameterized generic type java.util.Map<org.eclipse.persistence.internal.helper.DatabaseTable, java.util.Map<org.eclipse.persistence.internal.helper.DatabaseField, org.eclipse.persistence.internal.helper.DatabaseField>> is not supported.
2011-04-06 10:53:33.075 WARNING OWS-00086 The nested parameterized generic type java.util.Map<org.eclipse.persistence.internal.helper.DatabaseTable, java.util.Map<org.eclipse.persistence.internal.helper.DatabaseField, org.eclipse.persistence.internal.helper.DatabaseField>> is not supported.
2011-04-06 10:53:34.881 WARNING OWS-00061 Ignoring property name "SIZES" in class "com.prologic.cims.services.bindings.filterList.SizeRangeCT" because it is not JAX-RPC compliant
2011-04-06 10:53:34.881 WARNING OWS-00061 Ignoring property name "FITS" in class "com.prologic.cims.services.bindings.filterList.SizeRangeCT" because it is not JAX-RPC compliant
11/04/06 10:53:34 oracle.j2ee.ws.common.tools.api.ValidationException: org.eclipse.persistence.internal.helper.DatabaseField - class "org.eclipse.persistence.internal.helper.DatabaseField" cannot have a JavaBean property "typeName" and a public member of the same name.
11/04/06 10:53:34 at oracle.j2ee.ws.common.processor.modeler.rmi.ValueTypeModeler .processTypeMappingRegistry(ValueTypeModeler.java:295)
11/04/06 10:53:34 at oracle.j2ee.ws.common.processor.modeler.rmi.ValueTypeModeler .processTypeMappingRegistry(ValueTypeModeler.java:131)
11/04/06 10:53:34 at oracle.j2ee.ws.common.processor.modeler.rmi.ValueTypeModeler .buildModel(ValueTypeModeler.java:112)
11/04/06 10:53:34 at oracle.j2ee.ws.common.processor.modeler.rmi.RmiModeler.build Model(RmiModeler.java:172)
11/04/06 10:53:34 at oracle.j2ee.ws.common.processor.config.ModelInfo.buildModel( ModelInfo.java:173)
11/04/06 10:53:34 at oracle.j2ee.ws.common.processor.Processor.runModeler(Process or.java:72)
11/04/06 10:53:34 at oracle.j2ee.ws.common.metadata.annotation.DeploymentGenerato r$DeploymentCompileTool.run(DeploymentGenerator.java:200)
11/04/06 10:53:34 at oracle.j2ee.ws.common.metadata.annotation.DeploymentGenerato r.generateDeploymentArtifacts(DeploymentGenerator.java:131)
11/04/06 10:53:34 at oracle.j2ee.ws.common.metadata.annotation.EJBWebServiceAnnot ationParser.parseAnnotatedBean(EJBWebServiceAnnotationParser .java:165)
11/04/06 10:53:34 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
11/04/06 10:53:34 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce ssorImpl.java:39)
11/04/06 10:53:34 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe thodAccessorImpl.java:25)
11/04/06 10:53:34 at java.lang.reflect.Method.invoke(Method.java:597)
11/04/06 10:53:34 at oracle.j2ee.ws.server.deployment.oc4j.WebServiceAnnotationLi stener.parseAnnotatedClass(WebServiceAnnotationListener.java :85)
11/04/06 10:53:34 at com.evermind.server.ejb.AnnotationParser.notifyAnnotationLis teners(AnnotationParser.java:201)
11/04/06 10:53:34 at com.evermind.server.ejb.AnnotationParser.parseAnnotations(An notationParser.java:73)
11/04/06 10:53:34 at com.evermind.server.ejb.EJBPackageDeployment.parseMetaData(E JBPackageDeployment.java:939)
11/04/06 10:53:34 at com.evermind.server.ejb.EJBContainer.postInit(EJBContainer.j ava:832)
11/04/06 10:53:34 at com.evermind.server.ApplicationStateRunning.initializeApplic ation(ApplicationStateRunning.java:217)
11/04/06 10:53:34 at com.evermind.server.Application.setConfig(Application.java:4 13)
11/04/06 10:53:34 at com.evermind.server.Application.setConfig(Application.java:3 14)
11/04/06 10:53:34 at com.evermind.server.ApplicationServer.addApplication(Applica tionServer.java:1853)
11/04/06 10:53:34 at oracle.oc4j.admin.internal.ApplicationDeployer.addApplicatio n(ApplicationDeployer.java:512)
11/04/06 10:53:34 at oracle.oc4j.admin.internal.ApplicationDeployer.doDeploy(Appl icationDeployer.java:196)
11/04/06 10:53:34 at oracle.oc4j.admin.internal.DeployerBase.execute(DeployerBase .java:93)
11/04/06 10:53:34 at oracle.oc4j.admin.jmx.server.mbeans.deploy.OC4JDeployerRunna ble.doRun(OC4JDeployerRunnable.java:52)
11/04/06 10:53:34 at oracle.oc4j.admin.jmx.server.mbeans.deploy.DeployerRunnable. run(DeployerRunnable.java:81)
11/04/06 10:53:34 at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker. run(ReleasableResourcePooledExecutor.java:303)
11/04/06 10:53:34 at java.lang.Thread.run(Thread.java:619)
11/04/06 10:53:34 Caused by: oracle.j2ee.ws.common.processor.modeler.rmi.InvalidParameter Exception: org.eclipse.persistence.internal.helper.DatabaseField - class "org.eclipse.persistence.internal.helper.DatabaseField" cannot have a JavaBean property "typeName" and a public member of the same name.
11/04/06 10:53:34 at oracle.j2ee.ws.common.processor.modeler.rmi.RmiType.classTyp e(RmiType.java:129)
11/04/06 10:53:34 at oracle.j2ee.ws.common.processor.modeler.rmi.RmiType.getRmiTy pe(RmiType.java:189)
11/04/06 10:53:34 at oracle.j2ee.ws.common.processor.modeler.rmi.RmiType.getRmiTy pe(RmiType.java:168)
11/04/06 10:53:34 at oracle.j2ee.ws.common.processor.modeler.rmi.ValueTypeModeler .processTypeMappingRegistry(ValueTypeModeler.java:255)
11/04/06 10:53:34 ... 28 more


But I don't expose the eclipse classes in my APIs so I have no idea what might be going on here. Any ideas, anyone ?

My persistence.xml file contains this snippet
<property name="eclipselink.weaving" value="static"/>
<property name="eclipselink.weaving.lazy" value="true"/>
<property name="eclipselink.weaving.internal" value="true"/>
<property name="eclipselink.logging.level" value="FINEST"/>


I have tried dynamic weaving but I get a whole different set of problems to do with classes not being found when I add the required javaagent setting to the JVM and when I add those to the JVM like this:

-Xbootclasspath/a:C:\ecommerce\lib_external\eclipselink2.0.2 \javax.persistence_2.0.0.v201002051058.jar;C:\ecommerce\lib_ external\eclipselink2.0.2\eclipselink.jar

I just get more similar errors but claiming not to find javax.* files. If I only include eclipselink.jar I am told that some persistence classes aren't found (I tried dropping the jar into the standard location for OC4J and replacing the existing persistence.jar but no go) and once I start adding to the boot classpath I think maybe everything is expected to be there. Could be wrong but I think I am going down a blind alley with that.

Anyway, any help would be much appreciated.

Regards

Richard
Re: Can't get static weaving working [message #663785 is a reply to message #663726] Wed, 06 April 2011 13:50 Go to previous messageGo to next message
Rich Livingstone is currently offline Rich LivingstoneFriend
Messages: 12
Registered: April 2011
Junior Member
PS ${eclipselink.weave.classpath} evaliuates to the location of eclipselink.jar in the above post
Re: Can't get static weaving working [message #663817 is a reply to message #663726] Wed, 06 April 2011 14:57 Go to previous messageGo to next message
Blaise Doughan is currently offline Blaise DoughanFriend
Messages: 163
Registered: July 2009
Senior Member

Hi Rich,

Weaving will modify the byte code for your domain classes to add fields to handle tasks such as lazy loading and change tracking (tasks that improve performance).

Your issue appears to be that JAX-RPC is complaining when it introspects your domain models fields it is finding items that it does not know how to handle. If you were using JAX-WS my suggestion would be to ensure that your model classes were annotated with @XmlAccessorType(XmlAccessType.PROPERTY), I'm not sure if there is an equivalent in JAX-RPC.

-Blaise
Re: Can't get static weaving working [message #663839 is a reply to message #663817] Wed, 06 April 2011 15:35 Go to previous messageGo to next message
Rich Livingstone is currently offline Rich LivingstoneFriend
Messages: 12
Registered: April 2011
Junior Member
Hi Blaise

Thanks for the suggestion, I will try it. It explains 2 of the warnings - however, those warnings (and more) were also present in my Toplink deployment but didn't kill it. It doesn't really explain why I got the error that appears to be responsible for the NPE either which concerns one of the EclipseLink classes.

Thanksd

Richard
Re: Can't get static weaving working [message #664125 is a reply to message #663839] Thu, 07 April 2011 14:46 Go to previous messageGo to next message
James Sutherland is currently offline James SutherlandFriend
Messages: 1939
Registered: July 2009
Location: Ottawa, Canada
Senior Member

EclipseLink weaves more than TopLink Essentials, so you could be getting more errors. In general you don't want the fields EclipseLink adds to the class to be serialized with XML (seems to be trying to serialize the entire session, which would be very bad). Switching to property access would be best.

You can configure to only have weaving of lazy to be done to be similar to essentials, (by default weaving is true)

<property name="eclipselink.weaving.internal" value="false"/>
<property name="eclipselink.weaving.fetchgroups" value="false"/>
<property name="eclipselink.weaving.changetracking" value="false"/>



James : Wiki : Book : Blog : Twitter
Re: Can't get static weaving working [message #668064 is a reply to message #663726] Tue, 03 May 2011 15:05 Go to previous messageGo to next message
Rich Livingstone is currently offline Rich LivingstoneFriend
Messages: 12
Registered: April 2011
Junior Member
Hi chaps

That did the trick - my static weaving now appears to be working and is deployable, at least, the class files change when I run the static weave target and I can deploy them fine using the properties mentioned above. However- lazy loading is still not working as when I use either EntityManager.find or getReference to retrieve an entity and then use a getter for a relationship marked as FetchType.LAZY (method annotation), it returns null. This is weird because immediately before I can see the SQL issued retrieving this object.

I won't bore you with all the detail but I have an @Entity class CmsProduct which amongst other relationships has this in it (I did try without the join fetch too, but it didn't include that object in the SQL then):

@OneToOne (cascade = CascadeType.ALL,fetch=FetchType.LAZY)
@JoinFetch(value=JoinFetchType.OUTER)
@JoinColumn(name = "WORKFLOWID")
public CmsWorkflow getCmsWorkflow() {
return cmsWorkflow;
}
public void setCmsWorkflow(CmsWorkflow cmsWorkflow) {
this.cmsWorkflow = cmsWorkflow;
}

and then a class :
@Entity
@Table(name = "CMS_WORKFLOW")
public class CmsWorkflow implements Serializable {
.. etc..

Executing
CmsProduct result = site.getEntityManager().find(CmsProduct.class,
productid);
CmsWorkflow wkflresult =
result.getCmsWorkflow();

wkflresult result is null, but not under Toplink Essentials. I get the same if I use getReference() for find().

Any ideas - is it possible that weaving is actually not on ? I am using these settings now in persistence.xml for all persistence units:

<property name="eclipselink.weaving" value="static"/>
<property name="eclipselink.weaving.internal" value="false"/>
<property name="eclipselink.weaving.fetchgroups" value="false"/>
<property name="eclipselink.weaving.changetracking" value="false"/>

The SQL issued is as below so it does a join to the table CMS_WORKFLOW although it doesn't appear to retrieve any fields here - but it shouldn't need to, right ? That would happen when the getter is invoked ?

[EL Fine]: 2011-05-03 15:49:58.496--ServerSession(1656483996)--Connection(59975398 0)--Thread(Thread[HTTPThreadGroup-4,5,HTTPThreadGroup])--SEL ECT t1.PRODUCTID, t1.ADDITIONAL_INFO, t1.BF_MAT_CHAR_VAL, t1.DEFAULT_CIMS_COLOUR, t1.DEFAULT_IMG, t1.DESCRIPTION, t1.DETAILED_DESCRIPTION, t1.KEYWORDS, t1.SEASON, t1.STY_CODE, t1.STY_NUM, t1.STY_QUAL, t1.WORKFLOWID, t0.WORKFLOWID, t0.CREATED_DATE, t0.FIRSTLIVE_DATE, t0.GOLIVE_DATE, t0.LASTUPDATEDBY, t0.LOCK_DATE, t0.LOCK_MESSAGE, t0.LOCK_MESSAGE_DATE, t0.LOCK_MESSAGE_USER, t0.LOCKEDBY, t0.PREVIOUS_STATUS, t0.STATUS, t0.STOPLIVE_DATE, t0.UPDATED_DATE, t2.SEQUENCEID, t2.PRODUCTID, t2.AUDITID, t3.CATEGORYID, t3.CIMS_COLOUR, t3.PRODUCTID, t3.RANKING, t3.WORKFLOWID FROM CMS_PRODUCT t1 LEFT OUTER JOIN CMS_WORKFLOW t0 ON (t0.WORKFLOWID = t1.WORKFLOWID) LEFT OUTER JOIN CMS_PRODUCT_AUDIT t2 ON (t2.PRODUCTID = t1.PRODUCTID) LEFT OUTER JOIN CMS_PRODUCT_CATEGORY t3 ON (t3.PRODUCTID = t1.PRODUCTID)
.
Any ideas ?

Best regards

Richard

PS One thing I did notice in the OC4J startup is that I get messages from both Eclipselink and Toplink re the entities loaded (see below) - is it possible that the wrong libraries are being used ? To activate Eclipselink, I am using a shared library in OC4J with Java persistence 2.0 and Eclipselink 2.2.0 in, as per the Eclpselink UG wiki instructions. Should I also take some action to remove the toplink essentials jars, whichver they are ?

<snip>
[EL Config]: 2011-05-03 15:42:22.52--ServerSession(1370483982)--Thread(Thread[OC4J Launcher,5,main])--The alias name for the entity class [class com.prologic.cms.database.generated.CmsProduct] is being defaulted to: CmsProduct.
<snip>
[TopLink Config]: 2011.05.03 03:42:24.870--ServerSession(89421091)--The alias name for the entity class [class com.prologic.cms.database.generated.CmsProduct] is being defaulted to: CmsProduct.

[Updated on: Tue, 03 May 2011 15:10]

Report message to a moderator

Re: Can't get static weaving working [message #668163 is a reply to message #668064] Wed, 04 May 2011 09:13 Go to previous messageGo to next message
Rich Livingstone is currently offline Rich LivingstoneFriend
Messages: 12
Registered: April 2011
Junior Member
You can ignore the PS - I forgot to include this line in one of my persistence units in persistence.xml (not the one through which lazy loading wasn't working, in fact, so it shouldn't make a difference but I will test that):

<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider >
Re: Can't get static weaving working [message #668207 is a reply to message #668064] Wed, 04 May 2011 13:55 Go to previous messageGo to next message
Chris Delahunt is currently offline Chris DelahuntFriend
Messages: 1039
Registered: July 2009
Senior Member
Can you explain the statement "(I did try without the join fetch too, but it didn't include that object in the SQL then)" ?

JoinFetch runs counter to lazy fetching a relationship as lazy means do not fetch/query the relationship until it is needed, while join fetch gets it in the initial sql statement. The combination might be causing a problem - Though I would recommend you don't use join fetch with lazy, there should not be a problem as the combination would make the relationship effectively eager.
If the sql was not returning any fields for CmsWorkflow that would be strange since fetch join requires it to, but there are t0.WORKFLOWID,.. t0.UPDATED_DATE fields for CMS_WORKFLOW in the SQL you posted, so I'm not sure you are correct.

If you run the sql statement yourself, do you get the expected results? Could the CmsProduct object have been cached with its referenced cmsWorkflow set to null or never set?
Best Regards,
Chris
Re: Can't get static weaving working [message #668220 is a reply to message #668207] Wed, 04 May 2011 15:06 Go to previous message
Rich Livingstone is currently offline Rich LivingstoneFriend
Messages: 12
Registered: April 2011
Junior Member
Hi Chris

What I mean is that

@OneToOne (cascade = CascadeType.ALL,fetch=FetchType.LAZY)
@JoinFetch(value=JoinFetchType.OUTER)
@JoinColumn(name = "WORKFLOWID")
public CmsWorkflow getCmsWorkflow() {

and @OneToOne (cascade = CascadeType.ALL,fetch=FetchType.LAZY)
@JoinColumn(name = "WORKFLOWID")
public CmsWorkflow getCmsWorkflow() {

give the same results. I see what you mean about the CMS_WORKFLOW fields, they are actually retrieved, but still no object is passed back when the setter is invoked.

If I change to FetchType.EAGER it all works perfectly.

However - I tried removing the @JoinFetch (given what you said about it forcing EAGER behaviour) and added the line below to persistence.xml for one of my persistence units that was nothing to do with this test:

<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider >

- and voila, lazy loading is working properly and the toplink logging messages have vanished. Figure that ? I guess somewhere the wrong classes are being loaded and used but isn't everything now under the org.eclipselink closure that is used ? In any case, I'm happy that it looks to be fixed, so user error but it always helps to work it through publicly Smile

Kind regards

Richard
Previous Topic:Does flush() sync with the db or the L2 cache?
Next Topic:OrderBy problem when traversing properties
Goto Forum:
  


Current Time: Thu Nov 27 09:53:24 GMT 2014

Powered by FUDForum. Page generated in 0.03943 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software