Start a new topic

Problem accessing records that are not committed

When I try to access records on an Informix database that are not yet committed, I'm getting an error ("[Error Code: -245, SQL State: IX000] Could not position within a file via an index. 2) [Error Code: -144, SQL State: IX000] ISAM error: key value locked"). 

I know I need to set the isolation mode and so doing this (in SQL Commander) works - e.g. this is OK:

set isolation to dirty read;

select * from sp_cn_chg where chg_code = 'POST';

However, I have actually entered "set isolation to dirty read;" into "Database Connection Hooks", "Run SQL at Connect" setting on the properties tab for the connection and so I don't understand why I need to explicitly add it into the SQL Commander session. 

I can see in the logs that the the "set isolation" command is actually run:

2016-05-25 17:26:41.553 FINE 697 [ExecutorRunner-pool-2-thread-1 - AbstractFacade.executeCommand] Executing 'SET ISOLATION TO DIRTY READ'

2016-05-25 17:26:41.553 FINE 697 [pool-3-thread-1 - B.?] DefaultEditor21: IfxStatement.execute("SET ISOLATION TO DIRTY READ")

...but the SQL executed fails:

2016-05-25 17:26:41.570 FINE 697 [pool-3-thread-1 - B.?] DefaultEditor21: IfxStatement.execute("select * from sp_cn_chg where chg_code = 'POST'")

2016-05-25 17:26:41.580 FINE 697 [pool-3-thread-1 - B.?] DefaultEditor21: EXCEPTION -> java.sql.SQLException: Could not position within a file via an index.

NB: This behaviour also means I can't look at the records in the "Data" tab for table that currently has uncommitted data (which is actually the biggest issue I face) . It's no real problem just adding "set isolation to dirty read;" to my SQL Commander session, but I mainly use the "Data" tab to browse table data...

Hi Scott,

I just wanted to let you know that we have released DbVisualizer 9.5 today with a fix for the issue you reported. Please upgrade to the latest official version. Easiest is that you open Help->Check for Update in DbVisualizer to perform the upgrade.

An alternative is that you download from our web site:

Best Regards,


 Data corruption and inconsistency are possible risks associated with accessing records that haven't been committed. It might result in inaccurate or lacking data being obtained, which could have an impact on later transactions. For database operations to continue being dependable and consistent, it is essential to ensure data integrity through appropriate transaction management.

Login or Signup to post a comment