gget79
25th April 2012, 22:56
Hi Experts,

I have a big big problem. I get 206 error when I try to process a high data volume, I understand that this error occurs me when exists a "commit" without "for update", but the data are very big then this dificult me see the problem.

My question is, exist one environment variable that changing value when a commit.transaction has ocurred?

If this exists I can do trace the variable and detect the change.

Thanks

günther
26th April 2012, 14:52
Hi.

I don't know about such a variable. But I remember that I had such a problem that took me some time to find and that happend only sometimes.

1. db.retry.point() select .. for update ... endselect commit.transaction() -- typical logic
2. long commit.count ... if commit.count > ... then commit.transcation() endif -- typical logic

The problem was that due to a customization after a commit.transaction inside the selectdo part in (2) the database buffer was modified again and that led into the error 206 "record not locked".

So I would suggest that you have a look at your code if you possible change the database record AFTER a possible commit.

Günther