exo-jcr SVN: r5036 - jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db.
by do-not-reply@jboss.org
Author: nfilotto
Date: 2011-10-14 17:09:25 -0400 (Fri, 14 Oct 2011)
New Revision: 5036
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SingleDbJDBCConnection.java
Log:
EXOJCR-1586: Removed the container_id from the query since it is useless and makes HSQLDB uses a wrong execution plan
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SingleDbJDBCConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SingleDbJDBCConnection.java 2011-10-11 09:06:53 UTC (rev 5035)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/SingleDbJDBCConnection.java 2011-10-14 21:09:25 UTC (rev 5036)
@@ -209,7 +209,7 @@
+ " where P.I_CLASS=2 and P.CONTAINER_NAME=? and V.PROPERTY_ID=P.ID order by J.ID";
FIND_PROPERTY_BY_ID =
- "select I.P_TYPE, V.STORAGE_DESC from JCR_SITEM I, JCR_SVALUE V where I.CONTAINER_NAME=? and I.ID = ? and V.PROPERTY_ID = I.ID";
+ "select I.P_TYPE, V.STORAGE_DESC from JCR_SITEM I, JCR_SVALUE V where I.ID = ? and V.PROPERTY_ID = I.ID";
DELETE_VALUE_BY_ORDER_NUM = "delete from JCR_SVALUE where PROPERTY_ID=? and ORDER_NUM >= ?";
UPDATE_VALUE = "update JCR_SVALUE set DATA=?, STORAGE_DESC=? where PROPERTY_ID=? and ORDER_NUM=?";
@@ -823,8 +823,7 @@
else
findPropertyById.clearParameters();
- findPropertyById.setString(1, containerName);
- findPropertyById.setString(2, id);
+ findPropertyById.setString(1, id);
return findPropertyById.executeQuery();
}
14 years, 6 months
exo-jcr SVN: r5035 - in jcr/trunk: exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration and 1 other directory.
by do-not-reply@jboss.org
Author: dkuleshov
Date: 2011-10-11 05:06:53 -0400 (Tue, 11 Oct 2011)
New Revision: 5035
Modified:
jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-mjdbc.mysql-utf8.sql
jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-mjdbc.mysql.sql
jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-sjdbc.mysql-utf8.sql
jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-sjdbc.mysql.sql
jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration/jdbc-data-container-config.xml
Log:
EXOJCR-1552: changed scripts for creating db's in MySQL to explicitly use InnoDB engine, mentioned in the doc book that jcr does not support MyISAM engine
Modified: jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-mjdbc.mysql-utf8.sql
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-mjdbc.mysql-utf8.sql 2011-10-07 18:26:34 UTC (rev 5034)
+++ jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-mjdbc.mysql-utf8.sql 2011-10-11 09:06:53 UTC (rev 5035)
@@ -1,7 +1,7 @@
CREATE TABLE JCR_MCONTAINER(
VERSION VARCHAR(56) NOT NULL,
CONSTRAINT JCR_PK_MCONTAINER PRIMARY KEY(VERSION)
-);
+) ENGINE=InnoDB;
CREATE TABLE JCR_MITEM(
ID VARCHAR(56) NOT NULL,
PARENT_ID VARCHAR(56) NOT NULL,
@@ -14,7 +14,7 @@
P_MULTIVALUED BOOLEAN,
CONSTRAINT JCR_PK_MITEM PRIMARY KEY(ID),
CONSTRAINT JCR_FK_MITEM_PARENT FOREIGN KEY(PARENT_ID) REFERENCES JCR_MITEM(ID)
-);
+) ENGINE=InnoDB;
CREATE UNIQUE INDEX JCR_IDX_MITEM_PARENT ON JCR_MITEM(PARENT_ID, NAME(255), I_INDEX, I_CLASS, VERSION DESC);
CREATE UNIQUE INDEX JCR_IDX_MITEM_PARENT_NAME ON JCR_MITEM(I_CLASS, PARENT_ID, NAME(255), I_INDEX, VERSION DESC);
CREATE UNIQUE INDEX JCR_IDX_MITEM_PARENT_ID ON JCR_MITEM(I_CLASS, PARENT_ID, ID, VERSION DESC);
@@ -27,7 +27,7 @@
STORAGE_DESC VARCHAR(512),
CONSTRAINT JCR_PK_MVALUE PRIMARY KEY(ID),
CONSTRAINT JCR_FK_MVALUE_PROPERTY FOREIGN KEY(PROPERTY_ID) REFERENCES JCR_MITEM(ID)
-);
+) ENGINE=InnoDB;
CREATE UNIQUE INDEX JCR_IDX_MVALUE_PROPERTY ON JCR_MVALUE(PROPERTY_ID, ORDER_NUM);
CREATE INDEX JCR_IDX_MVALUE_STORAGE_DESC ON JCR_MVALUE(PROPERTY_ID, STORAGE_DESC);
CREATE TABLE JCR_MREF(
@@ -35,5 +35,5 @@
PROPERTY_ID VARCHAR(56) NOT NULL,
ORDER_NUM INTEGER NOT NULL,
CONSTRAINT JCR_PK_MREF PRIMARY KEY(NODE_ID, PROPERTY_ID, ORDER_NUM)
-);
+) ENGINE=InnoDB;
CREATE UNIQUE INDEX JCR_IDX_MREF_PROPERTY ON JCR_MREF(PROPERTY_ID, ORDER_NUM);
\ No newline at end of file
Modified: jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-mjdbc.mysql.sql
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-mjdbc.mysql.sql 2011-10-07 18:26:34 UTC (rev 5034)
+++ jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-mjdbc.mysql.sql 2011-10-11 09:06:53 UTC (rev 5035)
@@ -1,7 +1,7 @@
CREATE TABLE JCR_MCONTAINER(
VERSION VARCHAR(96) NOT NULL,
CONSTRAINT JCR_PK_MCONTAINER PRIMARY KEY(VERSION)
-);
+) ENGINE=InnoDB;
CREATE TABLE JCR_MITEM(
ID VARCHAR(96) NOT NULL,
PARENT_ID VARCHAR(96) NOT NULL,
@@ -14,7 +14,7 @@
P_MULTIVALUED BOOLEAN,
CONSTRAINT JCR_PK_MITEM PRIMARY KEY(ID),
CONSTRAINT JCR_FK_MITEM_PARENT FOREIGN KEY(PARENT_ID) REFERENCES JCR_MITEM(ID)
-);
+) ENGINE=InnoDB;
CREATE UNIQUE INDEX JCR_IDX_MITEM_PARENT ON JCR_MITEM(PARENT_ID, NAME, I_INDEX, I_CLASS, VERSION DESC);
CREATE UNIQUE INDEX JCR_IDX_MITEM_PARENT_NAME ON JCR_MITEM(I_CLASS, PARENT_ID, NAME, I_INDEX, VERSION DESC);
CREATE UNIQUE INDEX JCR_IDX_MITEM_PARENT_ID ON JCR_MITEM(I_CLASS, PARENT_ID, ID, VERSION DESC);
@@ -27,7 +27,7 @@
STORAGE_DESC VARCHAR(512),
CONSTRAINT JCR_PK_MVALUE PRIMARY KEY(ID),
CONSTRAINT JCR_FK_MVALUE_PROPERTY FOREIGN KEY(PROPERTY_ID) REFERENCES JCR_MITEM(ID)
-);
+) ENGINE=InnoDB;
CREATE UNIQUE INDEX JCR_IDX_MVALUE_PROPERTY ON JCR_MVALUE(PROPERTY_ID, ORDER_NUM);
CREATE INDEX JCR_IDX_MVALUE_STORAGE_DESC ON JCR_MVALUE(PROPERTY_ID, STORAGE_DESC);
CREATE TABLE JCR_MREF(
@@ -35,5 +35,5 @@
PROPERTY_ID VARCHAR(96) NOT NULL,
ORDER_NUM INTEGER NOT NULL,
CONSTRAINT JCR_PK_MREF PRIMARY KEY(NODE_ID, PROPERTY_ID, ORDER_NUM)
-);
-CREATE UNIQUE INDEX JCR_IDX_MREF_PROPERTY ON JCR_MREF(PROPERTY_ID, ORDER_NUM);
\ No newline at end of file
+) ENGINE=InnoDB;
+CREATE UNIQUE INDEX JCR_IDX_MREF_PROPERTY ON JCR_MREF(PROPERTY_ID, ORDER_NUM);
Modified: jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-sjdbc.mysql-utf8.sql
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-sjdbc.mysql-utf8.sql 2011-10-07 18:26:34 UTC (rev 5034)
+++ jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-sjdbc.mysql-utf8.sql 2011-10-11 09:06:53 UTC (rev 5035)
@@ -1,7 +1,7 @@
CREATE TABLE JCR_SCONTAINER(
VERSION VARCHAR(56) NOT NULL,
CONSTRAINT JCR_PK_SCONTAINER PRIMARY KEY(VERSION)
-);
+) ENGINE=InnoDB;
CREATE TABLE JCR_SITEM(
ID VARCHAR(56) NOT NULL,
PARENT_ID VARCHAR(56) NOT NULL,
@@ -15,7 +15,7 @@
P_MULTIVALUED BOOLEAN,
CONSTRAINT JCR_PK_SITEM PRIMARY KEY(ID),
CONSTRAINT JCR_FK_SITEM_PARENT FOREIGN KEY(PARENT_ID) REFERENCES JCR_SITEM(ID)
-);
+) ENGINE=InnoDB;
CREATE UNIQUE INDEX JCR_IDX_SITEM_PARENT ON JCR_SITEM(CONTAINER_NAME, PARENT_ID, NAME(255), I_INDEX, I_CLASS, VERSION DESC);
CREATE UNIQUE INDEX JCR_IDX_SITEM_PARENT_NAME ON JCR_SITEM(I_CLASS, CONTAINER_NAME, PARENT_ID, NAME(255), I_INDEX, VERSION DESC);
CREATE UNIQUE INDEX JCR_IDX_SITEM_PARENT_ID ON JCR_SITEM(I_CLASS, CONTAINER_NAME, PARENT_ID, ID, VERSION DESC);
@@ -28,7 +28,7 @@
STORAGE_DESC VARCHAR(512),
CONSTRAINT JCR_PK_SVALUE PRIMARY KEY(ID),
CONSTRAINT JCR_FK_SVALUE_PROPERTY FOREIGN KEY(PROPERTY_ID) REFERENCES JCR_SITEM(ID)
-);
+) ENGINE=InnoDB;
CREATE UNIQUE INDEX JCR_IDX_SVALUE_PROPERTY ON JCR_SVALUE(PROPERTY_ID, ORDER_NUM);
CREATE INDEX JCR_IDX_SVALUE_STORAGE_DESC ON JCR_SVALUE(PROPERTY_ID, STORAGE_DESC);
CREATE TABLE JCR_SREF(
@@ -36,5 +36,5 @@
PROPERTY_ID VARCHAR(56) NOT NULL,
ORDER_NUM INTEGER NOT NULL,
CONSTRAINT JCR_PK_SREF PRIMARY KEY(NODE_ID, PROPERTY_ID, ORDER_NUM)
-);
+) ENGINE=InnoDB;
CREATE UNIQUE INDEX JCR_IDX_SREF_PROPERTY ON JCR_SREF(PROPERTY_ID, ORDER_NUM);
\ No newline at end of file
Modified: jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-sjdbc.mysql.sql
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-sjdbc.mysql.sql 2011-10-07 18:26:34 UTC (rev 5034)
+++ jcr/trunk/exo.jcr.component.core/src/main/resources/conf/storage/jcr-sjdbc.mysql.sql 2011-10-11 09:06:53 UTC (rev 5035)
@@ -1,7 +1,7 @@
CREATE TABLE JCR_SCONTAINER(
VERSION VARCHAR(96) NOT NULL,
CONSTRAINT JCR_PK_SCONTAINER PRIMARY KEY(VERSION)
-);
+) ENGINE=InnoDB;
CREATE TABLE JCR_SITEM(
ID VARCHAR(96) NOT NULL,
PARENT_ID VARCHAR(96) NOT NULL,
@@ -15,7 +15,7 @@
P_MULTIVALUED BOOLEAN,
CONSTRAINT JCR_PK_SITEM PRIMARY KEY(ID),
CONSTRAINT JCR_FK_SITEM_PARENT FOREIGN KEY(PARENT_ID) REFERENCES JCR_SITEM(ID)
-);
+) ENGINE=InnoDB;
CREATE UNIQUE INDEX JCR_IDX_SITEM_PARENT ON JCR_SITEM(CONTAINER_NAME, PARENT_ID, NAME, I_INDEX, I_CLASS, VERSION DESC);
CREATE UNIQUE INDEX JCR_IDX_SITEM_PARENT_NAME ON JCR_SITEM(I_CLASS, CONTAINER_NAME, PARENT_ID, NAME, I_INDEX, VERSION DESC);
CREATE UNIQUE INDEX JCR_IDX_SITEM_PARENT_ID ON JCR_SITEM(I_CLASS, CONTAINER_NAME, PARENT_ID, ID, VERSION DESC);
@@ -28,7 +28,7 @@
STORAGE_DESC VARCHAR(512),
CONSTRAINT JCR_PK_SVALUE PRIMARY KEY(ID),
CONSTRAINT JCR_FK_SVALUE_PROPERTY FOREIGN KEY(PROPERTY_ID) REFERENCES JCR_SITEM(ID)
-);
+) ENGINE=InnoDB;
CREATE UNIQUE INDEX JCR_IDX_SVALUE_PROPERTY ON JCR_SVALUE(PROPERTY_ID, ORDER_NUM);
CREATE INDEX JCR_IDX_SVALUE_STORAGE_DESC ON JCR_SVALUE(PROPERTY_ID, STORAGE_DESC);
CREATE TABLE JCR_SREF(
@@ -36,5 +36,5 @@
PROPERTY_ID VARCHAR(96) NOT NULL,
ORDER_NUM INTEGER NOT NULL,
CONSTRAINT JCR_PK_SREF PRIMARY KEY(NODE_ID, PROPERTY_ID, ORDER_NUM)
-);
-CREATE UNIQUE INDEX JCR_IDX_SREF_PROPERTY ON JCR_SREF(PROPERTY_ID, ORDER_NUM);
\ No newline at end of file
+) ENGINE=InnoDB;
+CREATE UNIQUE INDEX JCR_IDX_SREF_PROPERTY ON JCR_SREF(PROPERTY_ID, ORDER_NUM);
Modified: jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration/jdbc-data-container-config.xml
===================================================================
--- jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration/jdbc-data-container-config.xml 2011-10-07 18:26:34 UTC (rev 5034)
+++ jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration/jdbc-data-container-config.xml 2011-10-11 09:06:53 UTC (rev 5035)
@@ -75,7 +75,14 @@
page "Selecting a SQL Server Collation" <ulink
url="http://msdn.microsoft.com/en-us/library/ms144250.aspx">here.</ulink>
</para>
- </note>Each database software supports ANSI SQL standards but also has
+ </note>
+ <note>
+ <para>
+ Be aware that JCR does not support MyISAM storage engine for the MySQL
+ relational database management system.
+ </para>
+ </note>
+ Each database software supports ANSI SQL standards but also has
its own specifics. So, each database has its own configuration in eXo JCR
as a database dialect parameter. If you need a more detailed configuration
of the database, it's possible to do that by editing the metadata
14 years, 6 months
exo-jcr SVN: r5034 - in jcr/trunk/applications/product-patches/as: jetty and 2 other directories.
by do-not-reply@jboss.org
Author: nfilotto
Date: 2011-10-07 14:26:34 -0400 (Fri, 07 Oct 2011)
New Revision: 5034
Modified:
jcr/trunk/applications/product-patches/as/jboss/exo-configuration.xml
jcr/trunk/applications/product-patches/as/jetty/exo-configuration.xml
jcr/trunk/applications/product-patches/as/jonas/exo-configuration.xml
jcr/trunk/applications/product-patches/as/tomcat/exo-configuration.xml
Log:
EXOJCR-1577: Configure the BackupManager by default in the bundles of eXo JCR in standalone mode
Modified: jcr/trunk/applications/product-patches/as/jboss/exo-configuration.xml
===================================================================
--- jcr/trunk/applications/product-patches/as/jboss/exo-configuration.xml 2011-10-07 18:22:00 UTC (rev 5033)
+++ jcr/trunk/applications/product-patches/as/jboss/exo-configuration.xml 2011-10-07 18:26:34 UTC (rev 5034)
@@ -336,8 +336,25 @@
</value-param -->
</init-params>
</component>
+ <component>
+ <type>org.exoplatform.services.jcr.ext.backup.server.HTTPBackupAgent</type>
+ </component>
<component>
+ <type>org.exoplatform.services.jcr.ext.repository.RestRepositoryService</type>
+ </component>
+
+ <component>
+ <key>org.exoplatform.services.jcr.ext.backup.BackupManager</key>
+ <type>org.exoplatform.services.jcr.ext.backup.impl.BackupManagerImpl</type>
+ <init-params>
+ <properties-param>
+ <name>backup-properties</name>
+ <property name="backup-dir" value="${exo.jcr.parent.dir:..}/temp/backup" />
+ </properties-param>
+ </init-params>
+ </component>
+ <component>
<type>org.exoplatform.services.organization.impl.mock.DummyOrganizationService</type>
</component>
Modified: jcr/trunk/applications/product-patches/as/jetty/exo-configuration.xml
===================================================================
--- jcr/trunk/applications/product-patches/as/jetty/exo-configuration.xml 2011-10-07 18:22:00 UTC (rev 5033)
+++ jcr/trunk/applications/product-patches/as/jetty/exo-configuration.xml 2011-10-07 18:26:34 UTC (rev 5034)
@@ -336,8 +336,25 @@
</value-param -->
</init-params>
</component>
+ <component>
+ <type>org.exoplatform.services.jcr.ext.backup.server.HTTPBackupAgent</type>
+ </component>
<component>
+ <type>org.exoplatform.services.jcr.ext.repository.RestRepositoryService</type>
+ </component>
+
+ <component>
+ <key>org.exoplatform.services.jcr.ext.backup.BackupManager</key>
+ <type>org.exoplatform.services.jcr.ext.backup.impl.BackupManagerImpl</type>
+ <init-params>
+ <properties-param>
+ <name>backup-properties</name>
+ <property name="backup-dir" value="${exo.jcr.parent.dir:..}/temp/backup" />
+ </properties-param>
+ </init-params>
+ </component>
+ <component>
<type>org.exoplatform.services.organization.impl.mock.DummyOrganizationService</type>
</component>
Modified: jcr/trunk/applications/product-patches/as/jonas/exo-configuration.xml
===================================================================
--- jcr/trunk/applications/product-patches/as/jonas/exo-configuration.xml 2011-10-07 18:22:00 UTC (rev 5033)
+++ jcr/trunk/applications/product-patches/as/jonas/exo-configuration.xml 2011-10-07 18:26:34 UTC (rev 5034)
@@ -336,8 +336,25 @@
</value-param -->
</init-params>
</component>
+ <component>
+ <type>org.exoplatform.services.jcr.ext.backup.server.HTTPBackupAgent</type>
+ </component>
<component>
+ <type>org.exoplatform.services.jcr.ext.repository.RestRepositoryService</type>
+ </component>
+
+ <component>
+ <key>org.exoplatform.services.jcr.ext.backup.BackupManager</key>
+ <type>org.exoplatform.services.jcr.ext.backup.impl.BackupManagerImpl</type>
+ <init-params>
+ <properties-param>
+ <name>backup-properties</name>
+ <property name="backup-dir" value="${exo.jcr.parent.dir:..}/temp/backup" />
+ </properties-param>
+ </init-params>
+ </component>
+ <component>
<type>org.exoplatform.services.organization.impl.mock.DummyOrganizationService</type>
</component>
Modified: jcr/trunk/applications/product-patches/as/tomcat/exo-configuration.xml
===================================================================
--- jcr/trunk/applications/product-patches/as/tomcat/exo-configuration.xml 2011-10-07 18:22:00 UTC (rev 5033)
+++ jcr/trunk/applications/product-patches/as/tomcat/exo-configuration.xml 2011-10-07 18:26:34 UTC (rev 5034)
@@ -352,8 +352,25 @@
</value-param -->
</init-params>
</component>
+ <component>
+ <type>org.exoplatform.services.jcr.ext.backup.server.HTTPBackupAgent</type>
+ </component>
<component>
+ <type>org.exoplatform.services.jcr.ext.repository.RestRepositoryService</type>
+ </component>
+
+ <component>
+ <key>org.exoplatform.services.jcr.ext.backup.BackupManager</key>
+ <type>org.exoplatform.services.jcr.ext.backup.impl.BackupManagerImpl</type>
+ <init-params>
+ <properties-param>
+ <name>backup-properties</name>
+ <property name="backup-dir" value="${exo.jcr.parent.dir:..}/temp/backup" />
+ </properties-param>
+ </init-params>
+ </component>
+ <component>
<type>org.exoplatform.services.organization.impl.mock.DummyOrganizationService</type>
</component>
14 years, 6 months
exo-jcr SVN: r5033 - jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr.
by do-not-reply@jboss.org
Author: nfilotto
Date: 2011-10-07 14:22:00 -0400 (Fri, 07 Oct 2011)
New Revision: 5033
Modified:
jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/repository-creation-service.xml
Log:
EXOJCR-1564: Removed optional options on BackupManager configuration sample
Modified: jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/repository-creation-service.xml
===================================================================
--- jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/repository-creation-service.xml 2011-10-07 14:20:26 UTC (rev 5032)
+++ jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/repository-creation-service.xml 2011-10-07 18:22:00 UTC (rev 5033)
@@ -86,9 +86,6 @@
<init-params>
<properties-param>
<name>backup-properties</name>
- <property name="default-incremental-job-period" value="3600" /><!-- set default incremental periond = 60 minutes -->
- <property name="full-backup-type" value="org.exoplatform.services.jcr.ext.backup.impl.fs.FullBackupJob" />
- <property name="incremental-backup-type" value="org.exoplatform.services.jcr.ext.backup.impl.fs.IncrementalBackupJob" />
<property name="backup-dir" value="target/backup" />
</properties-param>
</init-params>
14 years, 6 months
exo-jcr SVN: r5032 - jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db.
by do-not-reply@jboss.org
Author: tolusha
Date: 2011-10-07 10:20:26 -0400 (Fri, 07 Oct 2011)
New Revision: 5032
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2ConnectionFactory.java
Log:
EXOJCR-1579: RDBMS reindexing only if db2 version >= 9.7.2
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2ConnectionFactory.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2ConnectionFactory.java 2011-10-07 13:02:09 UTC (rev 5031)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2ConnectionFactory.java 2011-10-07 14:20:26 UTC (rev 5032)
@@ -41,6 +41,8 @@
public class DB2ConnectionFactory extends GenericCQConnectionFactory
{
+ private Boolean isReindexingSupport;
+
/**
* DB2ConnectionFactory constructor.
*
@@ -140,54 +142,59 @@
@Override
public boolean isReindexingSupport()
{
- Connection con = null;
- try
+ if (isReindexingSupport == null)
{
- con = getJdbcConnection();
- DatabaseMetaData metaData = con.getMetaData();
- if (metaData.getDatabaseMajorVersion() > 9)
+ Connection con = null;
+ try
{
- return true;
+ con = getJdbcConnection();
+ DatabaseMetaData metaData = con.getMetaData();
+ if (metaData.getDatabaseMajorVersion() > 9)
+ {
+ isReindexingSupport = true;
+ }
+ else if (metaData.getDatabaseMajorVersion() == 9 && metaData.getDatabaseMinorVersion() > 7)
+ {
+ isReindexingSupport = true;
+ }
+ else if (metaData.getDatabaseMajorVersion() == 9 && metaData.getDatabaseMinorVersion() == 7)
+ {
+ // returned string like 'SQL09074'
+ char maintenanceVersion =
+ metaData.getDatabaseProductVersion().charAt(metaData.getDatabaseProductVersion().length() - 1);
+ isReindexingSupport = new Integer(maintenanceVersion) >= 2;
+ }
+ else
+ {
+ isReindexingSupport = false;
+ }
}
- else if (metaData.getDatabaseMajorVersion() == 9 && metaData.getDatabaseMinorVersion() > 7)
+ catch (Exception e)
{
- return true;
+ isReindexingSupport = false;
+ log.error("Error checking product version.", e);
}
- else if (metaData.getDatabaseMajorVersion() == 9 && metaData.getDatabaseMinorVersion() == 7)
+ finally
{
- // returned string like 'SQL09074'
- char maintenanceVersion =
- metaData.getDatabaseProductVersion().charAt(metaData.getDatabaseProductVersion().length() - 1);
- if (new Integer(maintenanceVersion) >= 2)
+ if (con != null)
{
- return true;
+ try
+ {
+ con.close();
+ }
+ catch (SQLException e)
+ {
+ // ignore me
+ }
}
}
- }
- catch (SQLException e)
- {
- log.error("Error checking product version.", e);
- }
- catch (RepositoryException e)
- {
- log.error("Error checking product version.", e);
- }
- finally
- {
- if (con != null)
+
+ if (!isReindexingSupport)
{
- try
- {
- con.close();
- }
- catch (SQLException e)
- {
- // ignore me
- }
+ log.debug("The version of DB2 is prior to 9.7.2, so the old indexing mechanism will be used");
}
}
-
- log.debug("The version of DB2 is prior to 9.7.2, so the old indexing mechanism will be used");
- return false;
- }
+
+ return isReindexingSupport;
+ }
}
14 years, 6 months
exo-jcr SVN: r5031 - jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db.
by do-not-reply@jboss.org
Author: tolusha
Date: 2011-10-07 09:02:09 -0400 (Fri, 07 Oct 2011)
New Revision: 5031
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2ConnectionFactory.java
Log:
EXOJCR-1579: RDBMS reindexing only if db2 version >= 9.7.2
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2ConnectionFactory.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2ConnectionFactory.java 2011-10-07 08:32:26 UTC (rev 5030)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/db/DB2ConnectionFactory.java 2011-10-07 13:02:09 UTC (rev 5031)
@@ -23,6 +23,8 @@
import org.exoplatform.services.jcr.storage.value.ValueStoragePluginProvider;
import java.io.File;
+import java.sql.Connection;
+import java.sql.DatabaseMetaData;
import java.sql.SQLException;
import javax.jcr.RepositoryException;
@@ -138,6 +140,54 @@
@Override
public boolean isReindexingSupport()
{
- return true;
+ Connection con = null;
+ try
+ {
+ con = getJdbcConnection();
+ DatabaseMetaData metaData = con.getMetaData();
+ if (metaData.getDatabaseMajorVersion() > 9)
+ {
+ return true;
+ }
+ else if (metaData.getDatabaseMajorVersion() == 9 && metaData.getDatabaseMinorVersion() > 7)
+ {
+ return true;
+ }
+ else if (metaData.getDatabaseMajorVersion() == 9 && metaData.getDatabaseMinorVersion() == 7)
+ {
+ // returned string like 'SQL09074'
+ char maintenanceVersion =
+ metaData.getDatabaseProductVersion().charAt(metaData.getDatabaseProductVersion().length() - 1);
+ if (new Integer(maintenanceVersion) >= 2)
+ {
+ return true;
+ }
+ }
+ }
+ catch (SQLException e)
+ {
+ log.error("Error checking product version.", e);
+ }
+ catch (RepositoryException e)
+ {
+ log.error("Error checking product version.", e);
+ }
+ finally
+ {
+ if (con != null)
+ {
+ try
+ {
+ con.close();
+ }
+ catch (SQLException e)
+ {
+ // ignore me
+ }
+ }
+ }
+
+ log.debug("The version of DB2 is prior to 9.7.2, so the old indexing mechanism will be used");
+ return false;
}
}
14 years, 6 months
exo-jcr SVN: r5030 - jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration.
by do-not-reply@jboss.org
Author: nzamosenchuk
Date: 2011-10-07 04:32:26 -0400 (Fri, 07 Oct 2011)
New Revision: 5030
Modified:
jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration/jdbc-data-container-config.xml
Log:
EXOJCR-1549 : doc updated
Modified: jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration/jdbc-data-container-config.xml
===================================================================
--- jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration/jdbc-data-container-config.xml 2011-10-07 06:28:41 UTC (rev 5029)
+++ jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration/jdbc-data-container-config.xml 2011-10-07 08:32:26 UTC (rev 5030)
@@ -69,7 +69,7 @@
</note><note>
<para>One more mandatory JCR requirement for underlying databases is a
case sensitive collation. Microsoft SQL Server both 2005 and 2008
- customers must configure it's server with collation corresponding to
+ customers must configure their server with collation corresponding to
personal needs and requirements, but obligatorily case sensitive. For
more information please refer to Microsoft SQL Server documentation
page "Selecting a SQL Server Collation" <ulink
14 years, 6 months
exo-jcr SVN: r5029 - jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration.
by do-not-reply@jboss.org
Author: nzamosenchuk
Date: 2011-10-07 02:28:41 -0400 (Fri, 07 Oct 2011)
New Revision: 5029
Modified:
jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration/jdbc-data-container-config.xml
Log:
EXOJCR-1549 : doc updated
Modified: jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration/jdbc-data-container-config.xml
===================================================================
--- jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration/jdbc-data-container-config.xml 2011-10-06 10:44:52 UTC (rev 5028)
+++ jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/configuration/jdbc-data-container-config.xml 2011-10-07 06:28:41 UTC (rev 5029)
@@ -52,21 +52,29 @@
</listitem>
<listitem>
- <para>Sybase 15.0.3 Driver: Sybase jConnect JDBC driver v7 (Build 26502)</para>
+ <para>Sybase 15.0.3 Driver: Sybase jConnect JDBC driver v7 (Build
+ 26502)</para>
</listitem>
<listitem>
<para>HSQLDB (2.0.0)</para>
</listitem>
-
</itemizedlist></para>
-
<para><note>
<para>Please note, that JCR requires at least READ_COMMITED isolation
level and other RDBMS configurations can cause some side-effects and
issues. So, please, make sure proper isolation level is configured on
database server side.</para>
+ </note><note>
+ <para>One more mandatory JCR requirement for underlying databases is a
+ case sensitive collation. Microsoft SQL Server both 2005 and 2008
+ customers must configure it's server with collation corresponding to
+ personal needs and requirements, but obligatorily case sensitive. For
+ more information please refer to Microsoft SQL Server documentation
+ page "Selecting a SQL Server Collation" <ulink
+ url="http://msdn.microsoft.com/en-us/library/ms144250.aspx">here.</ulink>
+ </para>
</note>Each database software supports ANSI SQL standards but also has
its own specifics. So, each database has its own configuration in eXo JCR
as a database dialect parameter. If you need a more detailed configuration
@@ -74,8 +82,8 @@
SQL-script files.</para>
<para>SQL-scripts you can obtain from jar-file
- exo.jcr.component.core-XXX.XXX.jar:conf/storage/. They also can be
- found at SVN <ulink
+ exo.jcr.component.core-XXX.XXX.jar:conf/storage/. They also can be found
+ at SVN <ulink
url="https://anonsvn.jboss.org/repos/exo-jcr/jcr/trunk/exo.jcr.component.core/...">here.</ulink></para>
<para>In the next two tables correspondence between the scripts and
@@ -131,13 +139,12 @@
<td>jcr-sjdbc.sql</td>
</tr>
-
</table>
<table border="1">
<caption>Multi-database</caption>
- <tr>
+ <tr>
<td>MySQL DB</td>
<td>jcr-mjdbc.mysql.sql</td>
14 years, 6 months
exo-jcr SVN: r5028 - core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate.
by do-not-reply@jboss.org
Author: tolusha
Date: 2011-10-06 06:44:52 -0400 (Thu, 06 Oct 2011)
New Revision: 5028
Modified:
core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/GroupDAOImpl.java
Log:
EXOJCR-1578: set groupId before event notifications
Modified: core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/GroupDAOImpl.java
===================================================================
--- core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/GroupDAOImpl.java 2011-10-06 09:27:12 UTC (rev 5027)
+++ core/trunk/exo.core.component.organization.jdbc/src/main/java/org/exoplatform/services/organization/hibernate/GroupDAOImpl.java 2011-10-06 10:44:52 UTC (rev 5028)
@@ -122,9 +122,10 @@
Object[] args = {child.getGroupName()};
throw new UniqueObjectException("OrganizationService.unique-group-exception", args);
}
+ childImpl.setId(groupId);
+
if (broadcast)
preSave(child, true);
- childImpl.setId(groupId);
session = service_.openSession();
session.save(childImpl);
14 years, 7 months
exo-jcr SVN: r5027 - jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup.
by do-not-reply@jboss.org
Author: nzamosenchuk
Date: 2011-10-06 05:27:12 -0400 (Thu, 06 Oct 2011)
New Revision: 5027
Modified:
jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup/backup-client.xml
jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup/exojcr-backup-service.xml
Log:
EXOJCR-1564 : doc updated.
Modified: jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup/backup-client.xml
===================================================================
--- jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup/backup-client.xml 2011-10-06 06:20:28 UTC (rev 5026)
+++ jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup/backup-client.xml 2011-10-06 09:27:12 UTC (rev 5027)
@@ -929,9 +929,6 @@
<init-params>
<properties-param>
<name>backup-properties</name>
- <property name="default-incremental-job-period" value="3600" /> <!-- set default incremental periond = 60 minutes -->
- <property name="full-backup-type" value="org.exoplatform.services.jcr.ext.backup.impl.fs.FullBackupJob" />
- <property name="incremental-backup-type" value="org.exoplatform.services.jcr.ext.backup.impl.fs.IncrementalBackupJob" />
<property name="backup-dir" value="../temp/backup" />
</properties-param>
</init-params>
Modified: jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup/exojcr-backup-service.xml
===================================================================
--- jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup/exojcr-backup-service.xml 2011-10-06 06:20:28 UTC (rev 5026)
+++ jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup/exojcr-backup-service.xml 2011-10-06 09:27:12 UTC (rev 5027)
@@ -18,10 +18,6 @@
system faults and repository crashes. Also, the backup results may be used
as a content history.</para>
- <para>The eXo JCR backup service was developed from the JCR 1.8
- implementation. It's an independent service available as an eXo JCR
- Extensions project.</para>
-
<para>The concept is based on the export of a workspace unit in the Full,
or Full + Incrementals model. A repository workspace can be backup and
restored using a combination of these modes. In all cases, at least one
@@ -90,6 +86,11 @@
<para>Restoring an incremental backup consists in applying the collected
set of ChangesLogs to a workspace in the correct order.</para>
+
+ <note>
+ <para>Incremental backup is an experimental feture and not supported,
+ so it must be used with a lot of caution.</para>
+ </note>
</section>
<section>
@@ -201,8 +202,7 @@
default. <emphasis role="bold">You need to enable it via
configuration</emphasis>.</para>
- <para>The following is an example configuration compatible with JCR 1.9.3
- and later:</para>
+ <para>The following is an example configuration :</para>
<programlisting language="xml"><component>
<key>org.exoplatform.services.jcr.ext.backup.BackupManager</key>
@@ -210,42 +210,84 @@
<init-params>
<properties-param>
<name>backup-properties</name>
- <property name="default-incremental-job-period" value="3600" /> <!-- set default incremental period = 60 minutes -->
- <property name="full-backup-type" value="org.exoplatform.services.jcr.ext.backup.impl.fs.FullBackupJob" />
- <property name="incremental-backup-type" value="org.exoplatform.services.jcr.ext.backup.impl.fs.IncrementalBackupJob" />
<property name="backup-dir" value="target/backup" />
</properties-param>
</init-params>
</component></programlisting>
- <para>Where:<itemizedlist>
+ <para>Where mandatory paramet is:<itemizedlist>
<listitem>
- <para><emphasis role="bold">incremental-backup-type</emphasis>
- (since 1.9.3) : The FQN of incremental job class. Must implement
- org.exoplatform.services.jcr.ext.backup.BackupJob</para>
+ <para><emphasis role="bold">backup-dir</emphasis> : The path to a
+ working directory where the service will store internal files and
+ chain logs.</para>
</listitem>
+ </itemizedlist></para>
+ <para>Also, there are optional parameters:<itemizedlist>
<listitem>
- <para><emphasis role="bold">full-backup-type</emphasis> (since
- 1.9.3) : The FQN of the full backup job class; Must implement
- org.exoplatform.services.jcr.ext.backup.BackupJob</para>
+ <para><emphasis role="bold">incremental-backup-type</emphasis> : The
+ FQN of incremental job class. Must implement
+ org.exoplatform.services.jcr.ext.backup.BackupJob. By default :
+ org.exoplatform.services.jcr.ext.backup.impl.fs.FullBackupJob
+ used.</para>
</listitem>
<listitem>
<para><emphasis
- role="bold">default-incremental-job-period</emphasis> (since 1.9.3)
- : The period between incremetal flushes (in seconds)</para>
+ role="bold">default-incremental-job-period</emphasis> : The period
+ between incremetal flushes (in seconds). Default is 3600
+ seconds.</para>
</listitem>
<listitem>
- <para><emphasis role="bold">backup-dir</emphasis> : The path to a
- working directory where the service will store internal files and
- chain logs.</para>
+ <para><emphasis role="bold">full-backup-type</emphasis> : The FQN of
+ the full backup job class; Must implement
+ org.exoplatform.services.jcr.ext.backup.BackupJob. By default :
+ org.exoplatform.services.jcr.ext.backup.impl.rdbms.FullBackupJob
+ used. Please, notice that file-system based implementation
+ org.exoplatform.services.jcr.ext.backup.impl.fs.FullBackupJob is
+ deprecated and not recommended for use.</para>
</listitem>
</itemizedlist></para>
</section>
<section>
+ <title>RDBMS backup</title>
+
+ <para>RDBMS backup It is the lastest, currently supportedm used by default
+ and recommended implementation of full backup job for BackupManager
+ service. It is useful in case when database is used to store data.</para>
+
+ <para>Brings such advantages:</para>
+
+ <para><itemizedlist>
+ <listitem>
+ <para>fast: backup takes only several minutes to perform full backup
+ of repository with 1 million rows in tables;</para>
+ </listitem>
+
+ <listitem>
+ <para>atomic restore: restore process into existing
+ workspace/repository with same configuration is atomic, it means you
+ don’t loose the data when restore failed, the original data
+ remains;</para>
+ </listitem>
+
+ <listitem>
+ <para>cluster aware: it is possible to make backup/restore in
+ cluster environment into existing workspace/repository with same
+ configuration;</para>
+ </listitem>
+
+ <listitem>
+ <para>consistence backup: all threads make waiting until backup is
+ finished and then continue to work, so, there are no data
+ modification during backup process;</para>
+ </listitem>
+ </itemizedlist></para>
+ </section>
+
+ <section>
<title>Usage</title>
<section>
@@ -318,24 +360,27 @@
</note>
<para>To restore a backup over an existing workspace, you are required
- to clear its data. Your backup process should follow these steps:</para>
- <itemizedlist>
- <listitem>
- <para>Remove workspace</para>
- </listitem>
- </itemizedlist>
+ to clear its data. Your backup process should follow these
+ steps:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Remove workspace</para>
+ </listitem>
+ </itemizedlist>
+
<programlisting language="java">ManageableRepository repo = repositoryService.getRepository(repository);
repo.removeWorkspace(workspace);</programlisting>
-
- <itemizedlist>
- <listitem>
- <para>Clean database, value storage, index</para>
- </listitem>
- <listitem>
- <para>Restore (see snippet above)</para>
- </listitem>
- </itemizedlist>
+ <itemizedlist>
+ <listitem>
+ <para>Clean database, value storage, index</para>
+ </listitem>
+
+ <listitem>
+ <para>Restore (see snippet above)</para>
+ </listitem>
+ </itemizedlist>
</section>
<section>
@@ -349,23 +394,27 @@
<para>Restoring the JCR System workspace requires to shutdown the
system and use of a special initializer.</para>
- <para>Follow these steps (this will also work for normal workspaces): </para>
+ <para>Follow these steps (this will also work for normal
+ workspaces):</para>
+
<itemizedlist>
- <listitem>
- <para>Stop repository (or portal)</para>
- </listitem>
+ <listitem>
+ <para>Stop repository (or portal)</para>
+ </listitem>
- <listitem>
- <para>Clean database, value storage, index;</para>
- </listitem>
+ <listitem>
+ <para>Clean database, value storage, index;</para>
+ </listitem>
- <listitem>
- <para>In configuration, the workspace set
- BackupWorkspaceInitializer to refer to your backup.</para>
- </listitem>
- </itemizedlist>
- <para>For example:</para>
- <programlisting language="xml"><workspaces>
+ <listitem>
+ <para>In configuration, the workspace set
+ BackupWorkspaceInitializer to refer to your backup.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>For example:</para>
+
+ <programlisting language="xml"><workspaces>
<workspace name="production" ... >
<container class="org.exoplatform.services.jcr.impl.storage.jdbc.JDBCWorkspaceDataContainer">
...
@@ -378,12 +427,12 @@
...
</workspace>
</programlisting>
-
- <itemizedlist>
- <listitem>
- <para>Start repository (or portal).</para>
- </listitem>
- </itemizedlist>
+
+ <itemizedlist>
+ <listitem>
+ <para>Start repository (or portal).</para>
+ </listitem>
+ </itemizedlist>
</section>
</section>
@@ -449,22 +498,22 @@
<para>Example of configuration initializer to resore the workspace
"backup" over BackupWorkspaceInitializer:</para>
+
<itemizedlist>
- <listitem>
- <para>Stop repository (will be skipped this step if workspace is
- not exists)</para>
- </listitem>
+ <listitem>
+ <para>Stop repository (will be skipped this step if workspace is
+ not exists)</para>
+ </listitem>
- <listitem>
- <para>Clean database, value storage, index; (will be skipped
- this step if workspace is new)</para>
- </listitem>
+ <listitem>
+ <para>Clean database, value storage, index; (will be skipped this
+ step if workspace is new)</para>
+ </listitem>
</itemizedlist>
-
- <para>In configuration, the workspace/-s set
- BackupWorkspaceInitializer to refer to your
- backup.</para>
-
+
+ <para>In configuration, the workspace/-s set
+ BackupWorkspaceInitializer to refer to your backup.</para>
+
<programlisting language="xml"><workspaces>
<workspace name="backup" ... >
<container class="org.exoplatform.services.jcr.impl.storage.jdbc.JDBCWorkspaceDataContainer">
@@ -477,11 +526,12 @@
</initializer>
...
</workspace></programlisting>
- <itemizedlist>
- <listitem>
- <para>Start repository</para>
- </listitem>
- </itemizedlist>
+
+ <itemizedlist>
+ <listitem>
+ <para>Start repository</para>
+ </listitem>
+ </itemizedlist>
</section>
<section>
@@ -489,26 +539,25 @@
<para>Example of configuration initializers to restore the repository
"repository" over BackupWorkspaceInitializer:</para>
-
+
<itemizedlist>
- <listitem>
- <para>Stop repository (will be skipped this step if repository
- is not exists)</para>
- </listitem>
+ <listitem>
+ <para>Stop repository (will be skipped this step if repository is
+ not exists)</para>
+ </listitem>
- <listitem>
- <para>Clean database, value storage, index; (will be skipped
- this step if repository is new)</para>
- </listitem>
+ <listitem>
+ <para>Clean database, value storage, index; (will be skipped this
+ step if repository is new)</para>
+ </listitem>
</itemizedlist>
-
- <para>In configuration of repository will be configured
- initializers of workspace to refer to your backup.</para>
-
- <para>For example:</para>
-
- <programlisting language="xml">...
+ <para>In configuration of repository will be configured initializers
+ of workspace to refer to your backup.</para>
+
+ <para>For example:</para>
+
+ <programlisting language="xml">...
<workspaces>
<workspace name="system" ... >
<container class="org.exoplatform.services.jcr.impl.storage.jdbc.JDBCWorkspaceDataContainer">
@@ -549,11 +598,11 @@
</workspaces>
</programlisting>
- <itemizedlist>
- <listitem>
- <para>Start repository.</para>
- </listitem>
- </itemizedlist>
+ <itemizedlist>
+ <listitem>
+ <para>Start repository.</para>
+ </listitem>
+ </itemizedlist>
</section>
</section>
</section>
@@ -912,55 +961,4 @@
interactive operations via Backup API (e.g. console) and backup set files
for portability (e.g. on another server).</para>
</section>
-
- <section>
- <title>RDBMS backup</title>
-
- <para>RDBMS backup It is another implementation of full backup job for
- BackupManager service. It is useful in case when database is used to store
- data. </para>
-
- <para>Brings such advantages:</para>
-
- <para><itemizedlist>
- <listitem>
- <para>fast: backup takes only several minutes to perform full backup
- of repository with 1 million rows in tables;</para>
- </listitem>
-
- <listitem>
- <para>atomic restore: restore process into existing
- workspace/repository with same configuration is atomic, it means you
- don’t loose the data when restore failed, the original data
- remains;</para>
- </listitem>
-
- <listitem>
- <para>cluster aware: it is possible to make backup/restore in
- cluster environment into existing workspace/repository with same
- configuration;</para>
- </listitem>
-
- <listitem>
- <para>consistence backup: all threads make waiting until backup is
- finished and then continue to work, so, there are no data
- modification during backup process;</para>
- </listitem>
- </itemizedlist>Configuration:</para>
-
- <programlisting language="xml"><component>
- <key>org.exoplatform.services.jcr.ext.backup.BackupManager</key>
- <type>org.exoplatform.services.jcr.ext.backup.impl.BackupManagerImpl</type>
- <init-params>
- <properties-param>
- <name>backup-properties</name>
- <property name="default-incremental-job-period" value="3600" /> <!-- set default incremental period = 60 minutes -->
- <property name="full-backup-type" value="org.exoplatform.services.jcr.ext.backup.impl.rdbms.FullBackupJob" />
- <property name="incremental-backup-type" value="org.exoplatform.services.jcr.ext.backup.impl.fs.IncrementalBackupJob" />
- <property name="backup-dir" value="target/backup" />
- </properties-param>
- </init-params>
-</component>
-</programlisting>
- </section>
</chapter>
14 years, 7 months