70 Commits (c414a90abc51cdd4a84aaad7f852397ae9f21eea)

Author SHA1 Message Date
Vitaliy Filippov c414a90abc TRACE 1 year ago
Vitaliy Filippov 0f43f6d3f6 Fix crashes, print some stats 2 years ago
Vitaliy Filippov 46f9bd2a69 Make blockstore list operation return consistent snapshots 2 years ago
Vitaliy Filippov 6982fe1255 Do not block reads by previous unfinished writes 2 years ago
Vitaliy Filippov eba053febe Do not start small writes before finishing the last big write to the same object 2 years ago
Vitaliy Filippov 3f522c66e6 Implement immediate commit mode 2 years ago
Vitaliy Filippov c863543bfe Fix possible journal corruption caused by concurrent flushing and writing of the same journal sector 2 years ago
Vitaliy Filippov 1696446545 Rename min/max _used to _flushed 2 years ago
Vitaliy Filippov 41dddddbf2 Fix some logging 2 years ago
Vitaliy Filippov c71b67f2f7 Move SYNC_STAB_ALL into blockstore implementation 2 years ago
Vitaliy Filippov ffe073473a Remove hardcode of the EC(2+1) scheme, now it supports EC(k+1), fix some bugs 2 years ago
Vitaliy Filippov 2b09710d6f Implement blockstore rollback operation 2 years ago
Vitaliy Filippov 43f6cfeb73 Extract alignments to options 2 years ago
Vitaliy Filippov a3d3949dce Do not overwrite same journal sector multiple times 2 years ago
Vitaliy Filippov 111516381f Add FIXME 2 years ago
Vitaliy Filippov cf819eb442 Implement sparse block bitmap to avoid zero-fill 2 years ago
Vitaliy Filippov 4b05bde3a2 Block writes earlier than sync/stabilize would be blocked, too 2 years ago
Vitaliy Filippov b3f2102f33 Add queue stall tracking 2 years ago
Vitaliy Filippov ba23824561 Allow to disable zero fill 2 years ago
Vitaliy Filippov bf3eecc159 Extract 512 to constants 2 years ago
Vitaliy Filippov 4677ace4cc Allow zero-length overwrites 2 years ago
Vitaliy Filippov e8f7905e08 Allow to set write/delete version explicitly 2 years ago
Vitaliy Filippov d3d21e6e0f Rename OP_ to BS_OP_ 2 years ago
Vitaliy Filippov a7e74670a5 Split blockstore implementation and interface header 2 years ago
Vitaliy Filippov 749ab6e2c6 Rename blockstore_operation to blockstore_op_t 2 years ago
Vitaliy Filippov a7a0946ba8 WIP OP_DELETE 2 years ago
Vitaliy Filippov 45f34fb3b2 Fix linear overwrite, make metadata writes ordered, ignore older entries when recovering journal 2 years ago
Vitaliy Filippov b6fff5a77e Fix metadata area size calculation, print free space, wait for free space 2 years ago
Vitaliy Filippov 9fa0d3325f Support inmemory journal 2 years ago
Vitaliy Filippov d56cb290ee Two FIXMEs 2 years ago
Vitaliy Filippov 35a6ed728d Fix another stall due to bad unstable_writes tracking, do not try to write beyond the end of the journal 2 years ago
Vitaliy Filippov 2630e2e3b9 Fix metadata partition length, fix journal allocation at the end 2 years ago
Vitaliy Filippov 9ba243b3ee Add debug prints 2 years ago
Vitaliy Filippov e2b91968c5 Fix sync confirmations and some pipeline-stall bugs 2 years ago
Vitaliy Filippov 74d8ea2f01 Calculate data crc32c 2 years ago
Vitaliy Filippov 1080cbdf12 Fix used journal sector tracking again 2 years ago
Vitaliy Filippov ff7469ee91 Make allocator a class 2 years ago
Vitaliy Filippov b8e53f8c67 Fix op validation, fix journal sector usage tracking 2 years ago
Vitaliy Filippov 299b7288d5 Fix journal loading 2 years ago
Vitaliy Filippov b6174075de Fix write iov_len check 2 years ago
Vitaliy Filippov 5b8df6768b Try to submit a test write operation 2 years ago
Vitaliy Filippov e40a71b2ce Check result to be equal to iov_len 2 years ago
Vitaliy Filippov c2de733e35 Copy io_uring_prep_* to my_uring_prep_* so they do not clear user_data 2 years ago
Vitaliy Filippov eec1c35ea4 Begin to debug ... all of this stuff :) 2 years ago
Vitaliy Filippov 0627dd0f5e Used journal sector tracking 2 years ago
Vitaliy Filippov f1e236c6e8 Sync metadata & data after copying from journal 2 years ago
Vitaliy Filippov bc549553e4 Rename dirty_entry.size to len, remove some unneeded methods and fields, read metadata correctly 2 years ago
Vitaliy Filippov 1c6b9778a4 Handle all io_uring events using lambdas 2 years ago
Vitaliy Filippov ae77a228c7 Rename big_write.block to location 2 years ago
Vitaliy Filippov bb55a7fbf4 Zero-fill new objects and write them to the main storage 2 years ago