svn commit: r733423 - in /ofbiz/trunk/framework: entity/src/org/ofbiz/entity/GenericValue.java entityext/src/org/ofbiz/entityext/synchronization/EntitySyncServices.java

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r733423 - in /ofbiz/trunk/framework: entity/src/org/ofbiz/entity/GenericValue.java entityext/src/org/ofbiz/entityext/synchronization/EntitySyncServices.java

jonesde
Author: jonesde
Date: Sat Jan 10 22:53:05 2009
New Revision: 733423

URL: http://svn.apache.org/viewvc?rev=733423&view=rev
Log:
Improved GenericValue.checkFks method so that is dummy fk value is created then it will inherit the values create/update stamps so it doesn't seem like newer data; should fix issue reported by Sam Hamilton about 2-way entity sync erasing data when dummy fks are needed

Modified:
    ofbiz/trunk/framework/entity/src/org/ofbiz/entity/GenericValue.java
    ofbiz/trunk/framework/entityext/src/org/ofbiz/entityext/synchronization/EntitySyncServices.java

Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/GenericValue.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/GenericValue.java?rev=733423&r1=733422&r2=733423&view=diff
==============================================================================
--- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/GenericValue.java (original)
+++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/GenericValue.java Sat Jan 10 22:53:05 2009
@@ -467,6 +467,13 @@
                         if (allFieldsSet) {
                             if (Debug.infoOn()) Debug.logInfo("Creating place holder value : " + newValue, module);
 
+                            // inherit create and update times from this value in order to make this not seem like new/fresh data
+                            newValue.put(ModelEntity.CREATE_STAMP_FIELD, this.get(ModelEntity.CREATE_STAMP_FIELD));
+                            newValue.put(ModelEntity.CREATE_STAMP_TX_FIELD, this.get(ModelEntity.CREATE_STAMP_TX_FIELD));
+                            newValue.put(ModelEntity.STAMP_FIELD, this.get(ModelEntity.STAMP_FIELD));
+                            newValue.put(ModelEntity.STAMP_TX_FIELD, this.get(ModelEntity.STAMP_TX_FIELD));
+                            // set isFromEntitySync so that create/update stamp fields set above will be preserved
+                            newValue.setIsFromEntitySync(true);
                             // check the FKs for the newly created entity
                             newValue.checkFks(true);
                             newValue.create();

Modified: ofbiz/trunk/framework/entityext/src/org/ofbiz/entityext/synchronization/EntitySyncServices.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entityext/src/org/ofbiz/entityext/synchronization/EntitySyncServices.java?rev=733423&r1=733422&r2=733423&view=diff
==============================================================================
--- ofbiz/trunk/framework/entityext/src/org/ofbiz/entityext/synchronization/EntitySyncServices.java (original)
+++ ofbiz/trunk/framework/entityext/src/org/ofbiz/entityext/synchronization/EntitySyncServices.java Sat Jan 10 22:53:05 2009
@@ -89,7 +89,7 @@
             esc.setSplitStartTime(); // just run this the first time, will be updated between each loop automatically
             while (esc.hasMoreTimeToSync()) {
                 
-                // TODO make sure the following message is commented out before commit:
+                // this will result in lots of log messages, so leaving commented out unless needed/wanted later
                 // Debug.logInfo("Doing runEntitySync split, currentRunStartTime=" + esc.currentRunStartTime + ", currentRunEndTime=" + esc.currentRunEndTime, module);
                 
                 esc.totalSplits++;