diff --git a/t/neo/storage/fs1/py/gen-testdata b/t/neo/storage/fs1/py/gen-testdata index caf4c0050b4a2f23b29ee7fd4d97ac9a318ae9ac..05553c79d0e31f2ca6ee3812474156fbefa90e24 100755 --- a/t/neo/storage/fs1/py/gen-testdata +++ b/t/neo/storage/fs1/py/gen-testdata @@ -31,18 +31,13 @@ def xtime(): time.time = xtime -def _precommit(user, description, extension): +def commit(user, description, extension): txn = transaction.get() txn.user = user txn.description = description txn.extension = extension - -def commit(user, description, extension): - _precommit(user, description, extension) - txn = transaction.get() txn.commit() - class Object(Persistent): # .value def __init__(self, value): @@ -83,9 +78,9 @@ def main(): # undo a transaction one step before a latest one a couple of times for j in range(2): - ul = db.undoLog(1+j, 2+j)[0] - _precommit(u"root%i.%i" % (i, j), u"undo %i.%i" % (i, j), {"x-generator": "zodb/py2 (undo %s)" % ul["id"]}) + ul = db.undoLog(1, 2)[0] db.undo(ul["id"]) + commit(u"root%i.%i" % (i, j), u"undo %i.%i" % (i, j), {"x-generator": "zodb/py2 (undo %s)" % ul["id"]}) conn.close() db.close() diff --git a/t/neo/storage/fs1/testdata/1.fs b/t/neo/storage/fs1/testdata/1.fs index 8775841b25869dcd99602887d91efb48ab732b71..10d890747585b158ecad6696666c8f67fa42fb9b 100644 Binary files a/t/neo/storage/fs1/testdata/1.fs and b/t/neo/storage/fs1/testdata/1.fs differ diff --git a/t/neo/storage/fs1/testdata/1.fs.index b/t/neo/storage/fs1/testdata/1.fs.index index 55a923c9d512dbf1d21ca023b88f1077df8f618f..0da5beab9843afcf49c0af5e2eef8919eef2b71b 100644 Binary files a/t/neo/storage/fs1/testdata/1.fs.index and b/t/neo/storage/fs1/testdata/1.fs.index differ diff --git a/t/neo/storage/fs1/testdata_expect_test.go b/t/neo/storage/fs1/testdata_expect_test.go index ab41d26efd068ec77cc4f1be388c6ab9cc5748d8..eaddac3f48639fcbe92aafd8df81ad53e09d8b00 100644 --- a/t/neo/storage/fs1/testdata_expect_test.go +++ b/t/neo/storage/fs1/testdata_expect_test.go @@ -1,16 +1,16 @@ // DO NOT EDIT - AUTOGENERATED (by py/gen-testdata) package fs1 -const _1fs_indexTopPos = 8917 +const _1fs_indexTopPos = 9771 var _1fs_indexEntryv = [...]indexEntry{ - { 0, 5029}, - { 1, 7211}, - { 2, 8099}, - { 3, 8691}, - { 4, 8543}, - { 5, 7359}, - { 6, 8839}, - { 7, 7507}, + { 0, 5473}, + { 1, 7705}, + { 2, 8629}, + { 3, 9567}, + { 4, 9091}, + { 5, 7859}, + { 6, 9713}, + { 7, 8013}, } var _1fs_dbEntryv = [...]dbEntry{ @@ -43,8 +43,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 1, Tid: 0x0285cbac2eeeef00, - PrevDataRecPos: 367, - TxnPos: 444, + PrevDataRecPos: 371, + TxnPos: 450, }, }, TxnHeader{ @@ -52,14 +52,14 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 0, Tid: 0x0285cbac33a06d4c, - PrevDataRecPos: 230, - TxnPos: 589, + PrevDataRecPos: 234, + TxnPos: 601, }, DataHeader{ Oid: 2, Tid: 0x0285cbac33a06d4c, PrevDataRecPos: 0, - TxnPos: 589, + TxnPos: 601, }, }, TxnHeader{ @@ -67,14 +67,14 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 0, Tid: 0x0285cbac3851eb99, - PrevDataRecPos: 657, - TxnPos: 892, + PrevDataRecPos: 673, + TxnPos: 910, }, DataHeader{ Oid: 3, Tid: 0x0285cbac3851eb99, PrevDataRecPos: 0, - TxnPos: 892, + TxnPos: 910, }, }, TxnHeader{ @@ -82,14 +82,14 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 0, Tid: 0x0285cbac3d0369e6, - PrevDataRecPos: 960, - TxnPos: 1215, + PrevDataRecPos: 982, + TxnPos: 1239, }, DataHeader{ Oid: 4, Tid: 0x0285cbac3d0369e6, PrevDataRecPos: 0, - TxnPos: 1215, + TxnPos: 1239, }, }, TxnHeader{ @@ -97,8 +97,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 2, Tid: 0x0285cbac41b4e833, - PrevDataRecPos: 815, - TxnPos: 1558, + PrevDataRecPos: 831, + TxnPos: 1588, }, }, TxnHeader{ @@ -106,8 +106,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 1, Tid: 0x0285cbac46666680, - PrevDataRecPos: 512, - TxnPos: 1703, + PrevDataRecPos: 522, + TxnPos: 1739, }, }, TxnHeader{ @@ -115,8 +115,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 2, Tid: 0x0285cbac4b17e4cc, - PrevDataRecPos: 1626, - TxnPos: 1848, + PrevDataRecPos: 1660, + TxnPos: 1890, }, }, TxnHeader{ @@ -124,8 +124,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 4, Tid: 0x0285cbac4fc96319, - PrevDataRecPos: 1481, - TxnPos: 1993, + PrevDataRecPos: 1509, + TxnPos: 2041, }, }, TxnHeader{ @@ -133,14 +133,14 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 0, Tid: 0x0285cbac547ae166, - PrevDataRecPos: 1283, - TxnPos: 2138, + PrevDataRecPos: 1311, + TxnPos: 2192, }, DataHeader{ Oid: 5, Tid: 0x0285cbac547ae166, PrevDataRecPos: 0, - TxnPos: 2138, + TxnPos: 2192, }, }, TxnHeader{ @@ -148,14 +148,14 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 0, Tid: 0x0285cbac592c5fb3, - PrevDataRecPos: 2206, - TxnPos: 2501, + PrevDataRecPos: 2264, + TxnPos: 2561, }, DataHeader{ Oid: 6, Tid: 0x0285cbac592c5fb3, PrevDataRecPos: 0, - TxnPos: 2501, + TxnPos: 2561, }, }, TxnHeader{ @@ -163,8 +163,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 4, Tid: 0x0285cbac5dddde00, - PrevDataRecPos: 2061, - TxnPos: 2887, + PrevDataRecPos: 2113, + TxnPos: 2953, }, }, TxnHeader{ @@ -172,8 +172,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 3, Tid: 0x0285cbac628f5c4c, - PrevDataRecPos: 1138, - TxnPos: 3035, + PrevDataRecPos: 1160, + TxnPos: 3107, }, }, TxnHeader{ @@ -181,8 +181,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 1, Tid: 0x0285cbac6740da99, - PrevDataRecPos: 1771, - TxnPos: 3183, + PrevDataRecPos: 1811, + TxnPos: 3261, }, }, TxnHeader{ @@ -190,8 +190,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 5, Tid: 0x0285cbac6bf258e6, - PrevDataRecPos: 2424, - TxnPos: 3331, + PrevDataRecPos: 2482, + TxnPos: 3415, }, }, TxnHeader{ @@ -199,8 +199,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 3, Tid: 0x0285cbac70a3d733, - PrevDataRecPos: 3105, - TxnPos: 3479, + PrevDataRecPos: 3181, + TxnPos: 3569, }, }, TxnHeader{ @@ -208,8 +208,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 6, Tid: 0x0285cbac75555580, - PrevDataRecPos: 2809, - TxnPos: 3627, + PrevDataRecPos: 2873, + TxnPos: 3723, }, }, TxnHeader{ @@ -217,8 +217,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 6, Tid: 0x0285cbac7a06d3cc, - PrevDataRecPos: 3697, - TxnPos: 3775, + PrevDataRecPos: 3797, + TxnPos: 3877, }, }, TxnHeader{ @@ -226,8 +226,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 1, Tid: 0x0285cbac7eb85219, - PrevDataRecPos: 3253, - TxnPos: 3923, + PrevDataRecPos: 3335, + TxnPos: 4031, }, }, TxnHeader{ @@ -235,8 +235,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 6, Tid: 0x0285cbac8369d066, - PrevDataRecPos: 3845, - TxnPos: 4071, + PrevDataRecPos: 3951, + TxnPos: 4185, }, }, TxnHeader{ @@ -244,8 +244,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 2, Tid: 0x0285cbac881b4eb3, - PrevDataRecPos: 1916, - TxnPos: 4219, + PrevDataRecPos: 1962, + TxnPos: 4339, }, }, TxnHeader{ @@ -253,8 +253,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 1, Tid: 0x0285cbac8ccccd00, - PrevDataRecPos: 3993, - TxnPos: 4367, + PrevDataRecPos: 4105, + TxnPos: 4493, }, }, TxnHeader{ @@ -262,8 +262,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 6, Tid: 0x0285cbac917e4b4c, - PrevDataRecPos: 4141, - TxnPos: 4515, + PrevDataRecPos: 4259, + TxnPos: 4647, }, }, TxnHeader{ @@ -271,8 +271,8 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 5, Tid: 0x0285cbac962fc999, - PrevDataRecPos: 3401, - TxnPos: 4663, + PrevDataRecPos: 3489, + TxnPos: 4801, }, }, TxnHeader{ @@ -280,23 +280,17 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 4, Tid: 0x0285cbac9ae147e6, - PrevDataRecPos: 2957, - TxnPos: 4811, + PrevDataRecPos: 3027, + TxnPos: 4955, }, }, TxnHeader{ Tid: 0x0285cbac9f92c633, DataHeader{ - Oid: 0, - Tid: 0x0285cbac9f92c633, - PrevDataRecPos: 2571, - TxnPos: 4959, - }, - DataHeader{ - Oid: 7, + Oid: 5, Tid: 0x0285cbac9f92c633, - PrevDataRecPos: 0, - TxnPos: 4959, + PrevDataRecPos: 4875, + TxnPos: 5109, }, }, TxnHeader{ @@ -304,44 +298,50 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 4, Tid: 0x0285cbaca4444480, - PrevDataRecPos: 4881, - TxnPos: 5365, + PrevDataRecPos: 5029, + TxnPos: 5255, }, }, TxnHeader{ Tid: 0x0285cbaca8f5c2cc, DataHeader{ - Oid: 5, + Oid: 0, Tid: 0x0285cbaca8f5c2cc, - PrevDataRecPos: 4733, - TxnPos: 5513, + PrevDataRecPos: 2635, + TxnPos: 5401, + }, + DataHeader{ + Oid: 7, + Tid: 0x0285cbaca8f5c2cc, + PrevDataRecPos: 0, + TxnPos: 5401, }, }, TxnHeader{ Tid: 0x0285cbacada74119, DataHeader{ - Oid: 6, + Oid: 4, Tid: 0x0285cbacada74119, - PrevDataRecPos: 4585, - TxnPos: 5661, + PrevDataRecPos: 5343, + TxnPos: 5810, }, }, TxnHeader{ Tid: 0x0285cbacb258bf66, DataHeader{ - Oid: 6, + Oid: 5, Tid: 0x0285cbacb258bf66, - PrevDataRecPos: 5731, - TxnPos: 5809, + PrevDataRecPos: 5197, + TxnPos: 5961, }, }, TxnHeader{ Tid: 0x0285cbacb70a3db3, DataHeader{ - Oid: 4, + Oid: 6, Tid: 0x0285cbacb70a3db3, - PrevDataRecPos: 5435, - TxnPos: 5957, + PrevDataRecPos: 4721, + TxnPos: 6112, }, }, TxnHeader{ @@ -349,62 +349,62 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 6, Tid: 0x0285cbacbbbbbc00, - PrevDataRecPos: 5879, - TxnPos: 6105, + PrevDataRecPos: 6184, + TxnPos: 6263, }, }, TxnHeader{ Tid: 0x0285cbacc06d3a4c, DataHeader{ - Oid: 3, + Oid: 4, Tid: 0x0285cbacc06d3a4c, - PrevDataRecPos: 3549, - TxnPos: 6253, + PrevDataRecPos: 5882, + TxnPos: 6414, }, }, TxnHeader{ Tid: 0x0285cbacc51eb899, DataHeader{ - Oid: 1, + Oid: 6, Tid: 0x0285cbacc51eb899, - PrevDataRecPos: 4437, - TxnPos: 6401, + PrevDataRecPos: 6335, + TxnPos: 6565, }, }, TxnHeader{ Tid: 0x0285cbacc9d036e6, DataHeader{ - Oid: 4, + Oid: 3, Tid: 0x0285cbacc9d036e6, - PrevDataRecPos: 6027, - TxnPos: 6549, + PrevDataRecPos: 3643, + TxnPos: 6716, }, }, TxnHeader{ Tid: 0x0285cbacce81b533, DataHeader{ - Oid: 7, + Oid: 1, Tid: 0x0285cbacce81b533, - PrevDataRecPos: 5287, - TxnPos: 6697, + PrevDataRecPos: 4567, + TxnPos: 6867, }, }, TxnHeader{ Tid: 0x0285cbacd3333380, DataHeader{ - Oid: 1, + Oid: 4, Tid: 0x0285cbacd3333380, - PrevDataRecPos: 6471, - TxnPos: 6845, + PrevDataRecPos: 6486, + TxnPos: 7018, }, }, TxnHeader{ Tid: 0x0285cbacd7e4b1cc, DataHeader{ - Oid: 2, + Oid: 7, Tid: 0x0285cbacd7e4b1cc, - PrevDataRecPos: 4289, - TxnPos: 6993, + PrevDataRecPos: 5731, + TxnPos: 7169, }, }, TxnHeader{ @@ -412,89 +412,89 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 1, Tid: 0x0285cbacdc963019, - PrevDataRecPos: 6915, - TxnPos: 7141, + PrevDataRecPos: 6939, + TxnPos: 7323, }, }, TxnHeader{ Tid: 0x0285cbace147ae66, DataHeader{ - Oid: 5, + Oid: 2, Tid: 0x0285cbace147ae66, - PrevDataRecPos: 5583, - TxnPos: 7289, + PrevDataRecPos: 4413, + TxnPos: 7477, }, }, TxnHeader{ Tid: 0x0285cbace5f92cb3, DataHeader{ - Oid: 7, + Oid: 1, Tid: 0x0285cbace5f92cb3, - PrevDataRecPos: 6767, - TxnPos: 7437, + PrevDataRecPos: 7397, + TxnPos: 7631, }, }, TxnHeader{ Tid: 0x0285cbaceaaaab00, DataHeader{ - Oid: 4, + Oid: 5, Tid: 0x0285cbaceaaaab00, - PrevDataRecPos: 6619, - TxnPos: 7585, + PrevDataRecPos: 6033, + TxnPos: 7785, }, }, TxnHeader{ Tid: 0x0285cbacef5c294c, DataHeader{ - Oid: 6, + Oid: 7, Tid: 0x0285cbacef5c294c, - PrevDataRecPos: 6175, - TxnPos: 7733, + PrevDataRecPos: 7243, + TxnPos: 7939, }, }, TxnHeader{ Tid: 0x0285cbacf40da799, DataHeader{ - Oid: 3, + Oid: 4, Tid: 0x0285cbacf40da799, - PrevDataRecPos: 6323, - TxnPos: 7881, + PrevDataRecPos: 7090, + TxnPos: 8093, }, }, TxnHeader{ Tid: 0x0285cbacf8bf25e6, DataHeader{ - Oid: 2, + Oid: 6, Tid: 0x0285cbacf8bf25e6, - PrevDataRecPos: 7063, - TxnPos: 8029, + PrevDataRecPos: 6637, + TxnPos: 8247, }, }, TxnHeader{ Tid: 0x0285cbacfd70a433, DataHeader{ - Oid: 6, + Oid: 3, Tid: 0x0285cbacfd70a433, - PrevDataRecPos: 7803, - TxnPos: 8177, + PrevDataRecPos: 6788, + TxnPos: 8401, }, }, TxnHeader{ Tid: 0x0285cbad02222280, DataHeader{ - Oid: 3, + Oid: 2, Tid: 0x0285cbad02222280, - PrevDataRecPos: 7951, - TxnPos: 8325, + PrevDataRecPos: 7551, + TxnPos: 8555, }, }, TxnHeader{ Tid: 0x0285cbad06d3a0cc, DataHeader{ - Oid: 4, + Oid: 6, Tid: 0x0285cbad06d3a0cc, - PrevDataRecPos: 7655, - TxnPos: 8473, + PrevDataRecPos: 8321, + TxnPos: 8709, }, }, TxnHeader{ @@ -502,17 +502,53 @@ var _1fs_dbEntryv = [...]dbEntry{ DataHeader{ Oid: 3, Tid: 0x0285cbad0b851f19, - PrevDataRecPos: 8395, - TxnPos: 8621, + PrevDataRecPos: 8475, + TxnPos: 8863, }, }, TxnHeader{ Tid: 0x0285cbad10369d66, DataHeader{ - Oid: 6, + Oid: 4, Tid: 0x0285cbad10369d66, - PrevDataRecPos: 8247, - TxnPos: 8769, + PrevDataRecPos: 8167, + TxnPos: 9017, + }, + }, + TxnHeader{ + Tid: 0x0285cbad14e81bb3, + DataHeader{ + Oid: 3, + Tid: 0x0285cbad14e81bb3, + PrevDataRecPos: 8937, + TxnPos: 9171, + }, + }, + TxnHeader{ + Tid: 0x0285cbad19999a00, + DataHeader{ + Oid: 6, + Tid: 0x0285cbad19999a00, + PrevDataRecPos: 8783, + TxnPos: 9325, + }, + }, + TxnHeader{ + Tid: 0x0285cbad1e4b184c, + DataHeader{ + Oid: 3, + Tid: 0x0285cbad1e4b184c, + PrevDataRecPos: 9245, + TxnPos: 9479, + }, + }, + TxnHeader{ + Tid: 0x0285cbad22fc9699, + DataHeader{ + Oid: 6, + Tid: 0x0285cbad22fc9699, + PrevDataRecPos: 9399, + TxnPos: 9625, }, }, }