This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author skip.montanaro
Recipients erno, ghaering, gregburd, gregory.p.smith, jcea, josiahcarlson, pitrou, rhettinger, skip.montanaro
Date 2009-01-04.12:36:34
SpamBayes Score 0.006060067
Marked as misclassified No
Message-id <1231072595.93.0.319441964239.issue3783@psf.upfronthosting.co.za>
In-reply-to
Content
Hopefully I'm not picking at a scab here.  I updated the dbm.sqlite
module in the sandbox.  It now orders by rowid instead of by key.
(I saw no performance penalty for the small table sizes I was using
to ordering.  I switched from ordering by key to ordering by rowid
based on Gerhard's comment.

I got a big performance boost on writes by only committing once every
100 calls to __setitem__.  I still commit when deleting keys and 
explicitly commit when closing.

The main performance bottleneck now appears to be keys() and iterkeys().
I don't see how to make them any simpler.  Oddly enough, it seems
that iterkeys() is slower than keys().  Maybe it's just lack of sleep
but I can't see why this is so.
History
Date User Action Args
2009-01-04 12:36:36skip.montanarosetrecipients: + skip.montanaro, rhettinger, gregory.p.smith, jcea, ghaering, josiahcarlson, pitrou, erno, gregburd
2009-01-04 12:36:35skip.montanarosetmessageid: <1231072595.93.0.319441964239.issue3783@psf.upfronthosting.co.za>
2009-01-04 12:36:35skip.montanarolinkissue3783 messages
2009-01-04 12:36:34skip.montanarocreate