I'm doing something I think is pretty simple, but I'm getting unexpected results. After a few hours of googling, I still don't understand what I don't understand ;) So, I'm sorry for spamming this list if this is a dumb question.
I'm using derby via embedded JDBC. I do a bunch of work in a single transaction, then commit. If the system fails during the operation of a single transaction, I expect a rollback on system restart (for embedded, I /assume/ that means once I've connected to the db again -- but this might be my problem). In testing my system, I killed the process in the middle of the transaction. On restart, I expected all of the work done in that (partial) transaction to be removed. But it wasn't. The affects were still there -- and visible to a new transaction. This is not what I would expect. Is there something specific that needs to be done to force derby to roll back incomplete transactions? Is this specific to embedded derby? Is there something simple I'm missing? [In case anyone wonders, yes I did set autocommit to false on the JDBC connection.] Thanks for your help, tim