summaryrefslogtreecommitdiffstats
path: root/zkfacade/src/test
Commit message (Collapse)AuthorAgeFilesLines
* Remove duplicate headersJon Bratseth2021-03-181-1/+1
|
* Add copyright headersJon Bratseth2021-03-181-1/+2
|
* Simplify, testing server is not usedHarald Musum2021-03-031-59/+7
|
* Use CuratorConfigMartin Polden2020-11-201-13/+17
|
* Extract ConnectionSpecMartin Polden2020-11-202-16/+74
|
* Also test cumulative deadlock countersHåkon Hallingstad2020-10-201-0/+4
|
* Replace deadlock avoidance with metricsHåkon Hallingstad2020-10-191-9/+16
|
* Deadlock detectionHåkon Hallingstad2020-10-111-5/+70
| | | | | | | | | | | | Just before Lock.acquire() is invoked, the locks within the process is queried to see if a "deadlock" will occur: The current thread waiting to acquire lock path P1, which is held by thread T1 waiting on acquiring a lock at path P2, etc, until a thread is waiting for a lock held by the current thread. Even without this PR the deadlock would resolve itself automatically because all locks are acquired with timeouts. However, this PR 1. resolves the deadlock immediately, and 2. leaves a log trace (hopefully from the exception) to allow us to refactor code to avoid such deadlocks.
* Avoid metrics on reentry of lockHåkon Hallingstad2020-10-082-32/+60
|
* Make richer latency statsHåkon Hallingstad2020-10-054-139/+144
| | | | | | | | | Makes a LatencyStats which provides some useful metrics, best explained there and in LatencyMetrics. This includes latency metrics, the "QPS" (e.g. the number of acquire() per second), and load metrics. Unfortunately I had to move from atomics to synchronized to accomplish this, but I see no other way.
* Move lock metrics to MetricsReporterHåkon Hallingstad2020-10-035-29/+196
| | | | | | | | | | | | | | | Adds two new metrics: - The load of acquiring each lock path: The average number of threads waiting to acquire the lock within the last minute (or unit of time). Aka the lock queue (depth). - The load of the lock for each lock path: The average number of threads holding the lock within the last minute (or unit of time). This is always <= 1. Aka the lock utilization. Changes the LockCounters to LockMetrics, and exporting those once every minute through MetricReporter which is designed for this.
* Add metrics to lock attemptsHåkon Hallingstad2020-10-013-4/+6
|
* Record locks taken for external deploysHåkon Hallingstad2020-09-301-11/+11
| | | | | | | | | | | | - Information about a lock attempt now includes a list of lock attempts done while holding the lock, forming a tree (forest) structure. - Records the duration and locking attempts done as part of an external deploy, forming a tree of locks with timing info. The currently active external deploys are shown in an "ongoing-recording" field of /nodes/v2/locks. - The 3 longest external deploys are kept in "recordings" in /nodes/v2/locks. - Extracts the global process-wide parts of ThreadLockStats into separate class for clarity.
* More info -> attempt renamesHåkon Hallingstad2020-09-282-11/+11
|
* LockInfo -> LockAttempt, ThreadLockInfo -> ThreadLockStats, and moreHåkon Hallingstad2020-09-282-36/+44
|
* Use deque as stackHåkon Hallingstad2020-09-281-0/+23
|
* Mock lock path from thread to per-lock (bug)Håkon Hallingstad2020-09-262-1/+59
|
* Adds method name to stack trace and adds timeout count and testHåkon Hallingstad2020-09-251-0/+113
|
* Stick to junit for simple test.Henning Baldersheim2020-08-111-6/+5
|
* Wait longer for servers to reach barrierHarald Musum2020-04-291-3/+3
| | | | | | | 1. Wait up to 2 seconds for all to reach barrier. 2. If not, wait up to 4 seconds for the server that waits for the barrier to be one of the respondents AND a majority of servers have reached barrier. 3. If not, wait for a majority of servers to have reached barrier.
* Create zookeeper client config file only when necessaryHarald Musum2020-01-091-5/+4
|
* Set TLS config for client based on VESPA_USE_TLS_FOR_ZOOKEEPER_CLIENTHarald Musum2019-12-052-5/+6
|
* Revert "Revert "Reapply "Move ZooKeeperServer to another module"""Harald Musum2019-10-231-140/+0
|
* Revert "Reapply "Move ZooKeeperServer to another module""Harald Musum2019-10-221-0/+140
|
* Revert "Revert "Reapply "move ZooKeeperServer to another module"""Harald Musum2019-10-221-140/+0
|
* Revert "Reapply "move ZooKeeperServer to another module""Håkon Hallingstad2019-10-221-0/+140
|
* Revert "Revert "Reapply "Move ZooKeeperServer to another module""""Harald Musum2019-10-211-140/+0
|
* Revert "Reapply "Move ZooKeeperServer to another module"""Harald Musum2019-10-211-0/+140
|
* Revert "Revert "Move ZooKeeperServer to another module""Harald Musum2019-10-201-140/+0
|
* Revert "Move ZooKeeperServer to another module"Harald Musum2019-10-181-0/+140
|
* Move ZooKeeperServer to another moduleHarald Musum2019-10-171-140/+0
| | | | | | zookeeper-server jar is not a preinstalled bundle, as zkfacade is, so need to add bundle explicitly for clustercontroller and add symlink from components dir for config server
* Add constructor without ZooKeeperServer argument, for testingHarald Musum2019-10-161-1/+1
| | | | Will be used by code in internal repo, so needs to be public
* Revert "Reapply "upgrade to zookeeper 3.5""Harald Musum2019-09-271-6/+2
|
* Revert "Revert "Hmusum/upgrade to zookeeper 3.5""Harald Musum2019-09-241-2/+6
|
* Revert "Hmusum/upgrade to zookeeper 3.5"Harald Musum2019-09-171-6/+2
|
* Fix error from rebasing onto master: server numbering starts at 0.gjoranv2019-09-101-4/+4
|
* Fix unit testsHarald Musum2019-09-101-6/+10
|
* Use server id in config for singlenode zookeeper setupsHarald Musum2019-09-061-13/+14
| | | | | Update tests accordingly and start numbering at 0, aw will be done by the code that creates zookeeper-server config
* Actually test the waiter in its test class >_<Jon Marius Venstad2019-04-121-0/+1
|
* Revert "Revert "Revert "Jvenstad/fix config model inconsitency"""Jon Marius Venstad2019-03-011-1/+0
|
* Revert "Revert "Jvenstad/fix config model inconsitency""Jon Marius Venstad2019-03-011-0/+1
|
* Revert "Jvenstad/fix config model inconsitency"Harald Musum2019-03-011-1/+0
|
* Actually test the waiter in its test class >_<Jon Marius Venstad2019-03-011-0/+1
|
* Replace CuratorLock with LockJon Marius Venstad2019-02-261-51/+0
|
* Revert "Revert "No need for restricting access to zookeeper in hosted vespa""Harald Musum2018-10-241-2/+1
|
* Revert "No need for restricting access to zookeeper in hosted vespa"Harald Musum2018-10-241-1/+2
|
* Merge pull request #7423 from ↵Jon Bratseth2018-10-241-2/+1
|\ | | | | | | | | vespa-engine/hmusum/remove-check-for-allowed-zk-clients-in-hosted No need for restricting access to zookeeper in hosted vespa
| * No need for restricting access to zookeeper in hosted vespaHarald Musum2018-10-231-2/+1
| | | | | | | | Access restrictions handled by other means
* | Whitelist ZooKeeper four letter commandsHarald Musum2018-10-241-1/+3
|/
* Use full nameHarald Musum2018-10-034-4/+4
|