[ZODB-Dev] Pack problem

Alessandro Pisa alessandro.pisa at gmail.com
Mon Jul 7 12:08:30 CEST 2014


On 30 June 2014 18:42, Jim Fulton <jim at zope.com> wrote:
> On Mon, Jun 30, 2014 at 11:38 AM, Alessandro Pisa
> <alessandro.pisa at gmail.com> wrote:
> ...
>> I checked the last transaction tid and it is in the future...
> ...
>> print 'Transactions: %s' % counter
>> [root at zeoserver]# ./bin/zopepy scripts/test_tids.py
>> Size 67395884639
>> Last transaction: 67392229872-67395884631 (2014-07-01 00:10:04.686741)
>> Transactions: 1275366
>
> So, you can pass a time.time in future, or just wait a few hours :)
>

I am writing again to put the word end on this story and recap the situation.
The problem is solved.
I waited the scheduled zeopack in the weekend and it was effective.

f it happens that the pack does non do anything it is possible to use
this script to check if the last transaction is in the future:
[root at zeoserver]# cat scripts/test_tids.py
from ZODB.FileStorage import FileIterator
from ZODB.TimeStamp import TimeStamp

it = FileIterator('var/filestorage/Data.fs')
print 'Size %s' % it._file_size
last = None
counter = 0
for t in it:
    if last is not None:
        if t.tid <= last:
            import pdb; pdb.set_trace()
            print 'wtf', repr(t.tid)
    counter += 1
    last = t.tid
print 'Last transaction: %s-%s (%s)' % (
    t._tpos,
    t._tend,
    str(TimeStamp(t.tid))
)
print 'Transactions: %s' % counter
[root at zeoserver]# ./bin/zopepy scripts/test_tids.py
Size 67395884639
Last transaction: 67392229872-67395884631 (2014-07-01 00:10:04.686741)
Transactions: 1275366

Ciao e grazie!
-- 
http://alepisa.blogspot.com
Esalando Prassi


More information about the ZODB-Dev mailing list