summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2017-11-22[bug] remove SOLEDAD_COUCH_URL test envVictor Shyba
It was None for parallel tests and there is already a mechanism in place for setting this URL, which avoids it being set in two different places.
2017-11-22[bug] fix logging while checking CouchDB schema versions on server startupdrebs
2017-11-20[test] avoid failing when there's no couch_url in environment variabledrebs
2017-11-20[test] always use a tempdir for server fixture config filedrebs
When starting up a Soledad Server through the use of a fixture in tests, a config file is created with the options needed for that test. As the config file was being created in /etc and not being removed, this was influencing servers started by other tests that don't use that fixture. By always using a temporary directory in the server fixture, we make sure that the config file is used only for that test and is removed after the test is finished. Closes: #8995
2017-11-19[test] use environment to pass the couch_url to server TAC testdrebs
2017-11-19[feature] allow setting couchdb url from environmentdrebs
2017-11-19[test] TAC test now checks for server (with retries)drebs
After we fixed the server to wait for checks before listening on ports (201ef7a9b979f8c8efaedbe542c631944d8956f4), the TAC test started failing randomly in our CI, probably because sometimes the server takes more than 1 second to startup in the CI setup (docker in a vm). This commit adds a check with retry, and so the test will retry 10 times with an interval of 1 second before failing.
2017-11-14[bug] wait for checks before running serversdrebs
2017-11-14[refactor] rename entrypoints to match design docsdrebs
2017-11-13[style] fixes from code reviewVictor Shyba
2017-11-13[feature] support unsynced local_only blobsVictor Shyba
Adds the ability to have document that wont be synced. This enables applications to use soledad to store temporary blobs that should be discarded later instead of unnecessarily keeping the sync loop busy. -- Resolves: #8819
2017-11-13[feature] apply deletions from serverVictor Shyba
Sync method to propagate deletions in batch locally. -- Resolves: #8961
2017-11-13[feature] list deleted files from serverVictor Shyba
-- Related: #8961
2017-11-10[bug] mark deletion as pending_delete if offlineVictor Shyba
This commit creates a PENDING_DELETE sync status which can be used to keep track of whats deleted locally in order to propagate to server later. -- Related: #8961
2017-11-09[tests] remove revision when copying couch dbsdrebs
2017-11-02[benchmarks] add test controller for scalability testsdrebs
2017-10-31[bug] set errbacks before gathering resultsVictor Shyba
2017-10-31[feat] improve speed of server startupdrebs
To avoid corrupting data, Soledad Server checks all user databases during startup to make sure all of them use the correct schema version. This was done synchronously, so when there are many databases startup would take a long time. This commit makes that verification asynchronous, thus speeding up server startup.
2017-10-31[feature] add sync progress attributeVictor Shyba
--Resolves: #8848
2017-10-27[bug] there is no retry limit for usual transfersVictor Shyba
Retry limit was originally specified in #8825 as a protection mechanism, but #8822 (retry) doesn't specify a retry limit. In fact, blobs is supposed to retry until transfer is complete using timed delays between attempts, but never giving up. -- Related: #8822 -- Related: #8825
2017-10-27[refactor] add a table for sync_statusVictor Shyba
As defined in #8970, this table and the new module will ease adding sync features such as priority queues and streaming. --Resolves: #8970
2017-10-27[style] E722 do not use bare exceptVictor Shyba
2017-10-27[refactor] split blobs into modulesVictor Shyba
So we can have manager, sync, sql and errors in its own places. --Related: #8970
2017-10-23[bug] revert unintentional changes from last commitdrebs
2017-10-23[doc] add script for copying doc to leap_se repodrebs
2017-10-12[test] remove now unneeded semaphored from benchmarksdrebs
With the introduction of semaphores in the blobmanager level, there's no need for them in the benchmark tests now.
2017-10-12[feature] make concurrent blob writes configurabledrebs
2017-10-10[test] add docstring for blobs testsdrebs
2017-10-10[test] fix blobs download benchmark testdrebs
2017-10-09[test] rename blobs sqlite benchmarks filedrebs
2017-10-09[test] add blobs upload/download benchmarkdrebs
2017-10-05[bug] fix retries for blobs downloaddrebs
- add a MaximumRetriesError exception to encapsulate other exceptions. - record the pending status before trying to download - modify update_sync_status to insert or update - modify retry tests to check number of retries - add a test for download retry limit
2017-10-05[bug] ensure maximum concurrency on blobs transferdrebs
The way in that concurrency limit was being enforced was such that transfer attempts were being spawned in groups of 3, and all of them had to finish before a new group could be spawned. This modification allows for use of maximum concurrency level at all times.
2017-10-05[bug] set as PROCESSING during processing flowVictor Shyba
It was previously setting to PROCESSED. Also added some tests to check if the underlying wrapped calls matches the intent. -- Resolves: #8955
2017-10-05[feature] notify, retry and fail from invalid tagVictor Shyba
Notify, log something meaninful and retry at most 3 times before marking the download as unusable (FAILED_DOWNLOAD). -- Related: #8825
2017-10-05[feature] retry during upload + proper waitVictor Shyba
Added retry to upload and modified retry implementation to comply with discussed spec. According to it, we should wait between retries, something like 1s, 10s, .. up to 1 minute. -- Resolves: #8822
2017-10-05[feature] retry during downloadVictor Shyba
-- Related: #8822
2017-10-05[feature] send/fetch missing using local statusesVictor Shyba
Instead of querying the server, fetch_missing and send_missing now uses the PENDING_DOWNLOAD and PENDING_UPLOAD statuses to guide itself on what to do. This allows the sync mechanism to control when/how to query data from server and reuse the query data during the sync. -- Related: #8822
2017-10-05[feature] blob get/put handle unavailable statusesVictor Shyba
PENDING_DOWNLOAD is an empty blob, so during blob_manager.get we need to return empty as it's not available. This status is used during sync. During put, if we have an empty unavailable blob, then we delete and replace with is being put, marking it as SYNCED. -- Related: #8822
2017-10-05[feature] improve preamble comparisonsVictor Shyba
We were comparing the raw content of preambles. This commit adds a way to compare excluding time so comparisons don't suffer from false negatives caused by time deltas. -- Resolves: #8920
2017-10-05[feature] persist pending_download remote listingVictor Shyba
-- Related: #8822
2017-10-05[feature] filter out unavailable blobs on listingVictor Shyba
-- Related: #8822
2017-10-05[feature] concurrent blob download/uploadVictor Shyba
-- Related: #8932
2017-10-03[test] add missing docstrings to some benchmark testsdrebs
2017-09-30[test] fix e2e test call to remote_listdrebs
2017-09-29[bug] check all http response status codesdrebs
2017-09-29[bug] raise when trying to get flags of unexisting blobdrebs
2017-09-20[test] use swaks on e2e testdrebs
2017-09-20[test] remove dependency on numpydrebs
2017-09-20[test] make conftest.py compatible with python3drebs