aboutsummaryrefslogtreecommitdiff
path: root/zenserver/zenserver.cpp
Commit message (Collapse)AuthorAgeFilesLines
* moved source directories into `/src` (#264)Stefan Boberg2023-05-021-1261/+0
| | | | | | * moved source directories into `/src` * updated bundle.lua for new `src` path * moved some docs, icon * removed old test trees
* fix sentry report callstack (#256)Dan Engelbrecht2023-04-251-1/+37
| | | | | | | * Include file, line and function in sentry log error messages * use sync direct error logger to get correct call stacks on error * changelog * use d1trimfile on windows to shorten file path on windows * constexpr -> consteval
* fixed dashboard file serving bug (#255)Stefan Boberg2023-04-241-1/+1
| | | | | a recent change which introduced support for specifying accept: implicitly via the file extension in the URI caused fallout in the dashboard which would fail to serve any content because the extension was stripped from the RelativeUri accessor. This change fixes that by retaining a copy of the Uri string view which includes the suffix additionally, in order to test this change with both asio/http.sys paths I made the path used for all tests configurable in zenserver-test which involved pulling in a change from sb/proto which makes testing configuration a bit more flexible
* check for port conflict before trying to take data dir lock (#253)Dan Engelbrecht2023-04-241-24/+29
| | | | * check for port conflict before trying to take data dir lock * demote data dir conflict to warning (still exist with error code)
* Fix sentry init (#250)Dan Engelbrecht2023-04-211-1/+10
| | | | * Sentry does not like UNC paths. Strip them before passing them to sentry * changelog
* oplog and cache stats (#244)Dan Engelbrecht2023-04-211-1/+1
| | | | | | | | | | | | | | | | * basic oplog stats * add GetValueStats to cache store * RwLock::ExclusiveLockScope -> RwLock::SharedLockScope * add rawhash and attachment count to CacheValueStats * added cache-stats and project-stats commands * add cast to make Mac overload detection happy * fix accept type in cache-stats command * Add options to project-stats command * use resource paths for stats in project store * use resource paths for stats in cache * fix cache-info and project-info url discriminator * more control over details$ output * cleanup * changelog
* #minor - don't log "sentry initialized" if sentry is explicitly disabled.Dan Engelbrecht2023-04-031-6/+9
|
* Experimental ObjectStore/CDN like endpointPer Larsson2023-02-161-1/+20
|
* no sentry report on port conflict (#228)Dan Engelbrecht2023-02-131-4/+8
| | | | * Exit with failure code on port conflict rather than reporting crash to Sentry * changelog
* oplog upload/download (#214)Dan Engelbrecht2023-02-091-1/+1
| | | | | | | | | | | | - Feature: Zen server endpoint `prj/{project}/oplog/{log}/chunks` to post multiple attachments in one request. - Feature: Zen server endpoint `prj/{project}/oplog/{log}/save` to save an oplog container. Accepts `CbObject` containing a compressed oplog and attachment references organized in blocks. - Feature: Zen server endpoint `prj/{project}/oplog/{log}/load` to request an oplog container. Responds with an `CbObject` containing a compressed oplog and attachment references organized in blocks. - Feature: Zen server endpoint `{project}/oplog/{log}/rpc` to initiate an import to or export from an external location and other operations. Use either JSon or CbPackage as payload. - CbObject/JSon RPC format for `import` and `export` methods: - CbObject RPC format for `getchunks` method, returns CbPackage with the found chunks, if all chunks are found the number of attachments matches number of chunks requested. - Feature: Zen server `{project}/oplog/{log}/{hash}` now accepts `HttpVerb::kPost` as well as `HttpVerb::kGet`. - Feature: Zen command line tool `oplog-export` to export an oplog to an external target using the zenserver oplog export endpoint. - Feature: Zen command line tool `oplog-import` to import an oplog from an external source using the zenserver oplog import endpoint.
* Clean up project store file structure (#218)Dan Engelbrecht2023-02-011-1/+1
| | | | * move project store to separate folder * moved import/export project commands into projectstore cmd files
* mergeStefan Boberg2023-01-261-31/+0
|\
| * removed HttpLaunchService and related codeStefan Boberg2023-01-241-30/+0
| | | | | | | | this was used for testing but is no longer wanted in this form
| * removed dead/experimental file system related codeStefan Boberg2023-01-241-1/+0
| |
* | removed experimental mesh codeStefan Boberg2023-01-261-20/+0
|/ | | | should be replaced with a proper implementation later
* Size based gc trigger (#197)Dan Engelbrecht2022-12-021-9/+8
| | | | | - Feature: Disk size triggered GC, a soft disk usage limit for cache data. - Feature: New option `--gc-disk-size-soft-limit` (command line), `gc.cache.disksizesoftlimit` (lua config) controlling limit for soft disk usage limit. Defaults to zero which disables soft disk usage limit. - Improvement: Disk write pressure in GC log and cleaned up clutter in GC logging.
* move BasicFile to zenutil to remove zenstore dependency from zen command (#190)Dan Engelbrecht2022-11-171-1/+1
|
* Configure OpenID providers from cmd line and Lua cfg. (#189)Per Larsson2022-11-141-3/+4
|
* enable json log file (#164)Dan Engelbrecht2022-09-121-9/+13
| | | | | | * Include source location on ZEN_ERROR and ZEN_CRITICAL * Use proper logging for sentry init status * format file logger as json if .json extension is given * changelog
* create release in Sentry and set version string in executable (#162)Dan Engelbrecht2022-09-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | * create release in Sentry and set version string in executable * changelog * 0.1.6-pre0 * sentr-cli install dir * 0.1.6-pre1 * include org and project when creating Sentry release * 0.1.6-pre2 * move org and project options * 0.1.6-pre3 * need to first to "new", then finalize * 0.1.6-pre4 * read version before creating release * 0.1.6-pre5
* Adjust errors vs warnings messages (#160)Dan Engelbrecht2022-09-081-1/+1
| | | | * demote a number of ZEN_ERROR to ZEN_WARN * changelog
* remove legacy derived data interface for Jupiter (#152)Dan Engelbrecht2022-08-311-2/+1
| | | * remove legacy derived data interface for Jupiter
* Add sentry log sink to capture error/critical log statements (#147)Dan Engelbrecht2022-08-261-0/+1
| | | | Attach log file to sentry error reports Log ERROR when std::terminate() is called
* Make cas storage an hidden implementation detail of CidStore (#130)v0.1.4-pre6v0.1.4-pre5Dan Engelbrecht2022-06-171-21/+14
| | | | | | | | | | | | | | | | | | - Bumped ZEN_SCHEMA_VERSION - CasStore no longer a public API, it is hidden behind CidStore - Moved cas.h from public header folder - CidStore no longer maps from Cid -> Cas, we store entries in Cas under RawHash - CasStore now decompresses data to validate content (matching against RawHash) - CasChunkSet renames to HashKeySet and put in separate header/cpp file - Disabled "Chunk" command for now as it relied on CAS being exposed as a service - Changed CAS http service to Cid http server - Moved "Run" command completely inside ZEN_WITH_EXEC_SERVICES define - Removed "cas.basic" test - Uncommented ".exec.basic" test and added return-skip at start of test - Moved ScrubContext to separate header file - Renamed CasGC to GcManager - Cleaned up configuration passing in cas store classes - Removed CAS stuff from GcContext and clarified naming in class - Remove migration code
* removed more unnecessary CasStore related codeStefan Boberg2022-06-131-2/+0
|
* removed LocalProjectService prototypeStefan Boberg2022-06-131-9/+0
|
* sentry: added logging of sentry_init error codeStefan Boberg2022-06-101-1/+1
|
* Make it possible to configure GC monitoring intervalDan Engelbrecht2022-06-011-0/+1
| | | | | command line: --gc-monitor-interval-seconds lua: monitorintervalseconds
* Merge pull request #102 from EpicGames/de/auto-create-namespacesDan Engelbrecht2022-05-241-1/+3
|\ | | | | Automatically create namespaces on requests (if enabled via configuration)
| * Automatically create namespaces on requests (if enabled via configuration)Dan Engelbrecht2022-05-201-1/+3
| |
* | Add catch2 support (#101)Stefan Boberg2022-05-201-3/+2
|/ | | | | | | Added option to use catch2 for unit tests Currently both doctest and catch2 are supported via some compatibility macros. doctest is the default, and ZEN_USE_CATCH2 needs to be defined to switch to catch2. Our goal is to evaluate how well catch2 works and switch to catch2 if everything pans out since UE5 now supports using catch2 for unit tests.
* Tests for HttpRequestParseRelativeUriDan Engelbrecht2022-05-121-0/+1
|
* Horde execute storage config (#75)Joe Kirchoff2022-04-141-10/+9
|
* more cleanupDan Engelbrecht2022-04-121-8/+2
|
* cleanupDan Engelbrecht2022-04-121-45/+3
|
* set file limit on zenserver testDan Engelbrecht2022-04-121-1/+23
|
* log resource limit infoDan Engelbrecht2022-04-121-3/+6
|
* set open file limits after initialize of loggingDan Engelbrecht2022-04-121-21/+20
|
* set open file limit at startupDan Engelbrecht2022-04-121-0/+27
|
* Make gc reserve a global resourceDan Engelbrecht2022-04-011-0/+1
|
* Make sure we wait for gc thread to complete before exitingDan Engelbrecht2022-03-301-1/+5
|
* Add additional logging for compute services startJoe Kirchoff2022-03-221-0/+6
|
* Enable Horde compute code on Linux & Mac (#61)Joe Kirchoff2022-03-221-24/+29
|
* clang-formatDan Engelbrecht2022-03-211-1/+1
|
* Fix so ZenServer compiles when ZEN_WITH_COMPUTE_SERVICES is disabledDan Engelbrecht2022-03-171-0/+4
|
* Update horde compute to use Jupiter for storage (#60)Joe Kirchoff2022-03-171-12/+69
|
* Moved experimental/frontend.* to frontend/frontend.*Martin Ridgers2022-03-151-1/+1
|
* clang formatDan Engelbrecht2022-03-091-3/+3
|
* Fixed unsigned comparison warningStefan Boberg2022-03-081-2/+2
|
* fixed sentry initialization, added sentry logging supportStefan Boberg2022-03-071-4/+60
| | | | the initialization code was refactored at one point to add a NoSentry option, but unfortunately this had a bug which caused sentry to immediately get cleaned up before leaving the if scope