Hi Marc,

Many thanks for your reply.

I'm using Hibernate for my persistence layer and provide this (jar file) to
3rd parties for accessing my database(s) via Sequoia. Unfortunately I can't
enforce these 3rd parties to use autocommit at their client ends. The makers
of Hibernate also recommend that autocommit be disabled, saying that it
(autocommit) is useful in adhoc queries but almost always inappropriate in
an application.

One of the main reasons for my using Sequoia is in it's recovery abilities -
so I'd really like to solve the problem.

To me it seems that the problem is that when autocommit (288 below, with the
"A" in the 5th column) recovery is correctly performing the operation - but
when not autocommit (290, 291 with the "T" in the 5th column) either there
is a problem with not handling the insert, the commit or perhaps there needs
to be a "begin" inserted into the recovery log to trigger off this
transaction (as suggested by Emmanuel in his earlier reply to my original
post). Perhaps the recovery mechanism itself only operates in an autocommit
mode?

If necessary I will look into the code to find the problem - but perhaps
someone on the Sequoia team could find it faster than me?

Many thanks,

Ken

288 | user   | insert into tablea values(122, 'abc', 122)  |    | A    |
0 |  286 | S  | 65 |  1
.
.
.
290 | user   | insert into tablea values(144, 'abc', 144)  |    | T    |
287 |  288 | S  | 33 |  1
291 | user   | commit                                      |    | T    |
287 |    0 | S  |  0 |  0




-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Marc
Herbert
Sent: Tuesday, 16 January 2007 11:11 PM
To: [email protected]
Subject: Re: [Sequoia] Database Recovery - only autocomitted operations ar e
recovered in to backends


Ken Burns <[EMAIL PROTECTED]> writes:


> logged to the recovery log? The log below shows that the implicit 
> "begin" (autocommit off - start of transaction - see log_id 296 above) 
> is certainly being detected. The explicit "begin" that I typed (before 
> the insert into
> ...) however was not detected, nothing in the log. 

By the way explicit "begin" requests are not recommended in JDBC. The
recommended way to perform transactions is to use the setAutoCommit()
method. Sequoia implements a hack to catch inline begins.




_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia

_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia

Reply via email to