Work on Jackrabbit clustering.
authorMathieu Baudier <mbaudier@argeo.org>
Wed, 8 Sep 2021 05:15:03 +0000 (07:15 +0200)
committerMathieu Baudier <mbaudier@argeo.org>
Wed, 8 Sep 2021 05:15:03 +0000 (07:15 +0200)
demo/cms-cluster_0.properties
demo/cms-cluster_1.properties
org.argeo.cms/src/org/argeo/cms/internal/jcr/repository-postgresql_cluster_ds.xml

index c0bb9da2b4bb2aaacd9e6c1490a7dd7ca9a757ee..d0c3fb2f88d0e839038211128a111a629ef5157d 100644 (file)
@@ -13,7 +13,7 @@ org.argeo.cms.e4.rap
 
 # Local
 org.osgi.service.http.port=7070
-argeo.node.useradmin.uris=ldap://cn=Directory%20Manager:argeoargeo@test-pgsql-ldap:10389/dc=example,dc=com
+argeo.node.useradmin.uris=ldap://cn=Directory%20Manager:argeoargeo@test-pgsql-ldap/dc=example,dc=com
 argeo.node.repo.type=postgresql_cluster_ds
 argeo.node.repo.clusterId=03233754-16c3-49a1-8a00-58bf89a65182
 argeo.node.repo.dburl=jdbc:postgresql://test-pgsql-ldap/argeo_cluster
index cf48eab020821b32912916e0a7ccd46ef2feaeb4..b5e60f85b2f61ff28fa83932814395db15cf4559 100644 (file)
@@ -13,7 +13,7 @@ org.argeo.cms.e4.rap
 
 # Local
 org.osgi.service.http.port=7071
-argeo.node.useradmin.uris=ldap://cn=Directory%20Manager:argeoargeo@test-pgsql-ldap:10389/dc=example,dc=com
+argeo.node.useradmin.uris=ldap://cn=Directory%20Manager:argeoargeo@test-pgsql-ldap/dc=example,dc=com
 argeo.node.repo.type=postgresql_cluster_ds
 argeo.node.repo.clusterId=52463fa3-2917-4814-9ff7-685c41cbc7c7
 argeo.node.repo.dburl=jdbc:postgresql://test-pgsql-ldap/argeo_cluster
index ff181f19599f633a39b64985fe67a7debee90d52..b430674c9acd5a6825072509d1aba36a967dbc19 100644 (file)
        </DataSources>
 
        <!-- File system and datastore -->
-       <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
+       <FileSystem
+               class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
                <param name="dataSourceName" value="dataSource" />
                <param name="schema" value="postgresql" />
                <param name="schemaObjectPrefix" value="fs_" />
        </FileSystem>
-       <DataStore class="org.apache.jackrabbit.core.data.FileDataStore">
+       <DataStore
+               class="org.argeo.cms.internal.jcr.LocalFsDataStore">
                <param name="path" value="${rep.home}/../datastore" />
+               <param name="redundantPath" value="${rep.home}/../datastorer" />
        </DataStore>
 
        <!-- Workspace templates -->
        <Workspaces rootPath="${rep.home}/workspaces"
                defaultWorkspace="${defaultWorkspace}" />
        <Workspace name="${wsp.name}">
-               <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
+               <FileSystem
+                       class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
                        <param name="dataSourceName" value="dataSource" />
                        <param name="schema" value="postgresql" />
                        <param name="schemaObjectPrefix" value="${wsp.name}_fs_" />
                        <param name="schemaObjectPrefix" value="${wsp.name}_pm_" />
                        <param name="bundleCacheSize" value="${bundleCacheMB}" />
                </PersistenceManager>
-               <SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
-                       <param name="path" value="${indexesBase}/${cn}/${wsp.name}/index" />
+               <SearchIndex
+                       class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
+                       <param name="path"
+                               value="${indexesBase}/${cn}/${wsp.name}/index" />
                        <param name="extractorPoolSize" value="${extractorPoolSize}" />
                        <param name="cacheSize" value="${searchCacheSize}" />
-                       <param name="maxVolatileIndexSize" value="${maxVolatileIndexSize}" />
+                       <param name="maxVolatileIndexSize"
+                               value="${maxVolatileIndexSize}" />
                </SearchIndex>
                <WorkspaceSecurity>
                        <AccessControlProvider
@@ -52,7 +59,8 @@
 
        <!-- Versioning -->
        <Versioning rootPath="${rep.home}/version">
-               <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
+               <FileSystem
+                       class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
                        <param name="dataSourceName" value="dataSource" />
                        <param name="schema" value="postgresql" />
                        <param name="schemaObjectPrefix" value="fs_ver_" />
        </Versioning>
 
        <!-- Indexing -->
-       <SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
+       <SearchIndex
+               class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
                <param name="path" value="${indexesBase}/${cn}/index" />
                <param name="extractorPoolSize" value="${extractorPoolSize}" />
                <param name="cacheSize" value="${searchCacheSize}" />
-               <param name="maxVolatileIndexSize" value="${maxVolatileIndexSize}" />
+               <param name="maxVolatileIndexSize"
+                       value="${maxVolatileIndexSize}" />
        </SearchIndex>
 
        <!-- Security -->
        <Security appName="Jackrabbit">
-               <SecurityManager class="org.argeo.security.jackrabbit.ArgeoSecurityManager"
+               <SecurityManager
+                       class="org.argeo.security.jackrabbit.ArgeoSecurityManager"
                        workspaceName="security" />
-               <AccessManager class="org.argeo.security.jackrabbit.ArgeoAccessManager" />
+               <AccessManager
+                       class="org.argeo.security.jackrabbit.ArgeoAccessManager" />
        </Security>
 
        <!-- Clustering -->
-       <Cluster id="${clusterId}">
-               <Journal class="org.apache.jackrabbit.core.journal.DatabaseJournal">
+       <Cluster id="${clusterId}" syncDelay="100">
+               <Journal
+                       class="org.apache.jackrabbit.core.journal.DatabaseJournal">
                        <param name="dataSourceName" value="dataSource" />
                        <param name="schemaObjectPrefix" value="journal_" />
                </Journal>