Index: jackrabbit-core/src/main/java/org/apache/jackrabbit/core/persistence/bundle/BundleDbPersistenceManager.java =================================================================== --- jackrabbit-core/src/main/java/org/apache/jackrabbit/core/persistence/bundle/BundleDbPersistenceManager.java (revision 652759) +++ jackrabbit-core/src/main/java/org/apache/jackrabbit/core/persistence/bundle/BundleDbPersistenceManager.java (working copy) @@ -29,6 +29,7 @@ import java.sql.Blob; import java.sql.Connection; import java.sql.DatabaseMetaData; +import java.sql.SQLException; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; @@ -426,14 +427,15 @@ } BufferedReader reader = new BufferedReader(new InputStreamReader(in)); Statement stmt = connectionManager.getConnection().createStatement(); + String sql = null; try { - String sql = reader.readLine(); + sql = reader.readLine(); while (sql != null) { - sql = createSchemaSQL(sql); if (!sql.startsWith("#") && sql.length() > 0 && (sql.indexOf("BINVAL") < 0 || useDbBlobStore())) { // only create blob related tables of db blob store configured // execute sql stmt + sql = createSchemaSQL(sql); stmt.executeUpdate(sql); } // read next sql stmt @@ -443,6 +445,11 @@ String msg = "Configuration error: unable to read the resource '" + schema + ".ddl': " + e; log.debug(msg); throw new RepositoryException(msg, e); + } catch (SQLException e) { + String msg = "Schema generation error: Issuing statement: " + sql; + SQLException se = new SQLException(msg); + se.initCause(e); + throw se; } finally { IOUtils.closeQuietly(in); stmt.close();