hi,
do this in packets.delete 100000 commit and then count. sleep and once again 
until finished.
bu check also on Firebird 3 and tell us if your issue is still there
regards,Karol Bieniaszewski

-------- Oryginalna wiadomość --------
Od: "[email protected] [firebird-support]" 
<[email protected]> 
Data: 29.10.2016  16:53  (GMT+01:00) 
Do: [email protected] 
Temat: [firebird-support] Best way to delete millions of rows 


 



  


    
      
      
      HeyI have a database that needs some cleanup, in some tables i need to 
delete millions of rows. I performed the cleanup on a copy of the production 
database in a development environment, using:
delete from table where created < dateadd(-6 month to current_date)followed by 
a count(*) on the table
I know that this causes massive garbage collection, however all other 
attachments to the database, and all attachments to other databases on the same 
server stopped working, and no new attachments could be created until the count 
was completed. 
So my question is:Is this considered a bug in Firebird? Especially because 
users that did not access the table, and users of other databases on the server 
was affected?And how can i perform the delete on the production server without 
affecting users? When the database is used 24/7 and the tables i need to delete 
from are frequently accessed by users?&nbs
 p;
The server is 2.5.5 running on CentOs - Running super classic. 
Best regards Thomas 

    
     

    
    


Reply via email to