aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* fix validationde/chunk-info-loggingDan Engelbrecht2024-06-112-13/+28
|
* add logging/validation for getchunkinfosDan Engelbrecht2024-06-111-4/+41
|
* 5.5.3-pre0v5.5.3-pre0Dan Engelbrecht2024-06-041-1/+1
|
* workspace share aliases (#91)Dan Engelbrecht2024-06-047-247/+678
| | | | | | | - Add `zen workspace-share` `--root-path` option - the root local file path of the workspace - if given it will automatically create the workspace before creating the share. If `--workspace` is omitted, an id will be generated from the `--root-path` parameter - Add `/ws/share/{alias}/` endpoint - a shortcut to `/ws/{workspace_id}/{share_id}/` based endpoints using the alias for a workspace share - Add `--alias` option to replace `--workspace` and `--share` options for `workspace-share` zen commands - Rename `zen workspace create` `folder` option to `root-path` - Rename `zen workspace create` `folder` option to `share-path`
* add batching of CacheStore requests for GetCacheValues/GetCacheChunks (#90)Dan Engelbrecht2024-06-048-121/+680
| | | | | | * cache file size of block on open * add ability to control size limit for small chunk callback when iterating block * Add batch fetch of cache values in the GetCacheValues request
* Use a smaller thread pool for network operations when doing oplog import to ↵Dan Engelbrecht2024-05-303-2/+4
| | | | | reduce risk NIC/router failure (#89) Medium worker pool now uses a minimum of 2 threads (up from 1)
* cache optimizations (#88)Dan Engelbrecht2024-05-309-47/+63
| | | | | * message formatting optimizations * bump iostorecompression small value threshold to 1MB
* workspaces review feedbackDan Engelbrecht2024-05-292-5/+5
|
* workspace shares (#84)Dan Engelbrecht2024-05-2924-50/+3369
| | | Feature: New 'workspaces' service which allows a user to share a local folder via zenserver. A workspace can have mulitple workspace shares and they provie an HTTP API that is compatible with the project oplog HTTP API. Workspaces and shares are preserved between runs. Workspaces feature is disabled by default - enable with --workspaces-enabled option when launching zenserver.
* 5.5.2v5.5.2Dan Engelbrecht2024-05-281-1/+1
|
* 5.5.2-pre3v5.5.2-pre3Dan Engelbrecht2024-05-271-1/+1
|
* changelogDan Engelbrecht2024-05-271-0/+2
|
* don't use "error:" in log messages unless there is an error (#87)Dan Engelbrecht2024-05-272-2/+3
| | | Improvement: Don't use "error:" in log messages unless there is an error as Horde CI will pick up that log line and interpret it as an error
* fix iterate chunks crash (#86)Dan Engelbrecht2024-05-272-0/+2
| | | * fix worklatch count in Oplog::IterateChunks
* release 5.4.5 (#80)Dan Engelbrecht2024-05-211-2/+4
| | | | | * Correctly calculate memory view size from Mid/MidInline function if size is not given * If we get a request for a partial chunk that can not be fulfilled we warn and treat it as a miss * 5.4.5
* iobuffer memstomp fix (#85)Dan Engelbrecht2024-05-213-3/+16
| | | | | * Don't try to validate empty compact binary * Don't try to free fake memory buffer pointer in iobuffer destructor
* refactor BlockStore IterateChunks (#77)Dan Engelbrecht2024-05-175-279/+309
| | | Improvement: Refactored IterateChunks to allow reuse in diskcachelayer and hide public GetBlockFile() function in BlockStore
* safer partial requests (#82)Dan Engelbrecht2024-05-172-37/+48
| | | | * fix partial cache miss logging * Handle zero size partial requests safer
* 5.5.2-pre2v5.5.2-pre2Dan Engelbrecht2024-05-141-1/+1
|
* fix argument order when logging missed partial chunk (#81)Dan Engelbrecht2024-05-141-8/+11
| | | | | | * fix argument order when logging missed partial chunk * make partial value a temporary variable helps with debugging as the warning on bad range can tell the original size * add asserts
* 5.5.2-pre1v5.5.2-pre1v5.4.5-pre1v5.4.5Dan Engelbrecht2024-05-081-1/+1
|
* return as missing if out of range chunk (#78)Dan Engelbrecht2024-05-082-21/+25
| | | * treat invalid partial chunk request as a miss
* 5.5.2-pre0v5.5.2-pre0Dan Engelbrecht2024-05-081-1/+1
|
* Correctly calculate memory view size from Mid/MidInline function if size is ↵Dan Engelbrecht2024-05-082-2/+9
| | | | not given (#76)
* check partial chunk result (#73)Dan Engelbrecht2024-05-032-9/+31
| | | | * validate result when getting partial chunk and warn on failure * changelog
* assert improvements (#72)Dan Engelbrecht2024-05-035-38/+83
| | | | | - Improvement: Asserts gives an immediate ERROR log entry with callstack and reason - Improvement: Asserts flushes the log before sending error report to Sentry
* 5.5.1v5.5.1Dan Engelbrecht2024-05-021-1/+1
|
* 5.5.1-pre0v5.5.1-pre0Dan Engelbrecht2024-05-021-1/+1
|
* added logic to change default HTTP server implementation when running on ↵Stefan Boberg2024-05-026-6/+40
| | | | | | Wine (#71) * added logic to change default HTTP server implementation when running on Wine * added log message to inform user about potential problems when running under Wine
* fix zero size attachment replies (#69)Dan Engelbrecht2024-05-028-67/+84
| | | | - Bugfix: Don't try to respond with zero size partial cache value when partial size is zero - Improvement: Added more validation of data read from cache / cas
* use write and move in place for safer writing of files (#70)Dan Engelbrecht2024-05-0210-24/+36
| | | * use write and move in place for safer writing of files
* batch cache put (#67)Dan Engelbrecht2024-05-027-126/+483
| | | - Improvement: Batch scope for put of cache values
* fix get project files loop (#68)Dan Engelbrecht2024-04-306-57/+112
| | | | | - Bugfix: Remove extra loop causing GetProjectFiles for project store to find all chunks once for each chunk found - Bugfix: Don't capture ChunkIndex variable in CasImpl::IterateChunks by reference as it causes crash - Improvement: Make FileCasStrategy::IterateChunks (optionally) multithreaded (improves GetProjectFiles performance)
* miscellaneous minor bugfixes (#66)v5.5.0Stefan Boberg2024-04-265-11/+19
| | | | | | | | this change addresses some TSAN warnings for improved robustness and less TSAN noise - Added dedicated timer for EnqueueStateExitFlagTimer - Made log formatter `fullformatter` output consistent time stamps across threads - Made Linux/Mac event implementation TSAN clean
* oplog iterate chunks content type (#65)Dan Engelbrecht2024-04-265-54/+146
| | | | - Bugfix: Properly set content type of chunks fetch from CidStore - Improvement: Add IterateChunks(std::span<Oid>) for better performance in get oplog
* 5.5.0Dan Engelbrecht2024-04-261-1/+1
|
* use direct file access for large file hash (#63)Dan Engelbrecht2024-04-2615-69/+157
| | | - Improvement: Refactor `IoHash::HashBuffer` and `BLAKE3::HashBuffer` to not use memory mapped files. Performs better and saves ~10% of oplog export time on CI
* fix oplog import during gcv2 (#62)v5.5.0-pre3v5.5.0-pre2Dan Engelbrecht2024-04-254-114/+140
| | | | - Bugfix: Always pre-cache oplog when creating project store GCv2 referencer - Bugfix: Correctly capture attachments imported with oplog to void them being GCd before oplog is written
* zenserverprocess hardening (#61)Dan Engelbrecht2024-04-254-25/+53
| | | | * verify running process before creating event * make sure we don't signal/wait for a zenserver instance that we did not wait for to get ready
* iterate cas chunks (#59)Dan Engelbrecht2024-04-2414-140/+299
| | | - Improvement: Reworked GetChunkInfos in oplog store to reduce disk thrashing and improve performance
* remove obsolete codeDan Engelbrecht2024-04-241-4/+0
|
* safer gcv2 on error (#60)Dan Engelbrecht2024-04-247-6/+42
| | | - Bugfix: Harden GCv2 when errors occur and gracefully abort GC operation on error
* bump vcpkg and xmake to latest (#40)Dan Engelbrecht2024-04-245-14/+18
| | | - Improvement: Bumped xmake to 2.9.1 and vcpkg version to 2024.03.25
* Bugfix: Only disable oplog update capture if we have started it (#58)Dan Engelbrecht2024-04-242-1/+7
|
* 5.5.0-pre0v5.5.0-pre0Dan Engelbrecht2024-04-221-1/+1
|
* set gc-v2 as default (#56)Dan Engelbrecht2024-04-222-1/+2
| | | - Change: GCv2 is now the default option, use `--gc-v2=false` to fall back to GCv1
* InsertChunks for CAS store (#55)Dan Engelbrecht2024-04-2215-177/+654
| | | - Improvement: Add batching when writing multiple small chunks to block store - decreases I/O load significantly on oplog import
* fix LogRemoteStoreStatsDetails (#53)Dan Engelbrecht2024-04-201-2/+3
|
* import oplog improvements (#54)Dan Engelbrecht2024-04-2011-205/+387
| | | | | | | | | | | * report down/up transfer speed during progress * add disk buffering in http client * offload block decoding and chunk writing form network worker pool threads add block hash verification for blocks recevied at oplog import * separate download-latch from write-latch to get more accurate download speed * check headers when downloading with http client to go directly to file writing for large payloads * we must clear write callback even if we only provide it as an argument to the Download() call * make timeout optional in AddSponsorProcess * check return codes when creating windows threadpool
* 5.4.5-pre0v5.4.5-pre0Dan Engelbrecht2024-04-181-1/+1
|