aboutsummaryrefslogtreecommitdiff
path: root/zenstore/filecas.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* filecas: Added handling of error when a rename is attempted but the target ↵Stefan Boberg2021-10-081-1/+8
| | | | already exists
* Merged from upstreamStefan Boberg2021-10-051-2/+10
|
* Ensure FILE_RENAME_INFO structure allocation is freed also if ↵Stefan Boberg2021-09-251-2/+3
| | | | FileCasStrategy::InsertChunk() throws
* Encapsulated containers in CasChunkSet to allow for more efficient ↵Stefan Boberg2021-09-211-38/+21
| | | | udpates/queries
* Wired up scrubbing to more higher level servicesStefan Boberg2021-09-211-30/+53
| | | | Also moved sharding logic for filecas into a function to redduce cut/pasta
* Fixed another issue with filecas name shardingStefan Boberg2021-09-201-1/+1
|
* Moved more code into zen namespace, for consistencyStefan Boberg2021-09-201-1/+1
| | | | Also removed snapshot_manifest (remnants of vfs prototype)
* Fixed unused variable warnings exposed by xmake build (unclear why I do not ↵Stefan Boberg2021-09-191-1/+7
| | | | receive them in VS, but likely due to vcpkg versioning)
* Implemended basic scrubbing / detection of disk corruption. Still needs more ↵Stefan Boberg2021-09-191-17/+78
| | | | code to propagate errors and make adjustments to account for them in higher level data structures
* Changed some code over from ATL to BasicFile and added Scrub() stubs.Stefan Boberg2021-09-191-0/+5
|
* Changed logging implementationStefan Boberg2021-09-151-6/+6
| | | | | | * Code should no longer directly `#include spdlog/spdlog.h`, instead use `#include <zencore/logging.h>` * Instead of explicit calls to `spdlog::info(...)` and such please use the logging macros defined in `zencore/logging.h`. I.e `ZEN_INFO`, `ZEN_DEBUG`, `ZEN_TRACE`, `ZEN_ERROR`, `ZEN_CRITITCAL` * The macros will pick up the "most local" logger via a `Log()` call to retrieve a logger instance. To override the default logger in a class please implement your own `Log()` function
* Changed direct includes of spdlog/spdlog.h into zencore/logging.h to make it ↵Stefan Boberg2021-09-151-1/+1
| | | | easier to tweak implementation
* Silence unused parameter warningStefan Boberg2021-09-041-0/+1
|
* Format fix.Per Larsson2021-08-311-1/+1
|
* Removed FileCasImpl (unused)Stefan Boberg2021-08-261-80/+4
|
* Added missing lock to side channel InsertChunk() implementationStefan Boberg2021-08-261-6/+39
| | | | Previously, this could cause file contention as two threads would try to create the same chunk file
* Clang-format fixesStefan Boberg2021-08-241-1/+1
|
* Implemented more formalised CAS chunk filtering (with plenty of room for ↵Stefan Boberg2021-08-231-0/+39
| | | | optimization)
* Improved comment while reviewing codeStefan Boberg2021-08-211-1/+1
|
* Changed file CAS implementation to use ThrowSystemException instead of ↵Stefan Boberg2021-08-201-2/+2
| | | | WindowsException to get more detail on failures
* clang-formatStefan Boberg2021-08-121-2/+2
|
* Implemented Flush() operation for CID/CAS store interfacesStefan Boberg2021-08-111-0/+11
|
* Added some more diagnostics to potential file operation errorsStefan Boberg2021-05-271-2/+7
|
* Fixed logic to avoid a race condition which could cause a sharing violation ↵Stefan Boberg2021-05-271-0/+4
| | | | when two threads try to write the same chunk
* Removed pointer-based InsertChunk from CAS store interface.Stefan Boberg2021-05-251-4/+0
| | | | All code must now use the IoBuffer path
* Added logic to guard against accidental file move in file CAS fast pathStefan Boberg2021-05-131-1/+4
| | | | Now verifies the chunk is referencing an entire file before moving it into place
* Implemented move-in-place for large CAS payloadsStefan Boberg2021-05-131-0/+108
|
* Adding zenservice codeStefan Boberg2021-05-111-0/+237