cancel
Showing results for 
Search instead for 
Did you mean: 

SQL Anywhere Error - 210: User 'another user' has the row in 'tablexyz' locked

Former Member
0 Kudos

Hi I have multiple Java process which launches serially one by one. This process does job of loading data into tablexyz and then tablefinal. After first process finishes its job I get the following error

SQL Anywhere Error - 210: User 'another user' has the row in 'tablexyz' locked.


Flow goes like this:


Process 1:

Creates table tablexyz and loads data into it does some processing and then finally copies data into tablefinal. I commit transaction here after all steps.


Process 2:

Drops/Empties table tablexyz if it is there and then again creates table tablexyz and loads data into it does some processing and then finally copies data into tablefinal. I commit transaction here after all steps.


My app fails at the process 2 and it gives tablexyz locked. I dont understand both process uses same database user myuser then why second process is not able to delete tablexyz created by first process. Please guide I am new to Sybase IQ. Thanks in advance.

Accepted Solutions (0)

Answers (1)

Answers (1)

tayeb_hadjou
Advisor
Advisor
0 Kudos

Hi Umesh,

Make sure operations in process 1 are actually terminated by a commit.

You can connect to database as DBA and use system procedures like  sp_iqlocks, sp_qtransaction , sp_iqcontext to check current locks and transactions.

Check in related iqmsg file (IQ database error log) to see if an exception prevented the operation in process 1 to finsh properly.

Regards,

Tayeb.