- 07 Jul, 2021 2 commits
-
-
Kirill Smelkov authored
This way ΔFtail tests will be able to reuse it. * t3: . . . . . . . . . . . . . . Revert "." . . . .
-
Kirill Smelkov authored
-
- 01 Jul, 2021 24 commits
-
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
This reverts commit a5027dc7.
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
* t2: X Unexport SetXXX from packages API
-
Kirill Smelkov authored
-
Kirill Smelkov authored
* t2: X No longer rely on ZODB cache invariant for invalidations X ΔFtail: Keep reference to ZBigFile via Oid, not via *ZBigFile
-
Kirill Smelkov authored
-
Kirill Smelkov authored
Move all aspects of what is tracked into ΔFtail. It is more robust if ΔFtail does not rely on properties of outside zconn.Cache in order to work correctly. It also potentially allows to move ΔFtail out of zdata package. And it is even more memeory efficient, as before it was Connection.cache[zoid] -> ZBlk(ghost)->inΔFtail and now it is ΔFtail.trackSetZBlk[zoid] -> zblkTrack becuase Persistent embedded in ZBlk even in ghost state occupies alone occupies ~ 16 words. Now we keep only what is needed to be kept for tracking.
-
Kirill Smelkov authored
*ZBigFile is live object associated with particular ZODB Connection.
-
Kirill Smelkov authored
-
- 30 Jun, 2021 6 commits
-
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
- gen-δtail is not used - we are building ΔFtail from scratch. - gogcccrash did its work and the problem is now understood.
-
Kirill Smelkov authored
-
- 29 Jun, 2021 4 commits
-
-
Kirill Smelkov authored
-
Kirill Smelkov authored
* t:
-
Kirill Smelkov authored
Now both normal and random tests for all Update and rebuild could be exercised as part of regular test runs. * t2: X rebuild: tests: Random testing X rebuild: tests: Don't exercise keys from keys2 that already became tracked after Track(keys1) + Update X rebuild: tests: Inline _assertTrack X rebuild: tests: Don't compute keyCover in trackSet X rebuild: tests: Don't recompute trackSet(keys1R2) several times X rebuild: tests: Move ΔBtail.Clone test out of hot inner loop into separate test X tests: Factor-out tree-test-env into tTreeEnv X xbtree: Less copy/garbage in RangedKeySet ops X rebuild: tests: Precompute kadj10·kadj21 X rebuild: tests: Don't access ZODB in xtrackKeys X rebuild: tests: Don't access ZODB in XGetδKV X rebuild: tests: Don't reflect.DeepEqual in inner loop . . . . . .
-
Kirill Smelkov authored
Rework py allstructs to emit just set of random trees for one kv. Rework TestΔBTailAllStructs to iterate through such obtained sets and generate all pairs and triplets. Previously it was only pairs which is not enough to verify rebuild properly.
-
- 28 Jun, 2021 4 commits
-
-
Kirill Smelkov authored
X rebuild: tests: Don't exercise keys from keys2 that already became tracked after Track(keys1) + Update 58s -> 14s (in -short mode)
-
Kirill Smelkov authored
t.Helper() is relatively expensive 61s -> 58s
-
Kirill Smelkov authored
63s -> 61s
-
Kirill Smelkov authored
68s -> 63s
-