Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> snapshot too old

snapshot too old

From: Shawn <spedwards_at_qwest.net>
Date: Wed, 25 Feb 2004 21:43:06 -0700
Message-ID: <yPe%b.576$os4.58426@news.uswest.net>


Hi,

I've been struggling to update this test table that has about 1.5 million rows in it. I'm getting this error message:

01555, 00000, "snapshot too old: rollback segment number %s with name \"%s\" too small"
// *Cause: rollback records needed by a reader for consistent read are
// overwritten by other writers
// *Action: Use larger rollback segments

Below is my script. Any suggestions would be greatly appreciated.

--
declare
     counter number := 0;
     cursor c1 is select ssn from test_table;

begin
   FOR c2 in c1 LOOP
 update test_table
 set SSN = TRANSLATE ('915482376','123456789',TRANSLATE(SSN,
'1234567890','9732581406'))
        where ssn = c2.ssn;

     counter := counter + 1;

     IF (counter = 2500)
     THEN
        COMMIT;
        counter := 0;
     END IF;
   END LOOP;

   COMMIT;
END;

/
exit;
Received on Wed Feb 25 2004 - 22:43:06 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US