How to collect garbage in TEMPORARY table?
------------------------------------------

                 Key: CORE-5552
                 URL: http://tracker.firebirdsql.org/browse/CORE-5552
             Project: Firebird Core
          Issue Type: Bug
          Components: Engine
    Affects Versions: 2.5.6
         Environment: Version 2.5.6.27020, Classic Server
            Reporter: Oleg Matveyev
         Attachments: TEMP_GARBAGE.log, TEMP_GARBAGE.sql

On every step loop in top level procedure P0 temporary table is cleared by 
delete operator, and just in case is execute "select count(*) from all records".
And then is runing calculation procedure P1 manipulating with data in temporary 
table.
But every new executiing of the procedure P1 was slowdowned.

The initial speed was restored only after COMMIT. 
This is obvious, because temporary table created with option ON COMMIT DELETE 
ROWS.


          I1         DB_EXECUTE_TIME 
============ ======================= 
           0       111.9744000000000 
           1       104.9760000000000 
           2       114.9984000000000 
           3       118.9728000000000 
           4       125.9712000000000 
           5       137.0304000000000 
           6       153.0144000000000 
           7       149.9904000000000 
           8       158.0256000000000 
           9       162.0000000000000 
          10       182.9952000000000 
          11       181.0080000000000 
          12       189.9936000000000 
          13       214.9632000000000 
          14       210.9888000000000 
          15       221.0112000000000 
          16       221.0112000000000 
          17       221.9616000000000 
          18       233.9712000000000 
          19       233.9712000000000 

          I1         DB_EXECUTE_TIME 
============ ======================= 
          20       238.0320000000000 
          21       259.0272000000000 
          22       263.0016000000000 
          23       266.9760000000001 
          24       271.9872000000000 


          I1         DB_EXECUTE_TIME 
============ ======================= 
           0       290.9952000000000 
           1       290.9952000000000 
           2       289.9584000000000 
           3       299.0304000000000 
           4       313.0272000000000 
           5       315.0144000000000 
           6       324.0000000000000 
           7       325.9872000000000 
           8       360.9791999999999 
           9       351.9936000000000 
          10       374.0256000000000 
          11       400.0320000000000 
          12       372.9888000000001 
          13       386.9856000000000 
          14       379.9872000000000 
          15       390.0096000000000 
          16       409.0176000000000 
          17       414.0288000000000 
          18       421.9776000000000 
          19       442.0224000000000 

          I1         DB_EXECUTE_TIME 
============ ======================= 
          20       421.0272000000000 
          21       435.9744000000000 
          22       445.9968000000000 
          23       447.9840000000001 
          24       459.9936000000001 



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to