01-19-04, 06:52 #1Registered User
- Join Date
- Nov 2003
Unanswered: Problems after mass delete in DB2 V7 z/OS
I want to talk about a problem, we recently experienced, which I have no
explanation for. May be, some else has experienced the same.
An applications inserts rows into a table and frequently commits, say after
10 inserts. Concurrently another application reads the very same table
(without UR) and externalized the read rows to a sequential dataset. After
it has finisched the application does a DELETE witout any where-clause.
The first application continues to insert rows, while in between it had to
wait for the DELETE.
Now I come to my problem. When the first application finished, an
application developer did some checks and saw, that some of the rows were
still in the table, the second application also had read and written to
dataset (rows have identical keys). How can that be?
The application developer assures, that he didn't ignore any negative
SQLCODE (such as ressource unavailable) nor can I imagine, that a mass
delete only deletes part of the rows (but I have to admit, that I do not
know, how a mass delete internally works, the only thing I know about that,
is that DB2 turns on a special bit).
01-19-04, 07:24 #2Registered User
- Join Date
- Jul 2003
- Austin, TX, USA
Probably one rolledback
In case you are on the default isolation level then my guess is probably one of the applications most probably the delete rolled back hence you are seeing the rows in the table.
What I suggest is you create event monitors and trap those events probably they would throw some light.
Also enable the monitor switches at the instance level and monitor the sql statements being fired.
Ask the experienced rather than the learned