summaryrefslogtreecommitdiffstats
path: root/src/server
Commit message (Collapse)AuthorAgeFilesLines
...
* [SERVER] Forbid hidden files when scanning image dirSimon Rettberg2020-03-201-1/+2
|
* [SERVER] Fix warnings, add assertionsSimon Rettberg2020-03-203-9/+15
|
* [SERVER] Shorter wait when closing socket after replySimon Rettberg2020-03-191-0/+2
|
* [SERVER] Add name param to threadpool_runSimon Rettberg2020-03-196-7/+16
|
* [SERVER] Use first request in queue for RTT measurementsSimon Rettberg2020-03-171-6/+20
| | | | | | This makes sure the server we're potentially switching to can at least serve the next request in the queue, making sure some progress will be made.
* [SERVER] Make sure bgrWindowSize doesn't overwhelm uplink queueSimon Rettberg2020-03-172-0/+6
|
* [SERVER] Include build type and version in RPCSimon Rettberg2020-03-172-4/+13
| | | | Added new query type q=version, which uses the STATS access rights.
* [SERVER] Don't prefetch across hash blocks in BGS_HASHBLOCK modeSimon Rettberg2020-03-171-5/+8
|
* [SERVER] threadpool: Simplify get code, make debug code _DEBUG onlySimon Rettberg2020-03-141-4/+7
|
* [SERVER] Remove uplink_ prefix from static (private) functionsSimon Rettberg2020-03-141-40/+40
|
* [SERVER] Add comments, assert for uplink threadSimon Rettberg2020-03-141-6/+20
|
* [SERVER] Use image:rid in log messagesSimon Rettberg2020-03-141-5/+5
|
* [SERVER] Check server version before setting hopCount fieldSimon Rettberg2020-03-131-1/+1
|
* [SERVER] Check and increase hopCount when adding uplink requestSimon Rettberg2020-03-131-4/+7
|
* [SERVER] Rewrite uplink queue handlingSimon Rettberg2020-03-138-394/+516
| | | | | | - Now uses linked lists instead of huge array - Does prefetch data on client requests - Can have multiple replication requests in-flight
* [SERVER] Fix data typeSimon Rettberg2020-03-091-2/+2
|
* [SERVER] Fix: Image would be assumed complete if no uplink existsSimon Rettberg2020-03-061-1/+1
| | | | Severe data corruption on client. Nice.
* [SERVER] Add printf macro for image (name:rid as %s:%d)Simon Rettberg2020-03-064-30/+27Star
|
* [SERVER] Handle "warn unused result" casesSimon Rettberg2020-03-066-10/+26
|
* [SERVER] Reload cache maps periodically for local imagesSimon Rettberg2020-03-063-49/+93
| | | | | | If an image is incomplete, but has no upstream server that can be used for replication, reload the cache map from disk periodically, in case some other server instance is writing to the image.
* [SERVER] Add timer task for saving cache mapsSimon Rettberg2020-03-046-75/+164
| | | | | | | | | Cache maps will now be saved periodically, but only if either they have a "dirty" bit set, which happens if any bits in the map get cleared again (due to corruption), or if new data has been replicated from an uplink server. This either means at least one byte received and 5 minutes have passed, or at least 500MB have been downloaded. The timer currently runs every 20 seconds.
* [SERVER] Likewise, get rid of same loops in client handlerSimon Rettberg2020-03-042-51/+39Star
|
* [SERVER] Get rid of two loops in image_updateCacheMapSimon Rettberg2020-03-031-22/+18Star
|
* [SERVER] Optimize client handler for CMD_GET_BLOCKSimon Rettberg2020-03-031-25/+43
| | | | | | | | Move CMD_GET_BLOCK out of switch block and mark as likely. Don't acquire and release cache map for every single request, but keep reference around and only release when a message other than CMD_GET_BLOCK arrives. On idle links, this should happen through CMD_KEEPALIVE every now and then.
* [SERVER] Expose image->problem bools as bitmask in RPC json dataSimon Rettberg2020-03-032-4/+13
|
* [SERVER] Also add a flag for uplink queue overloadSimon Rettberg2020-03-033-8/+16
|
* [SERVER] Remove "working" flag, introduce fine-grained flagsSimon Rettberg2020-03-036-158/+197
| | | | | | | | Tracking the "working" state of images using one boolean is insufficient regarding the different ways in which providing an image can fail. Introduce separate flags for different conditions, like "file not readable", "file not writable", "no uplink server available", "file content has changed".
* [SERVER] altservers: Fix missing index mapping (replication)Simon Rettberg2020-02-261-1/+1
|
* [SERVER] Introduce ignoreAllocErrorsSimon Rettberg2020-02-243-2/+16
| | | | | If enabled, a failed fallocate will not abort image replication, but retry with sparse mode.
* [SERVER] Lookup image on storage even in proxy modeSimon Rettberg2020-01-281-8/+11
| | | | | | | In proxy mode, when rid 0 is requested, we now first query our uplink servers for the latest revision and if this fails, like in non-proxy mode, we'll see what the latest version on disk is.
* [SERVER] Fix another nullpointer accessSimon Rettberg2019-10-301-1/+3
|
* [SERVER] Fix checking images without cache mapSimon Rettberg2019-10-293-10/+14
|
* [*] Fix/simplify checks for linuxSimon Rettberg2019-09-171-2/+2
|
* [SERVER] rpc: Fix warningsSimon Rettberg2019-09-111-2/+2
|
* [SERVER] Make buffer when reading for crc check largerSimon Rettberg2019-09-111-1/+1
|
* [SERVER] Make integrity checks on startup asyncSimon Rettberg2019-09-103-31/+37
|
* [SERVER] Fix warning on clangSimon Rettberg2019-09-071-6/+1Star
|
* [SERVER] picohttpparser: Merge 81fe3d99fd90a55cafb993e53fd3000dbc4d564cSimon Rettberg2019-09-071-21/+46
|
* [SERVER] rpc: Add cachemap featureSimon Rettberg2019-09-064-1/+63
|
* [SERVER] Introduce autoFreeDiskSpaceDelaySimon Rettberg2019-09-053-6/+27
| | | | | | | | This setting allows you to control the formerly hard-coded timeout of 10 hours before a proxy would start deleting old images in order to free up space for new images. Setting it to -1 entirely disables automatic deletion, in case you have an external process for freeing up disk space.
* [SERVER] integrity checker: Improve flushing logicSimon Rettberg2019-09-052-90/+111
|
* [SERVER] Support limiting alt-servers to specific namespaceSimon Rettberg2019-09-045-18/+49
| | | | | | Not really namespace but simple string matching for the image path. Path is matched from start with no support for glob or regex, so usually you want to have a trailing '/' to limit to certain directories.
* [SERVER] Fix altservers_getListForClient()Simon Rettberg2019-09-043-6/+66
| | | | | The score wasn't reset when adding clients to the list, resulting in exactly one server filling up the whole list.
* [SERVER] Fix indentationSimon Rettberg2019-09-031-4/+4
|
* [SERVER] Fix image_updateCachemap()Simon Rettberg2019-09-031-4/+8
|
* [SERVER] Move signal init to uplink_initSimon Rettberg2019-09-021-10/+11
| | | | | | | Initializing the signal in the thread lead to a race where we would init the uplink and queue a request for it before the thread actually initialized it. This was not harmful but lead to spurious warnings in the server's log.
* [SERVER] uplink: Don't disable already disabled imageSimon Rettberg2019-09-021-1/+1
|
* [SERVER] Fix compiler warningsSimon Rettberg2019-09-022-4/+4
|
* [SERVER] uplink: Don't reinit uplink when freeing itSimon Rettberg2019-09-021-13/+3Star
|
* [SERVER] Less debug spam, fix RTT interval calculationSimon Rettberg2019-08-301-3/+5
|