[ https://forge.continuent.org/jira/browse/SEQUOIA-1029?page=all ]
Emmanuel Cecchet closed SEQUOIA-1029:
-------------------------------------
Release Note: Recovery Log consistency checks now works across more
databases and is faster
Final optimization committed in CVS.
Reopen if statement is not compatible with your database.
> Recovery Log consistency check fails using Derby as the database
> ----------------------------------------------------------------
>
> Key: SEQUOIA-1029
> URL: https://forge.continuent.org/jira/browse/SEQUOIA-1029
> Project: Sequoia
> Type: Bug
> Components: Recovery Log
> Versions: Sequoia 2.10.9
> Environment: JAVA 1.5.0_13
> Solaris 10 SPARC
> Derby 10.3.2.1
> Reporter: Nick Smith
> Assignee: Emmanuel Cecchet
> Fix For: sequoia 2.10.10
>
> Original Estimate: 3 hours
> Remaining: 3 hours
>
> The Recovery Log consistency check fails when using Derby as the database.
> The consistency check SQL should use 'LIKE' instead of '=' as this databases
> databases have different ways to interpret '=' on Strings.
> i.e. the SQL in
> org.continuent.sequoia.controller.recoverylog.RecoveryLog.checkRecoveryLogConsistency()
> should be :
> stmt = getDatabaseConnection().prepareStatement(
> "SELECT * FROM " + getLogTableName() + " WHERE "
> + getLogTableSqlColumnName() + " LIKE ? AND "
> + "transaction_id not in (SELECT transaction_id" + " FROM "
> + getLogTableName() + " WHERE " + getLogTableSqlColumnName()
> + " LIKE ? OR " + getLogTableSqlColumnName() + " LIKE ?) ");
> instead of :
> stmt = getDatabaseConnection().prepareStatement(
> "SELECT * FROM " + getLogTableName() + " WHERE "
> + getLogTableSqlColumnName() + " LIKE ? AND "
> + "transaction_id not in (SELECT transaction_id" + " FROM "
> + getLogTableName() + " WHERE " + getLogTableSqlColumnName()
> + " = ? OR " + getLogTableSqlColumnName() + " = ?) ");
> stmt.setString(1, BEGIN + "%");
> stmt.setString(2, COMMIT);
> stmt.setString(3, ROLLBACK);
> Please Note!
> Derby also seems to unbearably slow performing the above SQL (at least with
> my recovery log configuration).
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://forge.continuent.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia