Step 3: Modify Jackrabbit repository information for PostgreSQL

Edit the following code to change the default Jackrabbit repository to PostgreSQL.

  1. Navigate to the pentaho/server/pentaho-server/pentaho-solutions/system/jackrabbit and open the repository.xml file with any text editor.

  2. In each of the sections, comment out any resource references that refer to other databases.

Item

Code Section

Repository

<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
    <param name="driver" value="javax.naming.InitialContext"/>
    <param name="url" value="java:comp/env/jdbc/jackrabbit"/>
    <param name="schema" value="postgresql"/>
    <param name="schemaObjectPrefix" value="fs_repos_"/>
  </FileSystem>

DataStore

<DataStore class="org.apache.jackrabbit.core.data.db.DbDataStore">
    <param name="driver" value="javax.naming.InitialContext"/>
    <param name="url" value="java:comp/env/jdbc/jackrabbit"/>
    <param name="databaseType" value="postgresql"/>
    <param name="minRecordLength" value="1024"/>
    <param name="maxConnections" value="3"/>
    <param name="copyWhenReading" value="true"/>
    <param name="tablePrefix" value=""/>
    <param name="schemaObjectPrefix" value="ds_repos_"/>
  </DataStore>

Workspaces

<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
      <param name="driver" value="javax.naming.InitialContext"/>
      <param name="url" value="java:comp/env/jdbc/jackrabbit"/>
      <param name="schema" value="postgresql"/>
      <param name="schemaObjectPrefix" value="fs_ws_"/>
    </FileSystem>

PersistenceManager (1st part)

<PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager">
      <param name="driver" value="javax.naming.InitialContext"/>
      <param name="url" value="java:comp/env/jdbc/jackrabbit"/>
      <param name="schema" value="postgresql"/>
      <param name="schemaObjectPrefix" value="${wsp.name}_pm_ws_"/>
    </PersistenceManager>

Versioning

<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
      <param name="driver" value="javax.naming.InitialContext"/>
      <param name="url" value="java:comp/env/jdbc/jackrabbit"/>
      <param name="schema" value="postgresql"/>
      <param name="schemaObjectPrefix" value="fs_ver_"/>
    </FileSystem>

PersistenceManager (2nd part)

<PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager">
      <param name="driver" value="javax.naming.InitialContext"/>
      <param name="url" value="java:comp/env/jdbc/jackrabbit"/>
      <param name="schema" value="postgresql"/>
      <param name="schemaObjectPrefix" value="pm_ver_"/>
    </PersistenceManager>

DatabaseJournal

<Journal class="org.apache.jackrabbit.core.journal.DatabaseJournal">
	<param name="revision" value="${rep.home}/revision.log" />
	<param name="driver" value="javax.naming.InitialContext"/>
	<param name="url" value="java:comp/env/jdbc/jackrabbit"/>
	<param name="schema" value="postgresql"/>
	<param name="schemaObjectPrefix" value="cl_j_"/>
	<param name="janitorEnabled" value="true"/>
	<param name="janitorSleep" value="86400"/>
	<param name="janitorFirstRunHourOfDay" value="3"/>
     </Journal>

Last updated

Was this helpful?