| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
separating the http server implementations into a directory and moved diagsvcs into zenserver since it's somewhat hard-coded for it
|
| |
|
|
|
| |
* use a CbObjectView instead of CbObject to avoid creating IOBufferCore instances
* use BasicFileBuffer directly where possible
* changelog
|
| |\
| |
| | |
Change default port to 8558
|
| | |\
| |/
|/| |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| | |
these allow standalone programs to share much of the logging setup from zenserver
|
| | |
| |
| |
| |
| |
| | |
GC will now skip a lightweight GC if a full GC is due to run within the next
lightweight GC interval
also fixed some minor typos
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
when dedicated mode is enabled via `--dedicated` or `server.dedicated` then we tune http.sys server settings to be more suitable for a shared server
initially we tune two things
* the thread pool used to service I/O requests allows a larger number of threads to be created when needed. The minimum thread count is unchanged but in dedicated server mode we double the maximum number of threads allowed
* the http.sys request queue length (`HttpServerQueueLengthProperty`) is increased to 50,000 in dedicated mode. The regular default is 1,000
|
| |/
|
|
| |
Changes the default port without altering config for shared instances.
|
| |
|
|
|
|
|
|
|
| |
* added explicit implementation of IoHash equals and less than operator using memcpy
This improves codegen on MSVC in particular.
Without this the operator is not inlined and consists of 20 individual (not in a loop) byte-by-byte comparisons each with an associated branch.
With this change we get three comparisons (two uint64, one uint32) and three branches. So less pressure on branch predictors and as the code gets inlined the predictor should hopefully also function better.
|
| |
|
|
|
|
|
|
|
| |
added pluggable transport based on asio. This is in an experimental state and is not yet a replacement for httpasio even though that is the ultimate goal
also moved plugin API header into dedicated part of the tree to clarify that it is meant to be usable in isolation, without any dependency on zencore et al
moved transport implementations into dedicated source directory in zenhttp
note that this adds code to the build but nothing should change at runtime since the instantiation of the new code is conditional and is inactive by default
|
| | |
|
| |
|
|
|
|
|
|
|
| |
* renamed some interfaces to improve pluggable transport API
TransportConnectionInterface -> TransportConnection
TransportPluginInterface -> TransportPlugin
TransportServerConnectionHandler -> TransportServerConnection
TransportServerInterface -> TransportServer
|
| |
|
|
|
| |
* removed legacy compute code, which will be replaced with a new implementation in the future
* also updated references to Jupiter storage
|
| | |
|
| |
|
|
| |
this was there before but lost in a merge recently
|
| | |
|
| |
|
| |
this change adds a `--http=plugin` mode where we support pluggable transports. Currently this defaults to a barebones blocking winsock implementation but there is also support for dynamic loading of transport plugins, which will be further developed in the near future.
|
| |
|
|
|
| |
- Feature: Add caching of referenced CId content for structured cache records, this avoid disk thrashing when gathering references for GC
- disabled by default, enable with `--cache-reference-cache-enabled`
- Improvement: Faster collection of referenced CId content in project store
|
| |
|
| |
disk usage stats are now properly reported in log messages
|
| |
|
|
| |
* AssertException constructor should be explicit
* removed pragma comment
|
| |
|
|
| |
* extended bad bucket rejection logic to include GET operations as well as PUTs
|
| |
|
|
| |
Conforming indentation. Fixing lightweight-interval-seconds -> lightweightintervalseconds. Adding missing comma preceding memlayer.
|
| | |
|
| | |
|
| | |
|
| |
|
| |
* Bugfix: Remove double counting of memory usage in memcachelayer
|
| |
|
|
| |
* make sure we update last gc time even if gc fails
* If we can't check if an oplog/project markerfile exists, assume it is not expired
|
| | |
|
| |
|
|
|
|
|
| |
* added string_view helpers for ParseHexBytes/ParseHexNumber
* reject known bad buckets in structured cache put handler (32-character hex bucket names are rejected)
* also added bucket rejection logic to bucket discovery
* added rejected_writes stat to HttpStructuredCache
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
this change fixes a problem where the memory cache layer can inadvertently prevent underlying block store files from being deleted
* ensure we get memory buffers on all paths
* added more context to error in IoBufferBuilder::ReadFromFileMaybe
* fixed problematic pread call success check in IoBufferBuilder::ReadFromFileMaybe which would always report failure on Linux/MacOS
|
| | |
|
| |
|
| |
* check that block does not exists on disk before starting write to it
|
| |
|
|
|
|
|
|
|
| |
* make sure we hold the index lock when reading payload data in reclaim space
* don't use index snapshot when updating index in reclaim space
* check that things have not moved under our feet
* don't touch m_Payloads without a lock
* start write block index on the highest block index
* we don't need to bump writeblockindex when stopping write to a block, we will bump appropriately when we start a new block
* changelog
|
| |\ |
|
| | | |
|
| | |
| |
| | |
* Don't block all write access to all buckets when doing GatherReferences/CollectGarbage
|
| |/ |
|
| | |
|
| |
|
|
| |
added --quiet option for zenserver to suppress default logging to stdout
|
| | |
|
| |
|
|
| |
async
|
| | |
|
| |
|
| |
added names to process handle GC thread and main thread for easier identification in crash dumps / process monitoring
|
| |
|
|
|
|
| |
Shared instance:
- Tweak full GC interval
- Add lightweight GC config
- Add memlayer GC config
|