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 2014/06/30 14:41:19 UTC
svn commit: r1606717 - in /jackrabbit/oak/trunk:
oak-blob/src/test/java/org/apache/jackrabbit/oak/spi/blob/AbstractBlobStoreTest.java
oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java
Author: reschke
Date: Mon Jun 30 12:41:19 2014
New Revision: 1606717
URL: http://svn.apache.org/r1606717
Log:
OAK-1914: change LEVEL to LVL (LEVEL is reserved in Oracle), create Oracle-specific DDL statements, avoid use of LIMIT (see also OAK-1746)
Modified:
jackrabbit/oak/trunk/oak-blob/src/test/java/org/apache/jackrabbit/oak/spi/blob/AbstractBlobStoreTest.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java
Modified: jackrabbit/oak/trunk/oak-blob/src/test/java/org/apache/jackrabbit/oak/spi/blob/AbstractBlobStoreTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-blob/src/test/java/org/apache/jackrabbit/oak/spi/blob/AbstractBlobStoreTest.java?rev=1606717&r1=1606716&r2=1606717&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-blob/src/test/java/org/apache/jackrabbit/oak/spi/blob/AbstractBlobStoreTest.java (original)
+++ jackrabbit/oak/trunk/oak-blob/src/test/java/org/apache/jackrabbit/oak/spi/blob/AbstractBlobStoreTest.java Mon Jun 30 12:41:19 2014
@@ -405,7 +405,7 @@ public abstract class AbstractBlobStoreT
ids.remove(iter.next());
}
- assertTrue(ids.isEmpty());
+ assertTrue("unexpected ids in store: " + ids, ids.isEmpty());
}
@Test
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java?rev=1606717&r1=1606716&r2=1606717&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java Mon Jun 30 12:41:19 2014
@@ -98,10 +98,13 @@ public class RDBBlobStore extends Cachin
if (tableName.equals("DATASTORE_META")) {
if ("MySQL".equals(dbtype)) {
stmt.execute("create table " + tableName
- + " (ID varchar(767) not null primary key, LEVEL int, LASTMOD bigint)");
+ + " (ID varchar(767) not null primary key, LVL int, LASTMOD bigint)");
+ } else if ("Oracle".equals(dbtype)) {
+ stmt.execute("create table " + tableName
+ + " (ID varchar(1000) not null primary key, LVL number, LASTMOD number)");
} else {
stmt.execute("create table " + tableName
- + " (ID varchar(1000) not null primary key, LEVEL int, LASTMOD bigint)");
+ + " (ID varchar(1000) not null primary key, LVL int, LASTMOD bigint)");
}
} else {
// the code below likely will need to be extended for
@@ -175,7 +178,7 @@ public class RDBBlobStore extends Cachin
throw new RuntimeException(message, ex);
}
try {
- prep = con.prepareStatement("insert into datastore_meta(id, level, lastMod) values(?, ?, ?)");
+ prep = con.prepareStatement("insert into datastore_meta(id, lvl, lastMod) values(?, ?, ?)");
try {
prep.setString(1, id);
prep.setInt(2, level);
@@ -403,7 +406,7 @@ public class RDBBlobStore extends Cachin
private long maxLastModifiedTime;
private DataSource ds;
- private static int BATCHSIZE = 1024 * 256;
+ private static int BATCHSIZE = 1024 * 64;
private List<String> results = new LinkedList<String>();
private String lastId = null;
@@ -439,7 +442,7 @@ public class RDBBlobStore extends Cachin
query.append(" where id > ?");
}
}
- query.append(" order by id limit " + BATCHSIZE);
+ query.append(" order by id");
Connection connection = null;
try {
@@ -454,7 +457,7 @@ public class RDBBlobStore extends Cachin
if (lastId != null) {
prep.setString(idx++, lastId);
}
-
+ prep.setFetchSize(BATCHSIZE);
ResultSet rs = prep.executeQuery();
while (rs.next()) {
lastId = rs.getString(1);
@@ -466,6 +469,7 @@ public class RDBBlobStore extends Cachin
connection.close();
}
} catch (SQLException ex) {
+ LOG.debug("error executing ID lookup", ex);
try {
if (connection != null) {
connection.rollback();