You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by re...@apache.org on 2015/06/03 15:30:33 UTC
svn commit: r1683325 - in /jackrabbit/oak/branches/1.2: ./
oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/
oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/
oak-core/src/test/java/org/apache/jackrabbit/oak/plugin...
Author: reschke
Date: Wed Jun 3 13:30:33 2015
New Revision: 1683325
URL: http://svn.apache.org/r1683325
Log:
OAK-2915 - add (experimental) support for Apache Derby (ported to 1.2)
Modified:
jackrabbit/oak/branches/1.2/ (props changed)
jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java
jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStore.java
jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBJDBCTools.java
jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentStoreTest.java
jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/DocumentStoreFixture.java
jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/blob/RDBBlobStoreFixture.java
jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/blob/RDBBlobStoreTest.java
jackrabbit/oak/branches/1.2/oak-parent/pom.xml
Propchange: jackrabbit/oak/branches/1.2/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jun 3 13:30:33 2015
@@ -1,3 +1,3 @@
/jackrabbit/oak/branches/1.0:1665962
-/jackrabbit/oak/trunk:1672350,1672468,1672537,1672603,1672642,1672644,1672834-1672835,1673351,1673410,1673414,1673436,1673644,1673662-1673664,1673669,1673695,1674046,1674065,1674075,1674107,1674228,1674880,1675054-1675055,1675332,1675354,1675357,1675382,1675555,1675566,1675593,1676198,1676237,1676407,1676458,1676539,1676670,1676693,1676703,1676725,1677579,1677581,1677609,1677611,1677774,1677939,1677991,1678173,1678323,1678758,1678938,1678954,1679144,1679165,1679191,1679235,1680182,1680222,1680232,1680236,1680461,1680633,1680643,1680805-1680806,1680903,1681282,1681767,1681918,1682218,1682235,1682437,1682494,1682855,1682904,1683089,1683213,1683249,1683278
+/jackrabbit/oak/trunk:1672350,1672468,1672537,1672603,1672642,1672644,1672834-1672835,1673351,1673410,1673414,1673436,1673644,1673662-1673664,1673669,1673695,1674046,1674065,1674075,1674107,1674228,1674880,1675054-1675055,1675332,1675354,1675357,1675382,1675555,1675566,1675593,1676198,1676237,1676407,1676458,1676539,1676670,1676693,1676703,1676725,1677579,1677581,1677609,1677611,1677774,1677939,1677991,1678173,1678323,1678758,1678938,1678954,1679144,1679165,1679191,1679235,1680182,1680222,1680232,1680236,1680461,1680633,1680643,1680805-1680806,1680903,1681282,1681767,1681918,1682218,1682235,1682437,1682494,1682855,1682904,1683089,1683213,1683249,1683278,1683323
/jackrabbit/trunk:1345480
Modified: jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java?rev=1683325&r1=1683324&r2=1683325&view=diff
==============================================================================
--- jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java (original)
+++ jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java Wed Jun 3 13:30:33 2015
@@ -159,6 +159,13 @@ public class RDBBlobStore extends Cachin
}
},
+ DERBY("Apache Derby") {
+ @Override
+ public void checkVersion(DatabaseMetaData md) throws SQLException {
+ versionCheck(md, 10, 11, description);
+ }
+ },
+
DB2("DB2") {
@Override
public void checkVersion(DatabaseMetaData md) throws SQLException {
Modified: jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStore.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStore.java?rev=1683325&r1=1683324&r2=1683325&view=diff
==============================================================================
--- jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStore.java (original)
+++ jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStore.java Wed Jun 3 13:30:33 2015
@@ -401,6 +401,17 @@ public class RDBDocumentStore implements
}
},
+ DERBY("Apache Derby") {
+ @Override
+ public void checkVersion(DatabaseMetaData md) throws SQLException {
+ versionCheck(md, 10, 11, description);
+ }
+
+ public boolean allowsCaseInSelect() {
+ return false;
+ }
+ },
+
POSTGRES("PostgreSQL") {
@Override
public void checkVersion(DatabaseMetaData md) throws SQLException {
Modified: jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBJDBCTools.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBJDBCTools.java?rev=1683325&r1=1683324&r2=1683325&view=diff
==============================================================================
--- jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBJDBCTools.java (original)
+++ jackrabbit/oak/branches/1.2/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBJDBCTools.java Wed Jun 3 13:30:33 2015
@@ -44,6 +44,8 @@ public class RDBJDBCTools {
protected static String driverForDBType(String type) {
if ("h2".equals(type)) {
return "org.h2.Driver";
+ } else if ("derby".equals(type)) {
+ return "org.apache.derby.jdbc.EmbeddedDriver";
} else if ("postgresql".equals(type)) {
return "org.postgresql.Driver";
} else if ("db2".equals(type)) {
Modified: jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentStoreTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentStoreTest.java?rev=1683325&r1=1683324&r2=1683325&view=diff
==============================================================================
--- jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentStoreTest.java (original)
+++ jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentStoreTest.java Wed Jun 3 13:30:33 2015
@@ -79,8 +79,9 @@ public abstract class AbstractDocumentSt
protected static Collection<Object[]> fixtures(boolean multi) {
Collection<Object[]> result = new ArrayList<Object[]>();
DocumentStoreFixture candidates[] = new DocumentStoreFixture[] { DocumentStoreFixture.MEMORY, DocumentStoreFixture.MONGO,
- DocumentStoreFixture.RDB_H2, DocumentStoreFixture.RDB_PG, DocumentStoreFixture.RDB_DB2,
- DocumentStoreFixture.RDB_MYSQL, DocumentStoreFixture.RDB_ORACLE, DocumentStoreFixture.RDB_MSSQL };
+ DocumentStoreFixture.RDB_H2, DocumentStoreFixture.RDB_DERBY, DocumentStoreFixture.RDB_PG,
+ DocumentStoreFixture.RDB_DB2, DocumentStoreFixture.RDB_MYSQL, DocumentStoreFixture.RDB_ORACLE,
+ DocumentStoreFixture.RDB_MSSQL };
for (DocumentStoreFixture dsf : candidates) {
if (dsf.isAvailable()) {
Modified: jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/DocumentStoreFixture.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/DocumentStoreFixture.java?rev=1683325&r1=1683324&r2=1683325&view=diff
==============================================================================
--- jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/DocumentStoreFixture.java (original)
+++ jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/DocumentStoreFixture.java Wed Jun 3 13:30:33 2015
@@ -36,8 +36,8 @@ public abstract class DocumentStoreFixtu
private static final Logger LOG = LoggerFactory.getLogger(DocumentStoreFixture.class);
public static final DocumentStoreFixture MEMORY = new MemoryFixture();
- public static final DocumentStoreFixture RDB_H2 = new RDBFixture("RDB-H2(file)", "jdbc:h2:file:./target/ds-test", "sa", "");
- public static final DocumentStoreFixture RDB_PG = new RDBFixture("RDB-Postgres", "jdbc:postgresql:oak", "postgres", "geheim");
+ public static final DocumentStoreFixture RDB_H2 = new RDBFixture("RDB-H2(file)", "jdbc:h2:file:./target/h2-ds-test", "sa", "");
+ public static final DocumentStoreFixture RDB_DERBY = new RDBFixture("RDB-Derby(embedded)", "jdbc:derby:./target/derby-ds-test;create=true", "", ""); public static final DocumentStoreFixture RDB_PG = new RDBFixture("RDB-Postgres", "jdbc:postgresql:oak", "postgres", "geheim");
public static final DocumentStoreFixture RDB_DB2 = new RDBFixture("RDB-DB2", "jdbc:db2://localhost:50000/OAK", "oak", "geheim");
public static final DocumentStoreFixture RDB_MYSQL = new RDBFixture("RDB-MySQL", "jdbc:mysql://localhost:3306/oak", "root", "geheim");
public static final DocumentStoreFixture RDB_ORACLE = new RDBFixture("RDB-Oracle", "jdbc:oracle:thin:@localhost:1521:orcl", "system", "geheim");
Modified: jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/blob/RDBBlobStoreFixture.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/blob/RDBBlobStoreFixture.java?rev=1683325&r1=1683324&r2=1683325&view=diff
==============================================================================
--- jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/blob/RDBBlobStoreFixture.java (original)
+++ jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/blob/RDBBlobStoreFixture.java Wed Jun 3 13:30:33 2015
@@ -50,8 +50,11 @@ public abstract class RDBBlobStoreFixtur
"jdbc:sqlserver://localhost:1433;databaseName=OAK"), System.getProperty("rdb-mssql-jdbc-user", "sa"),
System.getProperty("rdb-mssql-jdbc-passwd", "geheim"));
public static final RDBBlobStoreFixture RDB_H2 = new MyFixture("RDB-H2(file)", System.getProperty("rdb-h2-jdbc-url",
- "jdbc:h2:file:./target/ds-test"), System.getProperty("rdb-h2-jdbc-user", "sa"), System.getProperty(
- "rdb-postgres-jdbc-passwd", ""));
+ "jdbc:h2:file:./target/hs-bs-test"), System.getProperty("rdb-h2-jdbc-user", "sa"), System.getProperty(
+ "rdb-h2-jdbc-passwd", ""));
+ public static final RDBBlobStoreFixture RDB_DERBY = new MyFixture("RDB-Derby(embedded)", System.getProperty(
+ "rdb-derby-jdbc-url", "jdbc:derby:./target/derby-bs-test;create=true"),
+ System.getProperty("rdb-derby-jdbc-user", "sa"), System.getProperty("rdb-derby-jdbc-passwd", ""));
public static final RDBBlobStoreFixture RDB_PG = new MyFixture("RDB-Postgres", System.getProperty("rdb-postgres-jdbc-url",
"jdbc:postgresql:oak"), System.getProperty("rdb-postgres-jdbc-user", "postgres"), System.getProperty(
"rdb-postgres-jdbc-passwd", "geheim"));
Modified: jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/blob/RDBBlobStoreTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/blob/RDBBlobStoreTest.java?rev=1683325&r1=1683324&r2=1683325&view=diff
==============================================================================
--- jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/blob/RDBBlobStoreTest.java (original)
+++ jackrabbit/oak/branches/1.2/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/blob/RDBBlobStoreTest.java Wed Jun 3 13:30:33 2015
@@ -51,8 +51,8 @@ public class RDBBlobStoreTest extends Ab
public static Collection<Object[]> fixtures() {
Collection<Object[]> result = new ArrayList<Object[]>();
RDBBlobStoreFixture candidates[] = new RDBBlobStoreFixture[] { RDBBlobStoreFixture.RDB_DB2, RDBBlobStoreFixture.RDB_H2,
- RDBBlobStoreFixture.RDB_MSSQL, RDBBlobStoreFixture.RDB_MYSQL, RDBBlobStoreFixture.RDB_ORACLE,
- RDBBlobStoreFixture.RDB_PG };
+ RDBBlobStoreFixture.RDB_DERBY, RDBBlobStoreFixture.RDB_MSSQL, RDBBlobStoreFixture.RDB_MYSQL,
+ RDBBlobStoreFixture.RDB_ORACLE, RDBBlobStoreFixture.RDB_PG };
for (RDBBlobStoreFixture bsf : candidates) {
if (bsf.isAvailable()) {
@@ -128,7 +128,7 @@ public class RDBBlobStoreTest extends Ab
LOG.info("max blob length for " + blobStoreName + " was " + test);
int expected = Math.max(blobStore.getBlockSize(), 2 * 1024 * 1024);
- assertTrue("expected supported block size is " + expected + ", but measured: " + test, test >= expected);
+ assertTrue(blobStoreName + ": expected supported block size is " + expected + ", but measured: " + test, test >= expected);
}
@Test
Modified: jackrabbit/oak/branches/1.2/oak-parent/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.2/oak-parent/pom.xml?rev=1683325&r1=1683324&r2=1683325&view=diff
==============================================================================
--- jackrabbit/oak/branches/1.2/oak-parent/pom.xml (original)
+++ jackrabbit/oak/branches/1.2/oak-parent/pom.xml Wed Jun 3 13:30:33 2015
@@ -548,6 +548,16 @@
</build>
</profile>
<profile>
+ <id>rdb-derby</id>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.derby</groupId>
+ <artifactId>derby</artifactId>
+ <version>10.11.1.1</version>
+ </dependency>
+ </dependencies>
+ </profile>
+ <profile>
<id>rdb-mysql</id>
<dependencies>
<dependency>