[exo-jcr-commits] exo-jcr SVN: r3657 - in jcr/trunk/exo.jcr.component.ext/src: test/java/org/exoplatform/services/jcr/ext/backup and 1 other directory.

do-not-reply at jboss.org do-not-reply at jboss.org
Fri Dec 10 03:32:32 EST 2010


Author: tolusha
Date: 2010-12-10 03:32:32 -0500 (Fri, 10 Dec 2010)
New Revision: 3657

Modified:
   jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/impl/rdbms/FullBackupJob.java
   jcr/trunk/exo.jcr.component.ext/src/test/java/org/exoplatform/services/jcr/ext/backup/TestRdbmsWorkspaceInitializer.java
Log:
EXOJCR-1078: correct dump lock tables, lock table name is taken from configuration

Modified: jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/impl/rdbms/FullBackupJob.java
===================================================================
--- jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/impl/rdbms/FullBackupJob.java	2010-12-10 08:27:02 UTC (rev 3656)
+++ jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/impl/rdbms/FullBackupJob.java	2010-12-10 08:32:32 UTC (rev 3657)
@@ -32,6 +32,7 @@
 import org.exoplatform.services.jcr.ext.backup.impl.FileNameProducer;
 import org.exoplatform.services.jcr.impl.Constants;
 import org.exoplatform.services.jcr.impl.core.RdbmsWorkspaceInitializer;
+import org.exoplatform.services.jcr.impl.core.lock.cacheable.AbstractCacheableLockManager;
 import org.exoplatform.services.jcr.impl.core.query.SystemSearchManager;
 import org.exoplatform.services.jcr.impl.dataflow.serialization.ObjectWriterImpl;
 import org.exoplatform.services.jcr.impl.storage.jdbc.DBConstants;
@@ -210,15 +211,14 @@
          }
 
          // dump LOCK data
-         scripts =
-            new String[][]{
-               {"JCR_LOCK_" + workspaceName.toUpperCase(), "select * from JCR_LOCK_" + workspaceName.toUpperCase()},
-               {"JCR_LOCK_" + workspaceName.toUpperCase() + "_D",
-                  "select * from JCR_LOCK_" + workspaceName.toUpperCase() + "_D"}};
+         String lockTableName = AbstractCacheableLockManager.getLockTableName(workspaceEntry.getLockManager());
+         if (lockTableName != null)
+         {
+            scripts =
+               new String[][]{{lockTableName, "select * from " + lockTableName},
+                  {lockTableName + "_D", "select * from " + lockTableName + "_D"}};
 
-         for (String script[] : scripts)
-         {
-            if (jdbcConn.getMetaData().getTables(null, null, script[0], new String[]{"TABLE"}).next())
+            for (String script[] : scripts)
             {
                dumpTable(jdbcConn, script[0], script[1]);
             }
@@ -390,6 +390,7 @@
          {
             columnType[i] = metaData.getColumnType(i + 1);
             contentWriter.writeInt(columnType[i]);
+            contentWriter.writeString(metaData.getColumnName(i + 1));
          }
 
          // Now we can output the actual data

Modified: jcr/trunk/exo.jcr.component.ext/src/test/java/org/exoplatform/services/jcr/ext/backup/TestRdbmsWorkspaceInitializer.java
===================================================================
--- jcr/trunk/exo.jcr.component.ext/src/test/java/org/exoplatform/services/jcr/ext/backup/TestRdbmsWorkspaceInitializer.java	2010-12-10 08:27:02 UTC (rev 3656)
+++ jcr/trunk/exo.jcr.component.ext/src/test/java/org/exoplatform/services/jcr/ext/backup/TestRdbmsWorkspaceInitializer.java	2010-12-10 08:32:32 UTC (rev 3657)
@@ -18,17 +18,6 @@
  */
 package org.exoplatform.services.jcr.ext.backup;
 
-import java.io.File;
-import java.net.URL;
-import java.sql.Connection;
-import java.sql.Statement;
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.List;
-
-import javax.naming.InitialContext;
-import javax.sql.DataSource;
-
 import org.exoplatform.services.jcr.config.SimpleParameterEntry;
 import org.exoplatform.services.jcr.config.WorkspaceEntry;
 import org.exoplatform.services.jcr.config.WorkspaceInitializerEntry;
@@ -41,12 +30,22 @@
 import org.exoplatform.services.jcr.util.IdGenerator;
 import org.exoplatform.services.jcr.util.TesterConfigurationHelper;
 
+import java.io.File;
+import java.net.URL;
+import java.sql.Connection;
+import java.sql.Statement;
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.List;
+
+import javax.naming.InitialContext;
+import javax.sql.DataSource;
+
 /**
  * @author <a href="mailto:anatoliy.bazko at gmail.com">Anatoliy Bazko</a>
  * @version $Id: TestFullBackupJob.java 34360 2009-07-22 23:58:59Z tolusha $
  */
-public class TestRdbmsWorkspaceInitializer
-   extends BaseRDBMSBackupTest
+public class TestRdbmsWorkspaceInitializer extends BaseRDBMSBackupTest
 {
    TesterConfigurationHelper helper = TesterConfigurationHelper.getInstence();
 



More information about the exo-jcr-commits mailing list