Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

Build Forge: problem with SQL_Server AutoCommit mode setting

Hi,

I see errors like the following in the Catalina log:

Jul 25, 2013 10:47:57 AM com.buildforge.services.server.db.DBConnection rollback
WARNING: Rollback failed, so assuming connection is dead.
Jul 25, 2013 10:47:57 AM com.buildforge.services.server.db.DBConnection errorRollback
SEVERE: SQL 1564564801 rollback failed: com.microsoft.sqlserver.jdbc.SQLServerException: Cannot invoke a rollback operation when the AutoCommit mode is set to "true".
Jul 25, 2013 10:47:57 AM com.buildforge.services.server.api.ServerContext rollbackNoEx
WARNING: Rollback failed: com.buildforge.services.common.db.DBException: CRRBF0562I: A failure occurred while trying to [rollback] a database transaction.

Is this caused by something we didn't set up right with the database? Just wanted to check here before submitting a PMR.

Thanks,

Jozef


0 votes



2 answers

Permanent link
 Hello,

The data that Build Forge sends to the DB is in "chunks". If I have 100 statements, it will grab 20 at a time. Sometimes statement 20 can not be completed before statement 21. In the event that this occurs, the database will do a rollback in order to keep the integrity of the data. In most cases, this occurs and the rollback errors are just a part of the process. In this event, it appears that you have AutoCommit mode set to true. You may want to turn off AutoCommit. AutoCommit will execute every transaction, save the information and commit data immediately and automatically. This makes it very difficult to rollback. This is most likely the cause of your ability to not roll back the database. Turning off AutoCommit is fairly simple depending on the version of DB that you are using. 

If the errors still occur and or you have loss of functionality, I would then open a PMR.

Thanks!

1 vote

Comments

Thanks for the reply. I cannot find how to disable AutoCommit at the database level. It appears this has to be done by the application by initiating a transaction, which automatically turns AutoCommit off. When the transaction is completed, the connection reverts back to AutoCommit = on.
Can you tell me how to turn AutoCommit off for a SQL_Server 2005 database?

Thanks,

Jozef


Permanent link
 Hello,

One thing to check is the this "SELECT is_read_committed_snapshot_on FROM sys.databases WHERE name='build'" The value should return a 1 if set correctly. I am not sure if this is part of it, but it is something easy to check. 

For this type of troubleshooting and due to lack of additional information. I would suggest opening a PMR so that the support team can gather additional information to make a better decision. 

0 votes

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details

Question asked: Jul 25 '13, 2:26 p.m.

Question was seen: 6,962 times

Last updated: Jul 25 '13, 3:44 p.m.

Confirmation Cancel Confirm