Commit Graph

1195 Commits

Author SHA1 Message Date
Armon Dadgar 22f548c338 consul: Provide logger to yamux 2014-05-28 16:32:25 -07:00
Armon Dadgar 6331a717ed consul: Suppress messages about closed connections 2014-05-28 16:32:25 -07:00
Armon Dadgar 57cef6e9b1 consul: ensure connections are properly closed 2014-05-28 16:32:24 -07:00
Armon Dadgar d1ebf83e39 consul: Add new protocol version for yamux 2014-05-28 16:32:24 -07:00
Armon Dadgar d737a2204a consul: Pass protocol version for leader forwarding 2014-05-28 16:32:24 -07:00
Armon Dadgar f16d13213c consul: remove explicit leave, use reconciliation 2014-05-28 16:32:24 -07:00
Armon Dadgar a31a19040e consul: Server processes local Serf join 2014-05-28 16:32:24 -07:00
Armon Dadgar 1be705c410 consul: Fix client server reaping 2014-05-28 16:32:24 -07:00
Armon Dadgar 3a854b5952 consul: Store the protocol version for a server 2014-05-28 16:32:24 -07:00
Armon Dadgar aa32e95139 consul: Adding Addr to serverParts 2014-05-28 16:32:24 -07:00
Armon Dadgar 2457293dce consul: Pool client connections, support for yamux connections 2014-05-28 16:32:24 -07:00
Armon Dadgar b03ead39a1 consul: Support for incoming Yamux connections 2014-05-28 16:32:24 -07:00
Armon Dadgar c51089353e Merge pull request #174 from nelhage/multi-ca-cert
Allow multiple PEM-encoded certificates in the ca_file.
2014-05-27 10:47:41 -07:00
William Tisäter d0e447d29b Add `/v1/agent/self` and return local agent config 2014-05-27 01:15:33 +02:00
William Tisäter 7146561fad Wait for joining member in `TestClient_JoinLAN` 2014-05-27 00:55:20 +02:00
William Tisäter ed4230f1fc Fix tests on Go 1.3 and greater
Go 1.3 and greater require ServerName or InsecureSkipVerify to be set.

