Subject | Too many SavePoints error |
---|---|
Author | paultugwell |
Post date | 2004-03-16T13:29:57Z |
I was doing an update on an IB6 database which involved changing
several table structures, then updating various existing fields in
the database and intitialising some new fields to zero. I ran this
update as a script using the IB_SQL utitlity. The script was of the
form
ALTER TABLE STRUCTURES
COMMIT;
UPDATE TABLE A SET ORIGINALFIELD1 = 'X' WHERE ORIGINALFIELD1 = 'Y';
COMMIT;
UPDATE TABLE A SET NEWFIELD1 = 0, NEWFIELD2 = 0;
COMMIT;
where there were 3 copies of the update of original fields for
different values plus one copy of the new field update for each of
about 6 tables of 75,000 to 200,000 records.
Eventually IB ground to a halt and I found the message 'Too many
savepoints (287)'
I've since run the update on a copy of the data, with no problems.
Needless to say, the copy that crashed was at a customer's site. The
database before updating verified OK and had no limbo transactions.
There is very little information on this error, but what there is
seems to point to excessive commit retainings without a commit.
Can anyone help please?
several table structures, then updating various existing fields in
the database and intitialising some new fields to zero. I ran this
update as a script using the IB_SQL utitlity. The script was of the
form
ALTER TABLE STRUCTURES
COMMIT;
UPDATE TABLE A SET ORIGINALFIELD1 = 'X' WHERE ORIGINALFIELD1 = 'Y';
COMMIT;
UPDATE TABLE A SET NEWFIELD1 = 0, NEWFIELD2 = 0;
COMMIT;
where there were 3 copies of the update of original fields for
different values plus one copy of the new field update for each of
about 6 tables of 75,000 to 200,000 records.
Eventually IB ground to a halt and I found the message 'Too many
savepoints (287)'
I've since run the update on a copy of the data, with no problems.
Needless to say, the copy that crashed was at a customer's site. The
database before updating verified OK and had no limbo transactions.
There is very little information on this error, but what there is
seems to point to excessive commit retainings without a commit.
Can anyone help please?