347 Commits
Author SHA1 Message Date
vyzo fd33b96e08 make symlink helper freestanding 2021-07-29 04:43:19 -04:00
vyzoandJakub Sztandera 4417be81ad fix typo
Co-authored-by: Jakub Sztandera <kubuxu@protocol.ai>
2021-07-29 04:43:07 -04:00
vyzo ec78d3d7b1 fix format specifier 2021-07-29 04:42:56 -04:00
vyzo 0caabf1328 improve detection of relative links 2021-07-29 04:42:41 -04:00
vyzo a24b2436b0 extend test to check the validity of relative links 2021-07-29 04:42:35 -04:00
vyzo 7a3193a75b make relative links when the canonical and new db paths are in the same directory 2021-07-29 04:42:29 -04:00
vyzo d039764a34 code cosmetics: rename variables for better readability and some comments 2021-07-29 04:41:57 -04:00
vyzo da3e36acdc Merge branch 'master' into feat/moving-gc 2021-07-27 12:12:38 +03:00
vyzo 8809707158 update README 2021-07-27 12:08:39 +03:00
vyzo c21c413695 remove db2 to dbNext 2021-07-27 12:06:40 +03:00
vyzo bb2d99908c make state constants typed 2021-07-27 12:03:26 +03:00
vyzo b82f953fd5 use the badger streaming interface in doCopy 2021-07-27 11:46:35 +03:00
vyzo 59aebba0d9 use a slab allocator for the copy 2021-07-27 11:35:21 +03:00
vyzo 0baeec0686 remove filter from doCopy; it's not used
it was there to support a potential CopyTo interface; but we'll cross that bridge when we get there.
2021-07-27 11:18:24 +03:00
vyzo 649fc62863 panic if we fail to correctly setup the db paths.
we can't really continue and leave a ticking bomb for the next restart; the user might not see it.
2021-07-27 10:27:16 +03:00
vyzo d6ace68540 extend test to do a double move and check symlink following 2021-07-27 10:16:50 +03:00
vyzo cbaffab9dd use EvalSymlinks in deleteDB 2021-07-27 10:08:07 +03:00
vyzo c03859c1b5 resolve symlinks when constructing the new db path
so that the new path is adjacent to the old path, allowing the user to symlink the db in
a different file system.
2021-07-27 10:05:35 +03:00
vyzo 9d25464703 use functional options for hotstore gc, rename MovingGC to FullGC 2021-07-27 09:53:22 +03:00
vyzo 96c1123c33 use functional options in the BlockstoreGC interface 2021-07-27 09:52:06 +03:00
vyzo c52c2738ab fix potential underflow 2021-07-26 18:38:42 +03:00
vyzo 18caefc4a1 fix missing object condition; short-circuit walk 2021-07-26 18:34:05 +03:00
vyzo 0fd8fc24e1 load a full finality worth of state during warmup 2021-07-26 18:34:05 +03:00
vyzo 938330e6c3 moveMx is not an RWMutex, just a regular mutex 2021-07-26 15:09:31 +03:00
vyzo 21e7c188da use CollectGarbage in blockstore move test, as it is the real interface 2021-07-26 15:05:57 +03:00
vyzo b1f60e85e9 document moving GC frequency option in README 2021-07-26 15:05:57 +03:00
vyzo 5acae50e07 add config option for splitstore moving gc frequency 2021-07-26 15:05:57 +03:00
vyzo fb3986226f do hotstore moving GC in splitstore with a user-specified frequency 2021-07-26 15:05:57 +03:00
vyzo c747f2f1e2 do moving GC if the user asks for it 2021-07-26 15:05:57 +03:00
vyzo a843665132 add options to BlockstoreGC trait 2021-07-26 15:05:57 +03:00
vyzo 94509968a0 make moveTo a private method 2021-07-26 15:05:20 +03:00
vyzo 5cf6fdf81d don't heap allocate the cond, just set L 2021-07-26 15:04:46 +03:00
vyzo 524564e2cf add some more logging around move 2021-07-26 15:04:46 +03:00
vyzo f2c7b08be5 follow symbolic links when deleting old dbs 2021-07-26 15:04:46 +03:00
vyzo 608a9f84d2 fix copy: flush discards the transaction 2021-07-26 15:04:46 +03:00
vyzo 4b0b37a4ef fix lint
the great spellchecker strikes again
2021-07-26 15:04:46 +03:00
vyzo 4715b1f436 fix lotus-shed 2021-07-26 15:04:46 +03:00
vyzo aec126879e add MoveTo test 2021-07-26 15:04:46 +03:00
vyzo 001c04f2dd use pooled slices for the copy 2021-07-26 15:04:46 +03:00
vyzo b741d61b20 implement BlockstoreMover in badger 2021-07-26 15:04:46 +03:00
vyzo 2cfd73c879 manually compute size when badger is being stupid 2021-07-26 09:46:21 +03:00
vyzo 74009bd67f document lotus-shed splitstore utiilities in the README 2021-07-26 08:52:32 +03:00
vyzo ce528a1293 implement Info in splitstore 2021-07-26 08:45:46 +03:00
vyzo 30e4b405b7 implement BlockstoreSize for badger 2021-07-26 08:43:09 +03:00
vyzo baaa9a7738 add BlockstoreSize trait for reporting size 2021-07-26 08:42:54 +03:00
vyzo c00b86e8a8 stop the walk on missing references 2021-07-25 13:42:20 +03:00
vyzo 5285a14d27 write check summary at the end 2021-07-25 11:42:13 +03:00
vyzo 5718da237f handle newlines consistently in check output 2021-07-25 11:30:58 +03:00
vyzo 1918ffda4e implement splitstore check 2021-07-25 10:35:37 +03:00
vyzo d6ebead756 add comment about the necessity of FileIO 2021-07-23 16:30:55 +03:00