exo-jcr SVN: r5939 - in kernel/branches/2.3.x: patch and 2 other directories.
by do-not-reply@jboss.org
Author: nfilotto
Date: 2012-03-22 08:18:56 -0400 (Thu, 22 Mar 2012)
New Revision: 5939
Added:
kernel/branches/2.3.x/patch/
kernel/branches/2.3.x/patch/2.3.8-GA/
kernel/branches/2.3.x/patch/2.3.8-GA/KER-184/
kernel/branches/2.3.x/patch/2.3.8-GA/KER-184/KER-184.patch
Log:
KER-184: Patch that replaces the annotation NamingContext with NameTemplate in case of the StandaloneContainer and RootContainer otherwise the related MBean has no name which prevents it to be registered to the MBeanServer (branch 2.3.x)
Added: kernel/branches/2.3.x/patch/2.3.8-GA/KER-184/KER-184.patch
===================================================================
--- kernel/branches/2.3.x/patch/2.3.8-GA/KER-184/KER-184.patch (rev 0)
+++ kernel/branches/2.3.x/patch/2.3.8-GA/KER-184/KER-184.patch 2012-03-22 12:18:56 UTC (rev 5939)
@@ -0,0 +1,44 @@
+Index: exo.kernel.container/src/main/java/org/exoplatform/container/RootContainer.java
+===================================================================
+--- exo.kernel.container/src/main/java/org/exoplatform/container/RootContainer.java (revision 5937)
++++ exo.kernel.container/src/main/java/org/exoplatform/container/RootContainer.java (working copy)
+@@ -34,7 +34,7 @@
+ import org.exoplatform.container.xml.Configuration;
+ import org.exoplatform.management.annotations.Managed;
+ import org.exoplatform.management.annotations.ManagedDescription;
+-import org.exoplatform.management.jmx.annotations.NamingContext;
++import org.exoplatform.management.jmx.annotations.NameTemplate;
+ import org.exoplatform.management.jmx.annotations.Property;
+ import org.exoplatform.management.rest.annotations.RESTEndpoint;
+ import org.exoplatform.services.log.ExoLogger;
+@@ -61,7 +61,7 @@
+ * tuan08(a)users.sourceforge.net Date: Jul 21, 2004 Time: 12:15:28 AM
+ */
+ @Managed
+-@NamingContext(@Property(key = "container", value = "root"))
++@NameTemplate(@Property(key = "container", value = "root"))
+ @RESTEndpoint(path = "rcontainer")
+ public class RootContainer extends ExoContainer
+ {
+Index: exo.kernel.container/src/main/java/org/exoplatform/container/StandaloneContainer.java
+===================================================================
+--- exo.kernel.container/src/main/java/org/exoplatform/container/StandaloneContainer.java (revision 5937)
++++ exo.kernel.container/src/main/java/org/exoplatform/container/StandaloneContainer.java (working copy)
+@@ -29,7 +29,7 @@
+ import org.exoplatform.container.xml.Configuration;
+ import org.exoplatform.management.annotations.Managed;
+ import org.exoplatform.management.annotations.ManagedDescription;
+-import org.exoplatform.management.jmx.annotations.NamingContext;
++import org.exoplatform.management.jmx.annotations.NameTemplate;
+ import org.exoplatform.management.jmx.annotations.Property;
+ import org.exoplatform.management.rest.annotations.RESTEndpoint;
+ import org.exoplatform.services.log.ExoLogger;
+@@ -58,7 +58,7 @@
+ * (from where JVM is started) for standalone. See
+ */
+ @Managed
+-@NamingContext(@Property(key = "container", value = "standalone"))
++@NameTemplate(@Property(key = "container", value = "standalone"))
+ @RESTEndpoint(path = "scontainer")
+ public class StandaloneContainer extends ExoContainer implements SessionManagerContainer
+ {
12 years, 1 month
exo-jcr SVN: r5938 - in kernel/branches/2.2.x/patch: 2.2.13-GA and 1 other directories.
by do-not-reply@jboss.org
Author: nfilotto
Date: 2012-03-22 07:56:11 -0400 (Thu, 22 Mar 2012)
New Revision: 5938
Added:
kernel/branches/2.2.x/patch/2.2.13-GA/
kernel/branches/2.2.x/patch/2.2.13-GA/KER-184/
kernel/branches/2.2.x/patch/2.2.13-GA/KER-184/KER-184.patch
Log:
KER-184: Patch that replaces the annotation NamingContext with NameTemplate in case of the StandaloneContainer and RootContainer otherwise the related MBean has no name which prevents it to be registered to the MBeanServer (branch 2.2.x)
Added: kernel/branches/2.2.x/patch/2.2.13-GA/KER-184/KER-184.patch
===================================================================
--- kernel/branches/2.2.x/patch/2.2.13-GA/KER-184/KER-184.patch (rev 0)
+++ kernel/branches/2.2.x/patch/2.2.13-GA/KER-184/KER-184.patch 2012-03-22 11:56:11 UTC (rev 5938)
@@ -0,0 +1,44 @@
+Index: exo.kernel.container/src/main/java/org/exoplatform/container/RootContainer.java
+===================================================================
+--- exo.kernel.container/src/main/java/org/exoplatform/container/RootContainer.java (revision 5937)
++++ exo.kernel.container/src/main/java/org/exoplatform/container/RootContainer.java (working copy)
+@@ -30,7 +30,7 @@
+ import org.exoplatform.container.xml.Configuration;
+ import org.exoplatform.management.annotations.Managed;
+ import org.exoplatform.management.annotations.ManagedDescription;
+-import org.exoplatform.management.jmx.annotations.NamingContext;
++import org.exoplatform.management.jmx.annotations.NameTemplate;
+ import org.exoplatform.management.jmx.annotations.Property;
+ import org.exoplatform.management.rest.annotations.RESTEndpoint;
+ import org.exoplatform.services.log.ExoLogger;
+@@ -56,7 +56,7 @@
+ * tuan08(a)users.sourceforge.net Date: Jul 21, 2004 Time: 12:15:28 AM
+ */
+ @Managed
+-@NamingContext(@Property(key = "container", value = "root"))
++@NameTemplate(@Property(key = "container", value = "root"))
+ @RESTEndpoint(path = "rcontainer")
+ public class RootContainer extends ExoContainer
+ {
+Index: exo.kernel.container/src/main/java/org/exoplatform/container/StandaloneContainer.java
+===================================================================
+--- exo.kernel.container/src/main/java/org/exoplatform/container/StandaloneContainer.java (revision 5937)
++++ exo.kernel.container/src/main/java/org/exoplatform/container/StandaloneContainer.java (working copy)
+@@ -27,7 +27,7 @@
+ import org.exoplatform.container.xml.Configuration;
+ import org.exoplatform.management.annotations.Managed;
+ import org.exoplatform.management.annotations.ManagedDescription;
+-import org.exoplatform.management.jmx.annotations.NamingContext;
++import org.exoplatform.management.jmx.annotations.NameTemplate;
+ import org.exoplatform.management.jmx.annotations.Property;
+ import org.exoplatform.management.rest.annotations.RESTEndpoint;
+
+@@ -51,7 +51,7 @@
+ * (from where JVM is started) for standalone. See
+ */
+ @Managed
+-@NamingContext(@Property(key = "container", value = "standalone"))
++@NameTemplate(@Property(key = "container", value = "standalone"))
+ @RESTEndpoint(path = "scontainer")
+ public class StandaloneContainer extends ExoContainer implements SessionManagerContainer
+ {
12 years, 1 month
exo-jcr SVN: r5937 - in jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl: core/lock and 1 other directories.
by do-not-reply@jboss.org
Author: tolusha
Date: 2012-03-22 05:48:39 -0400 (Thu, 22 Mar 2012)
New Revision: 5937
Removed:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker/InspectionQueryFilteredMultivaluedProperties.java
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker/InspectionQuery.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/AbstractLockTableHandler.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/JDBCWorkspaceDataContainerChecker.java
Log:
EXOJCR-1754: testing on DB, fix for DB2
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker/InspectionQuery.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker/InspectionQuery.java 2012-03-22 09:21:04 UTC (rev 5936)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker/InspectionQuery.java 2012-03-22 09:48:39 UTC (rev 5937)
@@ -18,9 +18,6 @@
*/
package org.exoplatform.services.jcr.impl.checker;
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.SQLException;
/**
* @author <a href="mailto:aplotnikov@exoplatform.com">Andrey Plotnikov</a>
@@ -78,19 +75,4 @@
{
return repair;
}
-
- /**
- * Creates a PreparedStatement object for sending parameterized SQL statements to the database.
- *
- * @param connection
- * connection to workspace storage
- * @return
- * a new default PreparedStatement object containing the pre-compiled SQL statement
- * @throws SQLException
- * if a database access error occurs or this method is called on a closed connection
- */
- public PreparedStatement prepareStatement(Connection connection) throws SQLException
- {
- return connection.prepareStatement(statement);
- }
}
Deleted: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker/InspectionQueryFilteredMultivaluedProperties.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker/InspectionQueryFilteredMultivaluedProperties.java 2012-03-22 09:21:04 UTC (rev 5936)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker/InspectionQueryFilteredMultivaluedProperties.java 2012-03-22 09:48:39 UTC (rev 5937)
@@ -1,53 +0,0 @@
-/*
- * Copyright (C) 2012 eXo Platform SAS.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.exoplatform.services.jcr.impl.checker;
-
-
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.SQLException;
-
-/**
- * @author <a href="mailto:aplotnikov@exoplatform.com">Andrey Plotnikov</a>
- * @version $Id: InspectionQueryFilteredMultivaluedProperties.java 34360 16.02.2012 andrew.plotnikov $
- */
-public class InspectionQueryFilteredMultivaluedProperties extends InspectionQuery
-{
-
- /**
- * {@inheritDoc}
- */
- public InspectionQueryFilteredMultivaluedProperties(String statement, String[] fieldNames, String headerMessage,
- InconsistencyRepair repair)
- {
- super(statement, fieldNames, headerMessage, repair);
- }
-
- /**
- * {@inheritDoc}
- */
- public PreparedStatement prepareStatement(Connection connection) throws SQLException
- {
- PreparedStatement preparedStatement = super.prepareStatement(connection);
- preparedStatement.setBoolean(1, false);
-
- return preparedStatement;
- }
-
-}
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/AbstractLockTableHandler.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/AbstractLockTableHandler.java 2012-03-22 09:21:04 UTC (rev 5936)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/AbstractLockTableHandler.java 2012-03-22 09:48:39 UTC (rev 5937)
@@ -71,7 +71,7 @@
{
InspectionQuery query = getSelectQuery();
- preparedStatement = query.prepareStatement(jdbcConnection);
+ preparedStatement = jdbcConnection.prepareStatement(query.getStatement());
resultSet = preparedStatement.executeQuery();
while (resultSet.next())
@@ -103,7 +103,7 @@
{
InspectionQuery query = getDeleteQuery(nodeId);
- preparedStatement = query.prepareStatement(jdbcConnection);
+ preparedStatement = jdbcConnection.prepareStatement(query.getStatement());
preparedStatement.executeUpdate();
}
finally
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/JDBCWorkspaceDataContainerChecker.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/JDBCWorkspaceDataContainerChecker.java 2012-03-22 09:21:04 UTC (rev 5936)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/JDBCWorkspaceDataContainerChecker.java 2012-03-22 09:48:39 UTC (rev 5937)
@@ -31,7 +31,6 @@
import org.exoplatform.services.jcr.impl.checker.DummyRepair;
import org.exoplatform.services.jcr.impl.checker.EarlierVersionsRemover;
import org.exoplatform.services.jcr.impl.checker.InspectionQuery;
-import org.exoplatform.services.jcr.impl.checker.InspectionQueryFilteredMultivaluedProperties;
import org.exoplatform.services.jcr.impl.checker.InspectionReport;
import org.exoplatform.services.jcr.impl.checker.NodeRemover;
import org.exoplatform.services.jcr.impl.checker.PropertyRemover;
@@ -122,7 +121,7 @@
try
{
jdbcConnection = jdbcDataContainer.getConnectionFactory().getJdbcConnection();
- preparedStatement = lockInspectionQuery.prepareStatement(jdbcConnection);
+ preparedStatement = jdbcConnection.prepareStatement(lockInspectionQuery.getStatement());
resultSet = preparedStatement.executeQuery();
Set<String> lockedInJCRITEM = new HashSet<String>();
@@ -236,7 +235,7 @@
ResultSet resultSet = null;
try
{
- st = query.prepareStatement(jdbcConn);
+ st = jdbcConn.prepareStatement(query.getStatement());
resultSet = st.executeQuery();
if (resultSet.next())
@@ -300,7 +299,7 @@
try
{
connection = jdbcDataContainer.getConnectionFactory().getJdbcConnection();
- st = vsInspectionQuery.prepareStatement(connection);
+ st = connection.prepareStatement(vsInspectionQuery.getStatement());
resultSet = st.executeQuery();
if (resultSet.next())
@@ -505,13 +504,29 @@
DBConstants.COLUMN_ID, DBConstants.COLUMN_PARENTID, DBConstants.COLUMN_NAME, DBConstants.COLUMN_CLASS},
"Items that do not have parent nodes", new RootAsParentAssigner(jdbcDataContainer.getConnectionFactory())));
- itemsInspectionQuery.add(new InspectionQueryFilteredMultivaluedProperties(singleDatabase ? "select * from "
- + itemTable + " P where P.CONTAINER_NAME='" + jdbcDataContainer.containerConfig.containerName
- + "' and P.I_CLASS=2" + " and P.P_MULTIVALUED=? and NOT EXISTS( select * from " + valueTable
- + " V where V.PROPERTY_ID=P.ID)" : "select * from " + itemTable
- + " P where P.I_CLASS=2 and P.P_MULTIVALUED=? and NOT EXISTS( select * from " + valueTable + " V "
- + "where V.PROPERTY_ID=P.ID)", new String[]{DBConstants.COLUMN_ID, DBConstants.COLUMN_PARENTID,
- DBConstants.COLUMN_NAME},
+ String statement =
+ singleDatabase ? "select * from " + itemTable + " P where P.CONTAINER_NAME='"
+ + jdbcDataContainer.containerConfig.containerName + "' and P.I_CLASS=2"
+ + " and P.P_MULTIVALUED=? and NOT EXISTS( select * from " + valueTable + " V where V.PROPERTY_ID=P.ID)"
+ : "select * from " + itemTable
+ + " P where P.I_CLASS=2 and P.P_MULTIVALUED=? and NOT EXISTS( select * from " + valueTable + " V "
+ + "where V.PROPERTY_ID=P.ID)";
+
+ if (jdbcDataContainer.containerConfig.dbDialect.equalsIgnoreCase(DBConstants.DB_DIALECT_PGSQL))
+ {
+ statement = statement.replace("?", "'f'");
+ }
+ else if (jdbcDataContainer.containerConfig.dbDialect.equalsIgnoreCase(DBConstants.DB_DIALECT_HSQLDB))
+ {
+ statement = statement.replace("?", "FALSE");
+ }
+ else
+ {
+ statement = statement.replace("?", "0");
+ }
+
+ itemsInspectionQuery.add(new InspectionQuery(statement, new String[]{DBConstants.COLUMN_ID,
+ DBConstants.COLUMN_PARENTID, DBConstants.COLUMN_NAME},
"A node that has a single valued properties with nothing declared in the VALUE table.", new PropertyRemover(
jdbcDataContainer.getConnectionFactory(), nodeTypeManager)));
@@ -535,7 +550,6 @@
jdbcDataContainer.containerConfig.containerName, jdbcDataContainer.containerConfig.dbStructureType.isMultiDatabase())));
// The differences in the queries by DB dialect.
- String statement;
if (jdbcDataContainer.containerConfig.dbDialect.equalsIgnoreCase(DBConstants.DB_DIALECT_SYBASE))
{
statement =
12 years, 1 month
exo-jcr SVN: r5936 - jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker.
by do-not-reply@jboss.org
Author: nzamosenchuk
Date: 2012-03-22 05:21:04 -0400 (Thu, 22 Mar 2012)
New Revision: 5936
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker/RepositoryCheckController.java
Log:
EXOJCR-1748 : update RepositoryCheckController test, to show content of the report.
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker/RepositoryCheckController.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker/RepositoryCheckController.java 2012-03-22 08:57:44 UTC (rev 5935)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/checker/RepositoryCheckController.java 2012-03-22 09:21:04 UTC (rev 5936)
@@ -105,8 +105,8 @@
@ManagedDescription("Check repository data consistency. DB data, value storage and lucene index will be checked.")
public String checkAll()
{
- return checkAndRepair(new DataStorage[]{DataStorage.DB, DataStorage.VALUE_STORAGE,
- DataStorage.LUCENE_INDEX}, false);
+ return checkAndRepair(new DataStorage[]{DataStorage.DB, DataStorage.VALUE_STORAGE, DataStorage.LUCENE_INDEX},
+ false);
}
@Managed
@@ -171,6 +171,14 @@
});
}
+ /**
+ * @return absolute path to report or null if it doesn't exist.
+ */
+ public String getLastReportPath()
+ {
+ return lastReport != null ? lastReport.getReportPath() : null;
+ }
+
protected String checkAndRepairAction(DataStorage[] storages, boolean autoRepair)
{
try
@@ -185,7 +193,7 @@
try
{
suspendRepository();
-
+
return doCheckAndRepair(storages, autoRepair);
}
catch (RepositoryException e)
@@ -353,9 +361,10 @@
(ValueStoragePluginProvider)getComponent(ValueStoragePluginProvider.class, wsName);
WorkspaceEntry wsEntry = (WorkspaceEntry)getComponent(WorkspaceEntry.class, wsName);
-
- NodeTypeDataManagerImpl nodeTypeManager = (NodeTypeDataManagerImpl)getComponent(NodeTypeDataManagerImpl.class, wsName);
+ NodeTypeDataManagerImpl nodeTypeManager =
+ (NodeTypeDataManagerImpl)getComponent(NodeTypeDataManagerImpl.class, wsName);
+
return new JDBCWorkspaceDataContainerChecker(dataContainer, vsPlugin, wsEntry, nodeTypeManager, lastReport);
}
12 years, 1 month
exo-jcr SVN: r5935 - jcr/trunk/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl.
by do-not-reply@jboss.org
Author: nzamosenchuk
Date: 2012-03-22 04:57:44 -0400 (Thu, 22 Mar 2012)
New Revision: 5935
Modified:
jcr/trunk/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/TestRepositoryCheckController.java
Log:
EXOJCR-1748 : update RepositoryCheckController test, to show content of the report.
Modified: jcr/trunk/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/TestRepositoryCheckController.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/TestRepositoryCheckController.java 2012-03-21 15:44:43 UTC (rev 5934)
+++ jcr/trunk/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/TestRepositoryCheckController.java 2012-03-22 08:57:44 UTC (rev 5935)
@@ -48,8 +48,12 @@
import org.exoplatform.services.jcr.util.IdGenerator;
import org.exoplatform.services.jcr.util.TesterConfigurationHelper;
+import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileReader;
+import java.io.IOException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
@@ -107,20 +111,29 @@
TesterRepositoryCheckController checkController =
new TesterRepositoryCheckController(repositoryService.getRepository("db1"));
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
public void testLockUsecases() throws Exception
{
- checkConsistentLocksInDataBase(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_ENABLED, NOT_SHARED_CACHE));
- checkConsistentLocksInDataBase(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_ENABLED, NOT_SHARED_CACHE));
- checkConsistentLocksInDataBase(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_ENABLED, SHARED_CACHE));
- checkConsistentLocksInDataBase(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_ENABLED, SHARED_CACHE));
+ checkConsistentLocksInDataBase(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_ENABLED,
+ NOT_SHARED_CACHE));
+ checkConsistentLocksInDataBase(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_ENABLED,
+ NOT_SHARED_CACHE));
+ checkConsistentLocksInDataBase(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_ENABLED,
+ SHARED_CACHE));
+ checkConsistentLocksInDataBase(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_ENABLED,
+ SHARED_CACHE));
- checkInconsistentLocksInLockTable(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_ENABLED, NOT_SHARED_CACHE));
- checkInconsistentLocksInLockTable(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_ENABLED, NOT_SHARED_CACHE));
- checkInconsistentLocksInLockTable(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_ENABLED, SHARED_CACHE));
- checkInconsistentLocksInLockTable(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_ENABLED, SHARED_CACHE));
+ checkInconsistentLocksInLockTable(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_ENABLED,
+ NOT_SHARED_CACHE));
+ checkInconsistentLocksInLockTable(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_ENABLED,
+ NOT_SHARED_CACHE));
+ checkInconsistentLocksInLockTable(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_ENABLED,
+ SHARED_CACHE));
+ checkInconsistentLocksInLockTable(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_ENABLED,
+ SHARED_CACHE));
}
private void checkConsistentLocksInDataBase(ManageableRepository repository) throws Exception
@@ -131,14 +144,17 @@
Node node = addTestNode(repository);
lockNode(node);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
removePropertyInDB(repository, (PropertyImpl)node.getProperty("jcr:lockIsDeep"));
removePropertyInDB(repository, (PropertyImpl)node.getProperty("jcr:lockOwner"));
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
checkController.repairDataBase("yes");
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
finally
{
@@ -158,13 +174,16 @@
Node node = addTestNode(repository);
lockNode(node);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
clearLockTable(repository);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
checkController.repairDataBase("yes");
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
finally
{
@@ -180,7 +199,8 @@
TesterRepositoryCheckController checkController =
new TesterRepositoryCheckController(repositoryService.getRepository("db1"));
- assertTrue(checkController.checkValueStorage().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkValueStorage(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkValueStorage().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
public void testCheckIndex() throws Exception
@@ -188,7 +208,8 @@
TesterRepositoryCheckController checkController =
new TesterRepositoryCheckController(repositoryService.getRepository("db1"));
- assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkIndex(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
public void testCheckAll() throws Exception
@@ -196,7 +217,8 @@
TesterRepositoryCheckController checkController =
new TesterRepositoryCheckController(repositoryService.getRepository("db1"));
- assertTrue(checkController.checkAll().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkAll(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkAll().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
/**
@@ -211,10 +233,12 @@
TesterRepositoryCheckController checkController = new TesterRepositoryCheckController(repository);
Node node = addTestNode(repository);
- assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkIndex(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
removeNodeInDB(repository, node);
- assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkIndex(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
}
finally
{
@@ -237,10 +261,12 @@
TesterRepositoryCheckController checkController = new TesterRepositoryCheckController(repository);
Node node = addTestNode(repository);
- assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkIndex(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
indexNode(repository, node, ItemState.ADDED);
- assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkIndex(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
}
finally
{
@@ -263,10 +289,12 @@
TesterRepositoryCheckController checkController = new TesterRepositoryCheckController(repository);
Node node = addTestNode(repository);
- assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkIndex(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
indexNode(repository, node, ItemState.DELETED);
- assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkIndex(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkIndex().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
}
finally
{
@@ -282,11 +310,15 @@
*/
public void testDBUsecasesTheParentIdIsIdOfThisNode() throws Exception
{
- checkDBUsecasesTheParentIdIsIdOfThisNode(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_DISABLED));
- checkDBUsecasesTheParentIdIsIdOfThisNode2(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_DISABLED));
+ checkDBUsecasesTheParentIdIsIdOfThisNode(helper.createRepository(container, DatabaseStructureType.SINGLE,
+ CACHE_DISABLED));
+ checkDBUsecasesTheParentIdIsIdOfThisNode2(helper.createRepository(container, DatabaseStructureType.SINGLE,
+ CACHE_DISABLED));
- checkDBUsecasesTheParentIdIsIdOfThisNode(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_DISABLED));
- checkDBUsecasesTheParentIdIsIdOfThisNode2(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_DISABLED));
+ checkDBUsecasesTheParentIdIsIdOfThisNode(helper.createRepository(container, DatabaseStructureType.MULTI,
+ CACHE_DISABLED));
+ checkDBUsecasesTheParentIdIsIdOfThisNode2(helper.createRepository(container, DatabaseStructureType.MULTI,
+ CACHE_DISABLED));
}
private void checkDBUsecasesTheParentIdIsIdOfThisNode(ManageableRepository repository) throws Exception
@@ -296,13 +328,16 @@
TesterRepositoryCheckController checkController = new TesterRepositoryCheckController(repository);
Node node = addTestNode(repository);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
assingItsOwnParent(repository, (ItemImpl)node);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
checkController.repairDataBase("yes");
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
finally
{
@@ -322,13 +357,16 @@
Node node = addTestNode(repository);
Property prop = addTestProperty(repository, node);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
assingItsOwnParent(repository, (ItemImpl)prop);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
checkController.repairDataBase("yes");
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
finally
{
@@ -357,13 +395,16 @@
Node node = addTestNode(repository);
PropertyImpl prop = (PropertyImpl)addTestProperty(repository, node);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
insertPropertyRecord(repository, prop.getInternalIdentifier(), prop.getParentIdentifier(), prop.getName());
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
checkController.repairDataBase("yes");
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
finally
{
@@ -379,8 +420,10 @@
*/
public void testDBUsecasesPropertyWithoutParent() throws Exception
{
- checkDBUsecasesPropertyWithoutParent(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_DISABLED));
- checkDBUsecasesPropertyWithoutParent(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_DISABLED));
+ checkDBUsecasesPropertyWithoutParent(helper.createRepository(container, DatabaseStructureType.SINGLE,
+ CACHE_DISABLED));
+ checkDBUsecasesPropertyWithoutParent(helper.createRepository(container, DatabaseStructureType.MULTI,
+ CACHE_DISABLED));
}
private void checkDBUsecasesPropertyWithoutParent(ManageableRepository repository) throws Exception
@@ -388,13 +431,16 @@
try
{
TesterRepositoryCheckController checkController = new TesterRepositoryCheckController(repository);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
insertPropertyRecord(repository, IdGenerator.generate(), IdGenerator.generate(), "testName");
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
checkController.repairDataBase("yes");
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
finally
{
@@ -410,8 +456,10 @@
*/
public void testDBUsecasesIncorrectValueRecords() throws Exception
{
- checkDBUsecasesIncorrectValueRecords(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_DISABLED));
- checkDBUsecasesIncorrectValueRecords(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_DISABLED));
+ checkDBUsecasesIncorrectValueRecords(helper.createRepository(container, DatabaseStructureType.SINGLE,
+ CACHE_DISABLED));
+ checkDBUsecasesIncorrectValueRecords(helper.createRepository(container, DatabaseStructureType.MULTI,
+ CACHE_DISABLED));
}
private void checkDBUsecasesIncorrectValueRecords(ManageableRepository repository) throws Exception
@@ -423,13 +471,16 @@
Node node = addTestNode(repository);
PropertyImpl prop = (PropertyImpl)addTestProperty(repository, node);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
updateValueRecord(repository, prop.getInternalIdentifier());
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
checkController.repairDataBase("yes");
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
}
finally
{
@@ -445,8 +496,10 @@
*/
public void testDBUsecasesValueRecordHasNoItemRecord() throws Exception
{
- checkDBUsecasesValueRecordHasNoItemRecord(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_DISABLED));
- checkDBUsecasesValueRecordHasNoItemRecord(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_DISABLED));
+ checkDBUsecasesValueRecordHasNoItemRecord(helper.createRepository(container, DatabaseStructureType.SINGLE,
+ CACHE_DISABLED));
+ checkDBUsecasesValueRecordHasNoItemRecord(helper.createRepository(container, DatabaseStructureType.MULTI,
+ CACHE_DISABLED));
}
private void checkDBUsecasesValueRecordHasNoItemRecord(ManageableRepository repository) throws Exception
@@ -458,13 +511,16 @@
Node node = addTestNode(repository);
PropertyImpl prop = (PropertyImpl)addTestProperty(repository, node);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
removeItemRecord(repository, prop.getInternalIdentifier());
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
checkController.repairDataBase("yes");
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
finally
{
@@ -480,11 +536,15 @@
*/
public void testDBUsecasesPropertiesHasNoValueRecord() throws Exception
{
- checkDBUsecasesPropertiesHasNoSingleValueRecord(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_DISABLED));
- checkDBUsecasesPropertiesHasEmptyMultiValueRecord(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_DISABLED));
+ checkDBUsecasesPropertiesHasNoSingleValueRecord(helper.createRepository(container, DatabaseStructureType.SINGLE,
+ CACHE_DISABLED));
+ checkDBUsecasesPropertiesHasEmptyMultiValueRecord(helper.createRepository(container,
+ DatabaseStructureType.SINGLE, CACHE_DISABLED));
- checkDBUsecasesPropertiesHasNoSingleValueRecord(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_DISABLED));
- checkDBUsecasesPropertiesHasEmptyMultiValueRecord(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_DISABLED));
+ checkDBUsecasesPropertiesHasNoSingleValueRecord(helper.createRepository(container, DatabaseStructureType.MULTI,
+ CACHE_DISABLED));
+ checkDBUsecasesPropertiesHasEmptyMultiValueRecord(helper.createRepository(container, DatabaseStructureType.MULTI,
+ CACHE_DISABLED));
}
private void checkDBUsecasesPropertiesHasNoSingleValueRecord(ManageableRepository repository) throws Exception
@@ -496,13 +556,16 @@
Node node = addTestNode(repository);
PropertyImpl prop = (PropertyImpl)addTestProperty(repository, node);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
removeValueRecord(repository, prop.getInternalIdentifier());
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
checkController.repairDataBase("yes");
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
finally
{
@@ -524,7 +587,8 @@
node.setProperty("prop", new String[]{});
node.save();
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
finally
{
@@ -540,10 +604,10 @@
*/
public void testDBUsecasesReferencePropertyWithoutReferenceRecord() throws Exception
{
- checkDBUsecasesReferencePropertyWithoutReferenceRecord(helper.createRepository(container, DatabaseStructureType.SINGLE,
- CACHE_DISABLED));
- checkDBUsecasesReferencePropertyWithoutReferenceRecord(helper.createRepository(container, DatabaseStructureType.MULTI,
- CACHE_DISABLED));
+ checkDBUsecasesReferencePropertyWithoutReferenceRecord(helper.createRepository(container,
+ DatabaseStructureType.SINGLE, CACHE_DISABLED));
+ checkDBUsecasesReferencePropertyWithoutReferenceRecord(helper.createRepository(container,
+ DatabaseStructureType.MULTI, CACHE_DISABLED));
}
private void checkDBUsecasesReferencePropertyWithoutReferenceRecord(ManageableRepository repository)
@@ -558,13 +622,16 @@
PropertyImpl prop = (PropertyImpl)node2.setProperty("prop", node);
node2.save();
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
removeReferenceRecord(repository, prop.getInternalIdentifier());
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
checkController.repairDataBase("yes");
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
finally
{
@@ -580,8 +647,10 @@
*/
public void testDBUsecasesNodeHasNoProperties() throws Exception
{
- checkDBUsecasesNodeHasNotPrimaryTypeProperties(helper.createRepository(container, DatabaseStructureType.SINGLE, CACHE_DISABLED));
- checkDBUsecasesNodeHasNotPrimaryTypeProperties(helper.createRepository(container, DatabaseStructureType.MULTI, CACHE_DISABLED));
+ checkDBUsecasesNodeHasNotPrimaryTypeProperties(helper.createRepository(container, DatabaseStructureType.SINGLE,
+ CACHE_DISABLED));
+ checkDBUsecasesNodeHasNotPrimaryTypeProperties(helper.createRepository(container, DatabaseStructureType.MULTI,
+ CACHE_DISABLED));
}
private void checkDBUsecasesNodeHasNotPrimaryTypeProperties(ManageableRepository repository) throws Exception
@@ -591,13 +660,16 @@
TesterRepositoryCheckController checkController = new TesterRepositoryCheckController(repository);
Node node = addTestNode(repository);
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
removePropertyInDB(repository, (PropertyImpl)node.getProperty("jcr:primaryType"));
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
checkController.repairDataBase("yes");
- assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkDataBase(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkDataBase().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
finally
{
@@ -627,14 +699,16 @@
PropertyImpl prop = (PropertyImpl)node.setProperty("prop", new FileInputStream(createBLOBTempFile(300)));
node.save();
- assertTrue(checkController.checkValueStorage().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkValueStorage(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkValueStorage().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
removeFileFromVS(repository, prop.getInternalIdentifier());
- assertTrue(checkController.checkValueStorage().startsWith(
- RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkValueStorage(), checkController.getLastReportPath(), false);
+ //assertTrue(checkController.checkValueStorage().startsWith(RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE));
checkController.repairValueStorage("yes");
- assertTrue(checkController.checkValueStorage().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
+ assertResult(checkController.checkValueStorage(), checkController.getLastReportPath(), true);
+ //assertTrue(checkController.checkValueStorage().startsWith(RepositoryCheckController.REPORT_CONSISTENT_MESSAGE));
}
finally
{
@@ -680,8 +754,9 @@
{
WorkspaceEntry wsEntry = repository.getConfiguration().getWorkspaceEntries().get(0);
- boolean isMultiDb = DatabaseStructureType.valueOf(wsEntry.getContainer().getParameterValue(
- JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
+ boolean isMultiDb =
+ DatabaseStructureType.valueOf(
+ wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
String sourceName = wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.SOURCE_NAME);
String vTable = "JCR_" + (isMultiDb ? "M" : "S") + "VALUE";
@@ -712,8 +787,9 @@
{
WorkspaceEntry wsEntry = repository.getConfiguration().getWorkspaceEntries().get(0);
- boolean isMultiDb = DatabaseStructureType.valueOf(wsEntry.getContainer().getParameterValue(
- JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
+ boolean isMultiDb =
+ DatabaseStructureType.valueOf(
+ wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
String sourceName = wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.SOURCE_NAME);
String vTable = "JCR_" + (isMultiDb ? "M" : "S") + "VALUE";
@@ -735,8 +811,9 @@
{
WorkspaceEntry wsEntry = repository.getConfiguration().getWorkspaceEntries().get(0);
- boolean isMultiDb = DatabaseStructureType.valueOf(wsEntry.getContainer().getParameterValue(
- JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
+ boolean isMultiDb =
+ DatabaseStructureType.valueOf(
+ wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
String sourceName = wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.SOURCE_NAME);
String vTable = "JCR_" + (isMultiDb ? "M" : "S") + "VALUE";
@@ -758,8 +835,9 @@
{
WorkspaceEntry wsEntry = repository.getConfiguration().getWorkspaceEntries().get(0);
- boolean isMultiDb = DatabaseStructureType.valueOf(wsEntry.getContainer().getParameterValue(
- JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
+ boolean isMultiDb =
+ DatabaseStructureType.valueOf(
+ wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
String sourceName = wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.SOURCE_NAME);
String rTable = "JCR_" + (isMultiDb ? "M" : "S") + "REF";
@@ -779,8 +857,9 @@
{
WorkspaceEntry wsEntry = repository.getConfiguration().getWorkspaceEntries().get(0);
- boolean isMultiDb = DatabaseStructureType.valueOf(wsEntry.getContainer().getParameterValue(
- JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
+ boolean isMultiDb =
+ DatabaseStructureType.valueOf(
+ wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
String sourceName = wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.SOURCE_NAME);
String vTable = "JCR_" + (isMultiDb ? "M" : "S") + "VALUE";
@@ -805,8 +884,9 @@
RepositoryConfigurationException, NamingException
{
WorkspaceEntry wsEntry = repository.getConfiguration().getWorkspaceEntries().get(0);
- boolean isMultiDb = DatabaseStructureType.valueOf(wsEntry.getContainer().getParameterValue(
- JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
+ boolean isMultiDb =
+ DatabaseStructureType.valueOf(
+ wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
String iTable = "JCR_" + (isMultiDb ? "M" : "S") + "ITEM";
String itemId = (isMultiDb ? "" : wsEntry.getName()) + item.getInternalIdentifier();
@@ -902,8 +982,9 @@
throws RepositoryConfigurationException, SQLException, NamingException, RepositoryException
{
WorkspaceEntry wsEntry = repository.getConfiguration().getWorkspaceEntries().get(0);
- boolean isMultiDb = DatabaseStructureType.valueOf(wsEntry.getContainer().getParameterValue(
- JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
+ boolean isMultiDb =
+ DatabaseStructureType.valueOf(
+ wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
String iTable = "JCR_" + (isMultiDb ? "M" : "S") + "ITEM";
String vTable = "JCR_" + (isMultiDb ? "M" : "S") + "VALUE";
@@ -941,8 +1022,9 @@
throws RepositoryConfigurationException, SQLException, NamingException
{
WorkspaceEntry wsEntry = repository.getConfiguration().getWorkspaceEntries().get(0);
- boolean isMultiDb = DatabaseStructureType.valueOf(wsEntry.getContainer().getParameterValue(
- JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
+ boolean isMultiDb =
+ DatabaseStructureType.valueOf(
+ wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.DB_STRUCTURE_TYPE)).isMultiDatabase();
String sourceName = wsEntry.getContainer().getParameterValue(JDBCWorkspaceDataContainer.SOURCE_NAME);
@@ -968,4 +1050,60 @@
assertTrue(vsFile.exists());
assertTrue(vsFile.delete());
}
+
+ private void assertResult(String reportMessage, String reportPath, boolean consistent)
+ {
+ String expected =
+ consistent ? RepositoryCheckController.REPORT_CONSISTENT_MESSAGE
+ : RepositoryCheckController.REPORT_NOT_CONSISTENT_MESSAGE;
+ if (!reportMessage.startsWith(expected))
+ {
+ log.error("Expected result is:" + expected + "but report is:" + reportMessage);
+ log.error("Full report content is ... " + getFileContent(reportPath) + "======================");
+ fail("Expected result is \"" + expected + "\", but report is \"" + reportMessage + "\"");
+ }
+ // else - ok
+ }
+
+ private String getFileContent(String reportPath)
+ {
+ StringBuffer contents = new StringBuffer();
+ BufferedReader reader = null;
+ try
+ {
+ reader = new BufferedReader(new FileReader(reportPath));
+ String text = null;
+
+ // repeat until all lines is read
+ while ((text = reader.readLine()) != null)
+ {
+ contents.append(text).append(System.getProperty("line.separator"));
+ }
+ }
+ catch (FileNotFoundException e)
+ {
+ return "Report file (" + reportPath + ") not found.";
+ }
+ catch (IOException e)
+ {
+ return "IOException reading report file (" + reportPath + ").";
+ }
+ finally
+ {
+ try
+ {
+ if (reader != null)
+ {
+ reader.close();
+ }
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace();
+ }
+ }
+
+ // show file contents here
+ return contents.toString();
+ }
}
12 years, 1 month
exo-jcr SVN: r5932 - jcr/branches/1.14.x/patch.
by do-not-reply@jboss.org
Author: tolusha
Date: 2012-03-21 11:43:11 -0400 (Wed, 21 Mar 2012)
New Revision: 5932
Added:
jcr/branches/1.14.x/patch/1.14.8-GA/
Log:
JCR-1716: added folder with fix version
12 years, 2 months
exo-jcr SVN: r5931 - in jcr/branches/1.14.x/patch: JCR-1722 and 1 other directory.
by do-not-reply@jboss.org
Author: nzamosenchuk
Date: 2012-03-21 10:57:07 -0400 (Wed, 21 Mar 2012)
New Revision: 5931
Added:
jcr/branches/1.14.x/patch/JCR-1722/
jcr/branches/1.14.x/patch/JCR-1722/JCR-1722.patch
Log:
JCR-1722 : patch proposed
Added: jcr/branches/1.14.x/patch/JCR-1722/JCR-1722.patch
===================================================================
--- jcr/branches/1.14.x/patch/JCR-1722/JCR-1722.patch (rev 0)
+++ jcr/branches/1.14.x/patch/JCR-1722/JCR-1722.patch 2012-03-21 14:57:07 UTC (rev 5931)
@@ -0,0 +1,34 @@
+Index: exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/MultiIndex.java
+===================================================================
+--- exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/MultiIndex.java (revision 5928)
++++ exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/MultiIndex.java (working copy)
+@@ -3300,7 +3300,7 @@
+ switch (mode)
+ {
+ case READ_ONLY :
+- setReadOny();
++ setReadOnly();
+ break;
+ case READ_WRITE :
+ setReadWrite();
+@@ -3316,7 +3316,7 @@
+ /**
+ * Sets mode to READ_ONLY, discarding flush task
+ */
+- protected void setReadOny()
++ protected void setReadOnly()
+ {
+ // try to stop merger in safe way
+ if (merger != null)
+@@ -3325,7 +3325,10 @@
+ merger = null;
+ }
+
+- flushTask.cancel();
++ if (flushTask != null)
++ {
++ flushTask.cancel();
++ }
+ FLUSH_TIMER.purge();
+ this.redoLog = null;
+ }
12 years, 2 months
exo-jcr SVN: r5930 - jcr/branches/1.14.x/patch.
by do-not-reply@jboss.org
Author: nzamosenchuk
Date: 2012-03-21 10:56:30 -0400 (Wed, 21 Mar 2012)
New Revision: 5930
Removed:
jcr/branches/1.14.x/patch/JCR-1722/
Log:
JCR-1722 : removeing the patch
12 years, 2 months