https://codereview.appspot.com/67010043/
2014-05-27 00:47:47 +02:00
William Tisäter 4685e1c51f Revert "Remove `WaitForResult` from two failing tests"
This reverts commit f0842409cd.
2014-05-26 23:49:23 +02:00
William Tisäter 3f361972ac Remove TODO comments 2014-05-26 23:44:46 +02:00
William Tisäter f0842409cd Remove `WaitForResult` from two failing tests 2014-05-26 23:44:37 +02:00
Nelson Elhage fe4ec67488 Allow multiple PEM-encoded certificates in the ca_file.
fixes #167
2014-05-26 10:58:57 -07:00
Armon Dadgar 37f49427e1 consul: Suppress error if connection is closed 2014-05-23 16:28:55 -07:00
Armon Dadgar e55a6fb6d6 Support wildcard for check lookup. Fixes #152 2014-05-21 12:45:12 -07:00
Armon Dadgar de309057ff Support rejoin after leave. Fixes #110. 2014-05-21 12:32:24 -07:00
Armon Dadgar e0abf2e92c consul: Adding support for lock-delay in sessions 2014-05-20 16:25:29 -07:00
Armon Dadgar 14be60aaca gofmt 2014-05-20 16:25:29 -07:00
Armon Dadgar 0119ec7f0a agent: First pass at session endpoints 2014-05-20 16:25:29 -07:00
Armon Dadgar b8174dc500 consul: Adding tests for session endpoints 2014-05-20 16:25:29 -07:00
Armon Dadgar f2b2a68a55 consul: First pass at Session RPC endpoints 2014-05-20 16:25:29 -07:00
Armon Dadgar aa97e24b02 consul: Testing FSM snapshot of sessions 2014-05-20 16:25:29 -07:00
Armon Dadgar 555533e2f8 consul: Testing KVS Lock/Unlock in FSM 2014-05-20 16:25:29 -07:00
Armon Dadgar 85656e0f54 consul: FSM tests for session 2014-05-20 16:25:28 -07:00
Armon Dadgar 137d21fbac consul: Adding support for sessions to FSM 2014-05-20 16:25:28 -07:00
Armon Dadgar 8772068163 consul: Adding SessionList to snapshot 2014-05-20 16:25:28 -07:00
Armon Dadgar c19806464b consul: Session invalidation releases locks 2014-05-20 16:25:28 -07:00
Armon Dadgar dc1955526c consul: Support KVSLock and KVSUnlock 2014-05-20 16:25:28 -07:00
Armon Dadgar 1c484e991d consul: Switch notify to using txn defer 2014-05-20 16:25:28 -07:00
Armon Dadgar 5e0639a0eb consul: Adding session invalidation 2014-05-20 16:25:28 -07:00
Armon Dadgar 8fec0c093c consul: Adding Defer to MDBTxn 2014-05-20 16:25:28 -07:00
Armon Dadgar 222996050d consul: Adding session tests 2014-05-20 16:25:28 -07:00
Armon Dadgar 65ccddcd6b consul: Adding SessionDestroy 2014-05-20 16:25:28 -07:00
Armon Dadgar 4695da527a consul: Adding session lookup methods 2014-05-20 16:25:27 -07:00
Armon Dadgar 836e1b5a10 consul: Adding SessionCreate and SessionRestore 2014-05-20 16:25:27 -07:00
Armon Dadgar 26ee0e3c76 consul: Adding util method to generate a UUID 2014-05-20 16:25:27 -07:00
Armon Dadgar 1e5c8a445c consul: Adding new session tables 2014-05-20 16:25:27 -07:00
Armon Dadgar d1f392fed3 Merge pull request #145 from abursavich/master
consul: use empty slice instead of nil slice when no tags exist for /v1/catalog/services
2014-05-19 15:37:43 -07:00
Armon Dadgar baa831d847 Merge pull request #136 from hashicorp/f-testutil-package
WIP: Proof of concept using `WaitForResult` in tests
2014-05-16 15:03:50 -07:00
Armon Dadgar e08ca71559 consul: Disable conflict resolution. See #97. 2014-05-16 14:11:53 -07:00
Armon Dadgar 1611d986d6 consul: Avoid name conflict on WAN ring. Fixes #158. 2014-05-16 14:07:53 -07:00
Mitchell Hashimoto 78b7c57ba3 command/agent: find proper private IP on Windows
/cc @armon
2014-05-15 11:27:30 -07:00
Armon Dadgar 03a98ed1d7 consul: Remove RPC client tracking. Fixes #149. 2014-05-14 17:34:24 -07:00
Andrew M Bursavich f48dcf0984 use empty slice instead of nil slice when no tags exist for service 2014-05-13 00:18:36 -07:00
Armon Dadgar 686fac0e49 consul: Adding a Raft command enqueue limit 2014-05-09 19:18:06 -07:00
William Tisäter dcfd03be00 Add TODOs for failing tests 2014-05-09 11:38:29 +02:00
William Tisäter 335cd5a68a Wait wrap tests in `TestServer_JoinLAN` 2014-05-09 03:41:47 +02:00
William Tisäter 4a9058a07e Sleep since no obvious way to wait for shutdown 2014-05-09 03:24:13 +02:00
William Tisäter 7092ab744b Fix race condition in `TestLeader_RegisterMember` 2014-05-09 03:05:38 +02:00
William Tisäter 048b780d61 Fix race condition in `TestCatalogListNodes` 2014-05-09 03:00:56 +02:00
William Tisäter 860cdb9c96 Change blocking call sleep time 2014-05-09 02:36:25 +02:00
William Tisäter a727c59e74 Remove all sleeps from `client_test.go` 2014-05-09 02:29:51 +02:00
William Tisäter 7ffc8cd29e Fix race condition in `TestLeader_FailedMember` 2014-05-09 02:14:39 +02:00
William Tisäter f0a8866d42 Remove all sleeps from `internal_endpoint_test.go` 2014-05-09 02:11:40 +02:00
William Tisäter 9e73d1b849 Remove all sleeps from `kvs_endpoint_test.go` 2014-05-09 02:09:53 +02:00
William Tisäter f4597403e3 Remove all sleeps from `leader_test.go` 2014-05-09 02:04:52 +02:00
William Tisäter 4e9e14ff93 Remove all sleeps from `server_test.go` 2014-05-09 01:38:58 +02:00
William Tisäter 176e3eb9df Remove all sleeps from `status_endpoint_test.go` 2014-05-09 01:23:54 +02:00
William Tisäter c0de985b91 Fix imports in `health_endpoint_test.go` 2014-05-09 01:21:13 +02:00
William Tisäter 14dec397f8 Remove all sleeps from `catalog_endpoint_test.go` 2014-05-09 01:18:35 +02:00
William Tisäter f202123fb1 Remove all sleeps from `health_endpoint_test.go` 2014-05-09 01:18:08 +02:00
William Tisäter 78145ecfd5 Require datacenter argument for `WaitForLeader` 2014-05-09 01:17:35 +02:00
William Tisäter 05243b35cd Move argument structs back in original position 2014-05-07 23:51:15 +02:00
William Tisäter 93c7103bb5 Move `WaitForLeader` calls to top of test 2014-05-07 23:47:16 +02:00
William Tisäter c8168bd8fe Drop client arguments from `WaitForLeader` 2014-05-07 23:41:14 +02:00
William Tisäter aa00bfff7d Fix `TestCatalogListNodes_StaleRaad` with `WaitForLeader` 2014-05-07 13:53:29 +02:00
William Tisäter 028bc7e1b4 Proof of concept using `WaitForResult` in tests 2014-05-07 02:48:25 +02:00
Armon Dadgar 4a80e73df4 consul: Drop the Raft logs size warning from 8MB to 1MB 2014-05-06 14:10:08 -07:00
Armon Dadgar 888ce89b91 consul: Fixing for upstream API changes 2014-05-01 18:11:36 -07:00
Armon Dadgar a325630d7a consul: Support listkeys without seperator 2014-04-30 23:44:27 -04:00
Armon Dadgar 18723c96be consul: Adding ListKeys endpoint 2014-04-30 23:44:27 -04:00
Armon Dadgar dcbb55b874 consul: Adding a key listing mechanism 2014-04-30 23:44:27 -04:00
Armon Dadgar 7098807583 consul: Rename Misc RPC to Internal 2014-04-30 23:43:59 -04:00
Armon Dadgar 9c954e81e7 consul: Testing the Misc endpoitns 2014-04-30 23:43:58 -04:00
Armon Dadgar 4761ad73b2 consul: Adding Misc RPC endpoint 2014-04-30 23:43:58 -04:00
Armon Dadgar 87eba3da8d consul: Adding methods to dump node info 2014-04-30 23:43:58 -04:00
Armon Dadgar b7e0881df5 consul: Hack around LMDB delete issue. Fixes #85. 2014-04-29 16:01:20 -07:00
Armon Dadgar 2c45bd6fe9 consul: Expose runtime stats for debugging 2014-04-29 10:55:42 -07:00
Armon Dadgar a5ab73e67d consul: Adding a warning for large raft entries 2014-04-28 22:25:09 -07:00
Armon Dadgar 2dd0d80274 consul: Increase DB size on 64bit systems. Fixes #81. 2014-04-28 17:07:59 -07:00
Armon Dadgar 02fa6e9d96 consul: Do not fire ServerUp on WAN node join 2014-04-23 12:20:54 -07:00
Armon Dadgar b4ae24db02 consul: Clear peer set on leave. Fixes #69 2014-04-23 11:39:45 -07:00
Armon Dadgar 018482dc4c Store check output in dedicated field. Fixes #59. 2014-04-21 16:20:22 -07:00
Armon Dadgar 3d9e6795eb consul: Adding strongly consistent read tests 2014-04-21 12:08:00 -07:00
Armon Dadgar 67263e2ca3 consul: Testing a stale read 2014-04-21 11:57:39 -07:00
Armon Dadgar e5e97274d4 consul: Adding consistent read enforcement 2014-04-21 11:49:21 -07:00
Armon Dadgar e706c988b8 consul: Merging BlockingQuery into QueryOptions 2014-04-21 11:31:15 -07:00
Armon Dadgar 180cc33030 consul: Use QueryMeta to simplify blockingRPC interface 2014-04-21 11:18:27 -07:00
Armon Dadgar d2b487edb6 consul: Move the Index into QueryMeta 2014-04-21 11:13:36 -07:00
Armon Dadgar beeeb86a12 consul: Moving QueryMeta handling into blockingRPC 2014-04-21 11:04:52 -07:00
Armon Dadgar a2acbe732e consul: Adding a method to enforce consistent read 2014-04-21 10:59:46 -07:00
Armon Dadgar 93abc19845 consul: Testing QueryMeta 2014-04-21 10:59:46 -07:00
Armon Dadgar afa6a1ae49 consul: Adding support for QueryMeta on all queries 2014-04-21 10:59:46 -07:00
Armon Dadgar fa90f1cd0d consul: Support a stale read query 2014-04-21 10:59:46 -07:00
Armon Dadgar a9d4e2357e consul: Switch to RPCInfo 2014-04-21 10:59:46 -07:00
Armon Dadgar cea8a4f9f2 consul: Adding RPCInfo to get common info 2014-04-21 10:59:46 -07:00
Armon Dadgar fbc526e8c1 consul: Adding additional query options and return meta data 2014-04-21 10:59:46 -07:00
Armon Dadgar efa972057e consul: Update to use raft-mdb package 2014-04-19 13:31:56 -07:00
Armon Dadgar 7f18a3ca22 consul: Fix a 64bit alignment issue for x86-32 2014-04-11 11:12:17 -07:00
Armon Dadgar 365fd58e6b consul: Adding client/server TLS tests 2014-04-07 15:07:00 -07:00
Armon Dadgar 462ed3cee0 consul: Refactor to pull out server config 2014-04-07 15:07:00 -07:00
Armon Dadgar 2c212516ee consul: Adding configuration tests 2014-04-07 15:07:00 -07:00
Armon Dadgar 165103d55e consul: Fix decoding of certificate 2014-04-07 15:07:00 -07:00
Armon Dadgar 39a55953af consul: Simplify TLS handling in RPC server 2014-04-07 15:07:00 -07:00
Armon Dadgar f94dfa4efc consul: Enforce TLS if VerifyIncoming is set 2014-04-07 15:06:59 -07:00
Armon Dadgar 7884439b7c consul: Ensure Raft also uses TLS connections 2014-04-07 15:06:59 -07:00
Armon Dadgar 1ab9a4ad53 consul: Enable incoming TLS connections to server 2014-04-07 15:06:59 -07:00
Armon Dadgar f68d3160d2 consul: Server initializes pool with TLS settings 2014-04-07 15:06:59 -07:00
Armon Dadgar 00ec592dd1 consul: Client initializes TLS settings 2014-04-07 15:06:59 -07:00
Armon Dadgar 7beac2a1bc consul: Connection pool supports TLS mode 2014-04-07 15:06:59 -07:00
Armon Dadgar c593632d3c consul: Adding basic TLS configuraiton 2014-04-07 15:06:59 -07:00
Armon Dadgar ebf98fcea0 consul: Export some telemetry on service queries 2014-04-04 14:55:44 -07:00
Armon Dadgar cef6859069 Merge pull request #26 from hashicorp/f-tags
Adding support for multiple tags
2014-04-03 15:51:31 -07:00
Armon Dadgar ed39e90e3a consul: Adding reconcilation to handle reaped Serf nodes. Fixes #15. 2014-04-03 15:51:09 -07:00
Armon Dadgar 7f399a0ecc consul: Adding test for multiple tags with lookup 2014-04-03 12:07:17 -07:00
Armon Dadgar 4a1faf435c consul: Updating all the tests 2014-04-03 12:03:10 -07:00
Armon Dadgar 13bff3a09b consul: Change state store to support multiple tags 2014-04-03 12:03:02 -07:00
Armon Dadgar 283c5d1be1 consul: Replace single tag with list of tags 2014-04-03 11:23:55 -07:00
Armon Dadgar 5ff482dec0 consul: FSM snapshot can avoid type assertion 2014-04-01 12:10:58 -07:00
Armon Dadgar 9473bbe7bf consul: Avoid loading all KV pairs during a snapshot 2014-04-01 11:55:25 -07:00
Armon Dadgar 8172526801 consul: Support a streaming transaction 2014-04-01 11:42:07 -07:00
Armon Dadgar 4ccb2d4a73 consul: More efficient restore of KVS entriesg 2014-04-01 11:29:55 -07:00
Armon Dadgar 512c6895e4 consul: Adding raft endpoint to force a snapshot 2014-03-31 20:09:16 -07:00
Armon Dadgar 8f2ef0d7d2 consul: Fixing blocking query if set table is at index 0 2014-03-31 20:00:46 -07:00
Armon Dadgar 94df059026 consul: Enable a recursive delete of all keys 2014-03-31 20:00:01 -07:00
Armon Dadgar 1b2dd17f93 consul: Test the remaining KVS endpoints 2014-03-31 16:18:44 -07:00
Armon Dadgar fc5110405c consul: Adding tests for endpoint method 2014-03-31 16:10:49 -07:00
Armon Dadgar 3e9dc6d8b6 consul: First pass at KVS endpoints for RPC 2014-03-31 16:00:23 -07:00
Armon Dadgar 47ad40a925 consul: Adding KVS RPC endpoint 2014-03-31 14:15:49 -07:00
Armon Dadgar 6ca5c7c49d consul: Testing FSM application of KVS commands 2014-03-31 14:13:03 -07:00
Armon Dadgar c31232fb70 consul: FSM support to snapshot/restore KVS values 2014-03-31 13:56:16 -07:00
Armon Dadgar f91e12fe30 consul: Adding FSM support for KVS operations 2014-03-31 13:41:43 -07:00
Armon Dadgar 9cfea72d2a consul: Snapshot KVS store support 2014-03-31 13:31:31 -07:00
Armon Dadgar 860cfd7497 consul: Support DeleteTree 2014-03-31 13:20:08 -07:00
Armon Dadgar dfb8c03659 consul: Adding support for KVSList 2014-03-31 13:12:35 -07:00
Armon Dadgar 59703cbfae consul: Adding support for virtual indexes 2014-03-31 13:06:29 -07:00
Armon Dadgar 8d7c5fc9cd consul: Implementing Check-And-Set 2014-03-31 12:37:11 -07:00
Armon Dadgar f87c47424c consul: Implement KVSDelete 2014-03-31 12:24:06 -07:00
Armon Dadgar 6744ee62be consul: Implement and test KV get and set 2014-03-31 12:13:57 -07:00
Armon Dadgar a6086e1750 consul: Adding KVSDeleteTree operation 2014-03-31 12:13:40 -07:00
Armon Dadgar a365b30792 consul: Adding kvs table to state store 2014-03-31 11:48:32 -07:00
Armon Dadgar 6e51251cc1 consul: Adding new directory structs for KVS 2014-03-31 11:47:10 -07:00
Armon Dadgar 2d937bc0a8 consul: Only close the cursor for read-only transactions (mdb) 2014-03-27 10:48:04 -07:00
Armon Dadgar 80439376cf consul: Should not clear the peer set 2014-03-25 14:57:00 -07:00
Armon Dadgar 966daed094 consul: Fixing issue with cursors not closing in MDB 2014-03-25 13:30:19 -07:00
Armon Dadgar ab5a3d3721 consul: Set maximum consul DB size to 128MB 2014-03-25 13:29:42 -07:00
Armon Dadgar 32e500e012 consul: Set maximum raft log size to 128MB 2014-03-25 13:29:15 -07:00
Armon Dadgar ad8e25917b consul: Handle reaping of serf members 2014-03-20 12:51:49 -07:00
Armon Dadgar 73b6ac322b consul: Increase default reap time to 3 days 2014-03-20 12:39:06 -07:00
Armon Dadgar 7d4e099566 consul: Ignore new Serf events 2014-03-12 12:46:14 -07:00
Armon Dadgar cd6842ff6b consul: Add tags for consul protocol versions 2014-03-09 15:46:03 -07:00
Armon Dadgar 2a8d998968 consul: Adding protocol version numbers 2014-03-09 15:18:36 -07:00
Armon Dadgar e914c0a70b consul: Fixing subtle delete issue 2014-03-05 19:32:09 -08:00
Armon Dadgar ad2d5752c9 consul: Peg Serf proto version to 3 2014-03-05 15:32:59 -08:00
Armon Dadgar 98fffdacb5 consul: Handle API changes in StateStore 2014-03-05 15:03:12 -08:00
Armon Dadgar 37a16979d7 consul: Log instead of panic. Change NodeServices to return nil. 2014-03-05 15:02:28 -08:00
Armon Dadgar ca5a9cac23 consul: Providing logOutput to StateStore 2014-03-05 14:34:29 -08:00
Armon Dadgar 1b1cb3be11 consul: Passthrough the Serf Stats() 2014-02-23 18:08:58 -08:00
Armon Dadgar 2362b397fa consul: Adding Stats() method to get various debugging information 2014-02-23 16:37:33 -08:00
Armon Dadgar 800975200a consul: Increase network timeout value 2014-02-22 11:13:59 -08:00
Armon Dadgar e54d8f6c07 consul: Reduce the number of raft snapshots we keep 2014-02-22 10:57:22 -08:00
Armon Dadgar 5e790b02a9 If not in bootstrap mode, clear the raft peerset 2014-02-21 15:21:27 -08:00
Armon Dadgar 5d8783148b consul: Only add ourself to the peerset if we are in bootstrap mode 2014-02-20 16:27:14 -08:00
Armon Dadgar 421c4d6933 consul: Do not replay events on serf join 2014-02-20 16:27:03 -08:00
Armon Dadgar 889297dc99 consul: Adding telemetry 2014-02-20 15:16:26 -08:00
Armon Dadgar 7123c6315b consul: Use serf event to announce new leader 2014-02-19 12:36:27 -08:00
Armon Dadgar 035f9f6a5a Add test file for structs package 2014-02-07 16:40:52 -08:00
Armon Dadgar c1637b4978 agent: Adding server up callback to make state sync faster 2014-02-07 12:11:34 -08:00
Armon Dadgar d7b3174804 consul: ConnPool multiplexes a single connection instead of using multiple 2014-02-05 16:19:05 -08:00
Armon Dadgar e0b1315171 consul: Make some ConnPool methods private 2014-02-05 15:30:19 -08:00
Armon Dadgar 15d2a6a51e consul: Allow receiving RPC connections 2014-02-05 15:29:52 -08:00
Armon Dadgar e72ad27850 TODO cleanups 2014-02-05 14:54:35 -08:00
Armon Dadgar 1996deaa18 consul: Fixing struct type 2014-02-05 14:27:24 -08:00
Armon Dadgar 18b4e51bb5 consul: ensure conn pool shutdown is fast 2014-02-05 14:20:18 -08:00
Armon Dadgar 4cee14f58a consul: Health endpoints support blocking queries 2014-02-05 13:30:18 -08:00
Armon Dadgar bd1a140476 consul: Adding a sanity check 2014-02-05 11:13:08 -08:00
Armon Dadgar 89bffaf467 consul: Support blocking queries for the Catalog 2014-02-05 11:10:10 -08:00
Armon Dadgar 1d1dd8f8d2 consul: Enable ListNodes and ListServices to be a blocking query 2014-02-05 11:00:43 -08:00
Armon Dadgar 697d9e7ed8 consul: Cleanup the FSM, running out of file handles 2014-02-05 11:00:10 -08:00
Armon Dadgar 630aa33cf4 consul: Adding indexed versions of return structs 2014-02-05 10:44:28 -08:00
Armon Dadgar ffa7173953 consul: blockingRPC is a helper method for queries that need to block 2014-02-05 10:38:29 -08:00
Armon Dadgar 985e3a0529 consul: State store can return the tables for a query, and watch for changes 2014-02-05 10:37:28 -08:00
Armon Dadgar f0205e1974 consul: Adding BlockingQuery to structs to wait for changes 2014-02-05 10:21:31 -08:00
Armon Dadgar e29b9ca50a consul: Add a guard against deadlock in MDB 2014-02-04 19:04:36 -08:00
Armon Dadgar 3897a23db2 consul: reduce the scope of various transactions 2014-02-04 19:01:32 -08:00
Armon Dadgar 7326a74e65 consul: Notify watchers of changes 2014-02-04 18:45:40 -08:00
Armon Dadgar 420417861a consul: Move notification group from MDBTable into the state store 2014-02-04 18:37:38 -08:00
Armon Dadgar 67a7d25e1c consul: updating state store to associate changes with raft index 2014-02-04 18:33:15 -08:00
Armon Dadgar 64ba7991f4 consul: Add a NotifyGroup to the MDBTable 2014-02-04 12:32:05 -08:00
Armon Dadgar 9c4d62edd9 consul: Adding a simple notification mechansim 2014-02-04 12:21:30 -08:00
Armon Dadgar 78db2f6475 consul: MDBTable can track a special 'last index' value 2014-02-04 11:11:31 -08:00
Armon Dadgar 231bbb1bd5 consul: Log state store errors 2014-02-03 15:21:56 -08:00
Armon Dadgar db4bf65e2e consul: client re-uses the last connection if error free 2014-02-03 11:53:04 -08:00
Armon Dadgar be04291fb2 consul: benchmark the ListNodes RPC method 2014-02-01 12:16:33 -08:00
Armon Dadgar e98595cddf consul: Adding some benchmarks to test state store 2014-02-01 12:00:56 -08:00
Armon Dadgar fe0efdfa75 consul: Update for serf 0.4 2014-01-30 13:13:29 -08:00
Armon Dadgar 0964285761 Adding LANMembers to the Consul.Interface 2014-01-21 11:52:01 -08:00
Armon Dadgar 28a9598c91 Preventing multiple nodes in bootstrap mode from adding each other as Raft peers 2014-01-20 13:56:29 -10:00
Armon Dadgar 01c73ee9ae change isConsulServer to parse flags 2014-01-20 13:39:07 -10:00
Armon Dadgar 4ee8bde861 Export the consul service id and name 2014-01-15 17:27:37 -10:00
Armon Dadgar 9d34893992 Export the serf check ID 2014-01-15 17:24:16 -10:00
Armon Dadgar 7831f34606 CheckServiceNodes will return node checks that are not service associated 2014-01-15 11:14:28 -10:00
Armon Dadgar 0cdd9071aa Do not remove ourself when we leave from Raft 2014-01-10 15:05:34 -08:00
Armon Dadgar ee37fbc6a2 Fixing testServerDC method 2014-01-10 12:58:04 -08:00
Armon Dadgar cf29019545 Simplify Raft peer adds using only reconciliation 2014-01-10 12:55:55 -08:00
Armon Dadgar 28c1e556d6 Check for error when sending RPC byte 2014-01-10 12:09:19 -08:00
Armon Dadgar 992db5d291 Refactor testServerDC 2014-01-10 11:07:29 -08:00
Armon Dadgar 4b33ff20d0 Cleanup log 2014-01-10 11:07:04 -08:00
Armon Dadgar 4c992a88c1 Log cleanup 2014-01-10 11:06:11 -08:00
Armon Dadgar 27320017b9 Improve idempotence check for consul service registration 2014-01-09 22:12:08 -08:00
Armon Dadgar 0507568a37 Verify that consul service is registered 2014-01-09 18:02:44 -08:00
Armon Dadgar 5c6596fa8a Fixing issue that would prevent consul server registration 2014-01-09 17:59:31 -08:00
Armon Dadgar 8c6f03ad07 Auto-register the consul service 2014-01-09 17:57:13 -08:00
Armon Dadgar 0f0f29eb31 Testing leader functions and reconciliation 2014-01-09 17:46:33 -08:00
Armon Dadgar 028829a36d Fixing some tests 2014-01-09 17:22:01 -08:00
Armon Dadgar c0029c6967 First pass at Serf reconciliation 2014-01-09 15:49:09 -08:00
Armon Dadgar 1f3934bcc0 Adding utility method to parse consul nodes 2014-01-09 15:45:14 -08:00
Armon Dadgar a0338f14cd Adding a ReconcileInterval config 2014-01-09 15:44:25 -08:00
Armon Dadgar 679dae613e Retain reference to RPC endpoints 2014-01-09 15:30:36 -08:00
Armon Dadgar d781e29d7c Cleanup 2014-01-09 11:33:23 -08:00
Armon Dadgar 2f8448c286 Adding Health endpoint to combine service nodes with health 2014-01-08 15:06:13 -08:00
Armon Dadgar 0de92171ee Adding CheckServiceNodes to get health info with service nodes 2014-01-08 14:58:53 -08:00
Armon Dadgar 7a6dacd63e Minor structs cleanup 2014-01-08 14:43:36 -08:00
Armon Dadgar 7b4f7ca6b6 Testing the health endpoints 2014-01-08 14:23:52 -08:00
Armon Dadgar fdf3f750ea First pass at health endpoints 2014-01-08 13:56:34 -08:00
Armon Dadgar 9f0e5b99a3 Adding stubs for Health endpoints 2014-01-08 13:52:09 -08:00
Armon Dadgar 65ad4d1c47 Adding FSM support for register/deregister health checks 2014-01-08 13:39:40 -08:00
Armon Dadgar 1f02461f8c Support getting node checks in the snapshot 2014-01-08 12:19:11 -08:00
Armon Dadgar 2b79c125f2 Implementing the health methods with tests 2014-01-08 12:15:01 -08:00
Armon Dadgar c6c0f34fe8 Skeleton methods for health info 2014-01-08 11:35:27 -08:00
Armon Dadgar 266c6736bf Adding HealthCheck and an associated table 2014-01-08 11:21:29 -08:00
Armon Dadgar c40c2a9c1f Adding test for last row id restore 2014-01-08 10:43:44 -08:00
Armon Dadgar 6d4c1b0365 Remove unused variable 2014-01-08 10:39:06 -08:00
Armon Dadgar 842bf62587 Delete node in a transaction 2014-01-08 10:37:16 -08:00
Armon Dadgar 4ebf710394 Update for new interfaces 2014-01-08 10:31:42 -08:00
Armon Dadgar 7e84a75563 Switch state store to MDBTables 2014-01-08 10:31:20 -08:00
Armon Dadgar f3788b0472 Adding ServiceName to ServiceNode to simplify 2014-01-08 10:29:29 -08:00
Armon Dadgar e3ddf8fa00 Support multi-table transactions with MDBTable 2014-01-08 10:27:37 -08:00
Armon Dadgar ee81a5744a Handle record updates 2014-01-07 21:35:44 -08:00
Armon Dadgar 226185ae2e Supporting table Delete 2014-01-07 18:55:34 -08:00
Armon Dadgar 13916b1375 Refactoring some code to share with Delete 2014-01-07 17:43:57 -08:00
Armon Dadgar 63319b84fe Support blank fields 2014-01-07 17:28:15 -08:00
Armon Dadgar 3896176b43 Working on abstracting MDB storage 2014-01-07 16:58:28 -08:00
Armon Dadgar 64d567c5be Adding some utility functions 2014-01-07 16:58:16 -08:00
Armon Dadgar e0ba0e8d52 Support non-unique service entries per node 2014-01-06 14:18:38 -08:00
Armon Dadgar 1e3adb54f3 Handle new Raft API 2014-01-03 17:15:09 -08:00
Armon Dadgar 8f6d868097 NodeServices struct now includes the node address 2014-01-02 17:29:39 -08:00
Armon Dadgar 052ce19ddd Fixing bug in state store 2013-12-31 18:31:17 -08:00
Armon Dadgar 61bad89e51 Fix indexing error when getting nodes 2013-12-31 18:16:09 -08:00
Armon Dadgar 4b2be68cc9 Allow for more cached connections 2013-12-31 17:43:56 -08:00
Armon Dadgar 0bbd4a71e7 Increase maximum MDB map size 2013-12-31 17:43:05 -08:00
Armon Dadgar c78cc37f0b Fixing some tests 2013-12-31 16:46:56 -08:00
Armon Dadgar 93dac80a86 Adding support for advertise address 2013-12-31 16:45:13 -08:00
Armon Dadgar 3f6f9cc33a Testing Raft advertise addr 2013-12-31 15:44:27 -08:00
Armon Dadgar c721f0c43a Methods to get a private IP 2013-12-31 15:44:17 -08:00
Armon Dadgar caf3a847e6 Guard against a bad advertise address 2013-12-31 14:00:25 -08:00
Armon Dadgar 53298520ad Adding RemoveFailedNode to consul.Client 2013-12-30 14:42:23 -08:00
Armon Dadgar b468519698 Changing the Join interfaces to match Serf 2013-12-30 12:20:17 -08:00
Armon Dadgar 2cc64f3291 Update for the new Serf config 2013-12-27 12:51:15 -08:00
Armon Dadgar 8cc761de17 Enable bootstrap mode for the tests 2013-12-24 16:53:30 -08:00
Armon Dadgar 9a2d3c144a Adding a bootstrap flag to allow single server raft 2013-12-24 16:48:07 -08:00
Armon Dadgar ee7469cac5 Guard MDB against 0 byte slices 2013-12-24 13:25:09 -08:00
Armon Dadgar eab0826170 Mark a few txn's as being readonly 2013-12-24 13:12:03 -08:00
Armon Dadgar 821d598df9 Defer the txn aborts 2013-12-24 13:05:43 -08:00
Armon Dadgar 1fb80fe38d Stronger API validation 2013-12-24 12:43:34 -08:00
Armon Dadgar 682a986ae8 Do not leave raft pool if we are the only member 2013-12-24 12:36:50 -08:00
Armon Dadgar 37aa0ae7a5 Better error logging 2013-12-24 12:22:42 -08:00
Armon Dadgar 39d9e3e78f More HTTP endpoints 2013-12-23 16:20:51 -08:00
Armon Dadgar 9e7feea454 Setup logging for Raft properly 2013-12-23 15:30:45 -08:00
Armon Dadgar c3866c9516 Ensure local server is always a raft peer 2013-12-23 11:50:58 -08:00
Armon Dadgar 21b43553bb Adding a Status.Peers endpoint to get peerset 2013-12-23 11:39:29 -08:00
Armon Dadgar aeccadd217 Filling in Agent basics 2013-12-20 15:33:13 -08:00
Armon Dadgar 862a838ff1 Adding time based reaping to ConnPool 2013-12-19 15:42:17 -08:00
Armon Dadgar e20189e2c4 Rename ConsulRPC to just consul.Interface 2013-12-19 15:20:10 -08:00
Armon Dadgar b0d6c443da Server also implements ConsulRPC interface 2013-12-19 15:18:25 -08:00
Armon Dadgar 9eb6ab8196 Minimize open connections maintained by client 2013-12-19 15:10:29 -08:00
Armon Dadgar 6a1b36bd46 Testing Client RPC to server 2013-12-19 15:08:55 -08:00
Armon Dadgar c644f1e57b Test joining a Serf pool 2013-12-19 14:56:38 -08:00
Armon Dadgar 8c853d31a7 Adding client tests 2013-12-19 14:54:32 -08:00
Armon Dadgar ebfda68bef Adding initial consul client 2013-12-19 14:48:14 -08:00
Armon Dadgar b4ecf22106 Refactor isConsulServer into util 2013-12-19 14:37:54 -08:00
Armon Dadgar ee7f13b205 Refactor ensurePath to util 2013-12-19 14:18:55 -08:00
Armon Dadgar ea925ba5e3 Move rpc structs into sub-package 2013-12-19 12:03:57 -08:00
Armon Dadgar d31e08291c Remove comment 2013-12-19 11:15:38 -08:00
Armon Dadgar 60fb194090 Make tests more reliable 2013-12-18 16:44:56 -08:00
Armon Dadgar 108df68d3d Guard against accessing slices that may have contents changed 2013-12-18 16:40:32 -08:00
Armon Dadgar 4abc881adc Switch Raft from SQLite to MDB 2013-12-18 16:23:17 -08:00
Armon Dadgar e827a2ca27 Adding snapshot support 2013-12-18 15:09:38 -08:00
Armon Dadgar 85251683cc Starting port of state store to MDB 2013-12-18 15:03:25 -08:00
Armon Dadgar 3b47cce733 FSM logs snapshot time 2013-12-17 11:13:19 -08:00
Armon Dadgar 589e58ab27 Adding support and tests for FSM snapshotting 2013-12-16 10:47:14 -08:00
Armon Dadgar 21478ce3a7 Adding ability to snapshot StateStore 2013-12-12 15:14:08 -08:00
Armon Dadgar b7beda2a63 Changing how state store is opened to allow shared connections 2013-12-12 14:41:13 -08:00
Armon Dadgar fd831ade43 Remove unused raft endpoints 2013-12-12 11:48:22 -08:00
Armon Dadgar d17b32d165 Adding NodeServices endpoing 2013-12-12 11:46:25 -08:00
Armon Dadgar 0b2cd77bbe Support querying for ServiceNodes 2013-12-12 11:37:19 -08:00
Armon Dadgar 5b40ba49bf Remove useless check since we are doing a DISTINCT query 2013-12-12 11:08:01 -08:00
Armon Dadgar 47cd33ae46 Adding ability to list services 2013-12-12 11:07:14 -08:00
Armon Dadgar 7915a23531 Adding node listing 2013-12-12 10:48:36 -08:00
Armon Dadgar 255be3559c Support datacenter listing 2013-12-12 10:35:50 -08:00
Armon Dadgar 4a2230bfc8 Remove unused methods 2013-12-11 16:43:29 -08:00
Armon Dadgar 03965f0721 Test leader forwarding 2013-12-11 16:42:19 -08:00
Armon Dadgar 15f045596b Adding support for cross-dc forwarding 2013-12-11 16:33:19 -08:00
Armon Dadgar d4476e3df6 Track remote consul servers 2013-12-11 16:24:34 -08:00
Armon Dadgar 7bc7d4cd4f Adding support for deregistration 2013-12-11 15:34:10 -08:00
Armon Dadgar 6b3578bc26 Testing Catalog.Register endpoint 2013-12-11 14:57:40 -08:00
Armon Dadgar 7dc6662a93 Adding FSM support for Register 2013-12-11 14:38:18 -08:00
Armon Dadgar 05d5eb08a8 Adding state store methods 2013-12-11 14:27:27 -08:00
Armon Dadgar 3b8888bdc8 consul: starting work on some RPC layers 2013-12-11 14:04:44 -08:00
Armon Dadgar eb428df842 Adding some state store methods with tests 2013-12-11 14:03:09 -08:00
Armon Dadgar d96636ced1 Stubs 2013-12-10 18:19:15 -08:00
Armon Dadgar 148607ac88 consul: working on fsm state 2013-12-10 17:00:48 -08:00
Armon Dadgar 637137b997 Adding Status.Leader endpoint 2013-12-10 15:16:41 -08:00
Armon Dadgar 808e23bbd4 consul: Adding method to force remove failed nodes 2013-12-10 14:42:29 -08:00
Armon Dadgar 29d0f901dc consul: Adding LANMembers and WANMembers 2013-12-10 13:17:54 -08:00
Armon Dadgar 0ade6bb750 consul: abandon join on shutdown or member fail 2013-12-09 16:25:24 -08:00
Armon Dadgar 207171f264 consul: Adding tons of shit, leave test 2013-12-09 16:05:15 -08:00
Armon Dadgar c4a4b9df34 consul: type safe event handlers 2013-12-09 15:29:44 -08:00
Armon Dadgar 15a1cf589b consul: status rpc endpoint 2013-12-09 15:29:20 -08:00
Armon Dadgar dbc9eeb8a7 consul: store the peerstore 2013-12-09 15:29:01 -08:00
Armon Dadgar 500927cbb1 consul: Leave does a RemovePeer RPC call 2013-12-09 15:01:42 -08:00
Armon Dadgar e699a14fe3 consul: helper to make RPC calls 2013-12-09 14:58:49 -08:00
Armon Dadgar ae30ace448 consul: ConnPool creates RPC client 2013-12-09 14:52:22 -08:00
Armon Dadgar 1a9a51c5c2 consul: Adding Raft rpc endpoint 2013-12-09 14:49:07 -08:00
Armon Dadgar a2eb514206 consul: gossip role includes rpc addr 2013-12-09 14:30:16 -08:00
Armon Dadgar ee4b1ce9dd consul: Write the byte to set the RPC mode 2013-12-09 14:29:20 -08:00
Armon Dadgar 8f2d9f9b0d consul: RaftLayer does not use ConnPool 2013-12-09 14:25:59 -08:00
Armon Dadgar fa76825247 consul: fixing test 2013-12-09 14:23:19 -08:00
Armon Dadgar f6f5e166ae consul: Remove the RaftBindAddr 2013-12-09 14:22:23 -08:00
Armon Dadgar 06306ad66f consul: close raft transport before layer 2013-12-09 14:20:56 -08:00
Armon Dadgar e780255dd4 consul: sharing the RPC layer between Consul/Raft 2013-12-09 13:13:40 -08:00
Armon Dadgar 47b2b357a4 consul: Adding leave function 2013-12-09 12:10:27 -08:00
Armon Dadgar 2ad674677c consul: adding connection pool 2013-12-09 12:09:57 -08:00
Armon Dadgar 9e8cdb6c7a consul: Add+test JoinLAN/JoinWAN 2013-12-06 17:18:09 -08:00
Armon Dadgar 41b3ca7da9 consul: refactor into more files 2013-12-06 16:54:33 -08:00
Armon Dadgar 310eb2f506 consul: Basic RPC framework 2013-12-06 16:35:13 -08:00
Armon Dadgar b8bc9d2027 consul: Rename to LAN/WAN instead of Local/Remote 2013-12-06 16:05:26 -08:00
Armon Dadgar 7fbd8ba370 consul: adding basic skeleton 2013-12-06 15:43:07 -08:00