Commit Graph

1288 Commits

Author SHA1 Message Date
Armon Dadgar bf25792e2f consul: Fix client server reaping 2014-05-28 16:32:24 -07:00
Armon Dadgar 589105eee4 consul: Store the protocol version for a server 2014-05-28 16:32:24 -07:00
Armon Dadgar c8831db91c consul: Adding Addr to serverParts 2014-05-28 16:32:24 -07:00
Armon Dadgar a79c3d2103 consul: Pool client connections, support for yamux connections 2014-05-28 16:32:24 -07:00
Armon Dadgar 8e636ef340 consul: Support for incoming Yamux connections 2014-05-28 16:32:24 -07:00
Armon Dadgar c98736b8ae 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 a028c3ae93 Add `/v1/agent/self` and return local agent config 2014-05-27 01:15:33 +02:00
William Tisäter 95e7752721 Wait for joining member in `TestClient_JoinLAN` 2014-05-27 00:55:20 +02:00
William Tisäter 405dfd99c1 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 0ddc86bbcc Revert "Remove `WaitForResult` from two failing tests"
This reverts commit f0842409cde194ce2102ff2baf3de821cb6ac9d5.
2014-05-26 23:49:23 +02:00
William Tisäter 93e89b8148 Remove TODO comments 2014-05-26 23:44:46 +02:00
William Tisäter f990e9fcb2 Remove `WaitForResult` from two failing tests 2014-05-26 23:44:37 +02:00
Nelson Elhage 7d4824ade7 Allow multiple PEM-encoded certificates in the ca_file.
fixes #167
2014-05-26 10:58:57 -07:00
Armon Dadgar 5c90e9b43e consul: Suppress error if connection is closed 2014-05-23 16:28:55 -07:00
Armon Dadgar d42474a7cb Support wildcard for check lookup. Fixes #152 2014-05-21 12:45:12 -07:00
Armon Dadgar 5fa10c912e Support rejoin after leave. Fixes #110. 2014-05-21 12:32:24 -07:00
Armon Dadgar 3b0d3b76c2 consul: Adding support for lock-delay in sessions 2014-05-20 16:25:29 -07:00
Armon Dadgar 9470f9a5a2 gofmt 2014-05-20 16:25:29 -07:00
Armon Dadgar d5b1330227 agent: First pass at session endpoints 2014-05-20 16:25:29 -07:00
Armon Dadgar e0c791f305 consul: Adding tests for session endpoints 2014-05-20 16:25:29 -07:00
Armon Dadgar e58e9bceb0 consul: First pass at Session RPC endpoints 2014-05-20 16:25:29 -07:00
Armon Dadgar 2fbcc07e1b consul: Testing FSM snapshot of sessions 2014-05-20 16:25:29 -07:00
Armon Dadgar 55ce278223 consul: Testing KVS Lock/Unlock in FSM 2014-05-20 16:25:29 -07:00
Armon Dadgar bfd008a6da consul: FSM tests for session 2014-05-20 16:25:28 -07:00
Armon Dadgar 6ed9c4bdb6 consul: Adding support for sessions to FSM 2014-05-20 16:25:28 -07:00
Armon Dadgar 8baa83a668 consul: Adding SessionList to snapshot 2014-05-20 16:25:28 -07:00
Armon Dadgar 994a149965 consul: Session invalidation releases locks 2014-05-20 16:25:28 -07:00
Armon Dadgar cd7e3967be consul: Support KVSLock and KVSUnlock 2014-05-20 16:25:28 -07:00
Armon Dadgar 35996042ae consul: Switch notify to using txn defer 2014-05-20 16:25:28 -07:00
Armon Dadgar 679e4e6e70 consul: Adding session invalidation 2014-05-20 16:25:28 -07:00
Armon Dadgar 2e3d3ec2f8 consul: Adding Defer to MDBTxn 2014-05-20 16:25:28 -07:00
Armon Dadgar a1b59bcaf9 consul: Adding session tests 2014-05-20 16:25:28 -07:00
Armon Dadgar f7edd7763b consul: Adding SessionDestroy 2014-05-20 16:25:28 -07:00
Armon Dadgar 0491e58fb9 consul: Adding session lookup methods 2014-05-20 16:25:27 -07:00
Armon Dadgar 7c38c1ca85 consul: Adding SessionCreate and SessionRestore 2014-05-20 16:25:27 -07:00
Armon Dadgar 00477dca21 consul: Adding util method to generate a UUID 2014-05-20 16:25:27 -07:00
Armon Dadgar a5c60eb556 consul: Adding new session tables 2014-05-20 16:25:27 -07:00
Armon Dadgar 59c0d35184 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 6c0479f082 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 f8898dce6e consul: Disable conflict resolution. See #97. 2014-05-16 14:11:53 -07:00
Armon Dadgar 2d8b1f5b6f consul: Avoid name conflict on WAN ring. Fixes #158. 2014-05-16 14:07:53 -07:00
Mitchell Hashimoto ec547d5b99 command/agent: find proper private IP on Windows
/cc @armon
2014-05-15 11:27:30 -07:00
Armon Dadgar c54f53eaf7 consul: Remove RPC client tracking. Fixes #149. 2014-05-14 17:34:24 -07:00
Andrew M Bursavich 1dd3dfe801 use empty slice instead of nil slice when no tags exist for service 2014-05-13 00:18:36 -07:00
Armon Dadgar 813ebf0b0c consul: Adding a Raft command enqueue limit 2014-05-09 19:18:06 -07:00
William Tisäter 2f23eb42ea Add TODOs for failing tests 2014-05-09 11:38:29 +02:00
William Tisäter e749e2ebc9 Wait wrap tests in `TestServer_JoinLAN` 2014-05-09 03:41:47 +02:00
William Tisäter 31c962f2a9 Sleep since no obvious way to wait for shutdown 2014-05-09 03:24:13 +02:00
William Tisäter 16bfc8fd1d Fix race condition in `TestLeader_RegisterMember` 2014-05-09 03:05:38 +02:00
William Tisäter a211e1164c Fix race condition in `TestCatalogListNodes` 2014-05-09 03:00:56 +02:00
William Tisäter 30f8573c78 Change blocking call sleep time 2014-05-09 02:36:25 +02:00
William Tisäter cb54c4cb49 Remove all sleeps from `client_test.go` 2014-05-09 02:29:51 +02:00
William Tisäter 9b6b75f77c Fix race condition in `TestLeader_FailedMember` 2014-05-09 02:14:39 +02:00
William Tisäter d6f3dc510c Remove all sleeps from `internal_endpoint_test.go` 2014-05-09 02:11:40 +02:00
William Tisäter e27f89fec1 Remove all sleeps from `kvs_endpoint_test.go` 2014-05-09 02:09:53 +02:00
William Tisäter 44d3985ea8 Remove all sleeps from `leader_test.go` 2014-05-09 02:04:52 +02:00
William Tisäter b108af2dd3 Remove all sleeps from `server_test.go` 2014-05-09 01:38:58 +02:00
William Tisäter 5a56d8a2c6 Remove all sleeps from `status_endpoint_test.go` 2014-05-09 01:23:54 +02:00
William Tisäter d0b38ad641 Fix imports in `health_endpoint_test.go` 2014-05-09 01:21:13 +02:00
William Tisäter 89c018b681 Remove all sleeps from `catalog_endpoint_test.go` 2014-05-09 01:18:35 +02:00
William Tisäter c391c5bfcb Remove all sleeps from `health_endpoint_test.go` 2014-05-09 01:18:08 +02:00
William Tisäter 1ee709ba38 Require datacenter argument for `WaitForLeader` 2014-05-09 01:17:35 +02:00
William Tisäter 463f85c3c7 Move argument structs back in original position 2014-05-07 23:51:15 +02:00
William Tisäter c624161827 Move `WaitForLeader` calls to top of test 2014-05-07 23:47:16 +02:00
William Tisäter bdbe97545a Drop client arguments from `WaitForLeader` 2014-05-07 23:41:14 +02:00
William Tisäter 2019f454d0 Fix `TestCatalogListNodes_StaleRaad` with `WaitForLeader` 2014-05-07 13:53:29 +02:00
William Tisäter 81b572cb31 Proof of concept using `WaitForResult` in tests 2014-05-07 02:48:25 +02:00
Armon Dadgar 144a531237 consul: Drop the Raft logs size warning from 8MB to 1MB 2014-05-06 14:10:08 -07:00
Armon Dadgar 5c34e01d17 consul: Fixing for upstream API changes 2014-05-01 18:11:36 -07:00
Armon Dadgar 8b487ce103 consul: Support listkeys without seperator 2014-04-30 23:44:27 -04:00
Armon Dadgar a649ea1cbc consul: Adding ListKeys endpoint 2014-04-30 23:44:27 -04:00
Armon Dadgar a631821f6c consul: Adding a key listing mechanism 2014-04-30 23:44:27 -04:00
Armon Dadgar d045335ca0 consul: Rename Misc RPC to Internal 2014-04-30 23:43:59 -04:00
Armon Dadgar 6720349697 consul: Testing the Misc endpoitns 2014-04-30 23:43:58 -04:00
Armon Dadgar 702fe3afda consul: Adding Misc RPC endpoint 2014-04-30 23:43:58 -04:00
Armon Dadgar 75f9a126ae consul: Adding methods to dump node info 2014-04-30 23:43:58 -04:00
Armon Dadgar b54e1696f2 consul: Hack around LMDB delete issue. Fixes #85. 2014-04-29 16:01:20 -07:00
Armon Dadgar ece6849cac consul: Expose runtime stats for debugging 2014-04-29 10:55:42 -07:00
Armon Dadgar de507c0317 consul: Adding a warning for large raft entries 2014-04-28 22:25:09 -07:00
Armon Dadgar c1ae3d78ef consul: Increase DB size on 64bit systems. Fixes #81. 2014-04-28 17:07:59 -07:00
Armon Dadgar 08cba55ab3 consul: Do not fire ServerUp on WAN node join 2014-04-23 12:20:54 -07:00
Armon Dadgar d581af7692 consul: Clear peer set on leave. Fixes #69 2014-04-23 11:39:45 -07:00
Armon Dadgar 2845d24cfa Store check output in dedicated field. Fixes #59. 2014-04-21 16:20:22 -07:00
Armon Dadgar 28bd111098 consul: Adding strongly consistent read tests 2014-04-21 12:08:00 -07:00
Armon Dadgar 37f38fca15 consul: Testing a stale read 2014-04-21 11:57:39 -07:00
Armon Dadgar 7a3c3e718e consul: Adding consistent read enforcement 2014-04-21 11:49:21 -07:00
Armon Dadgar 710a823379 consul: Merging BlockingQuery into QueryOptions 2014-04-21 11:31:15 -07:00
Armon Dadgar 55b5fd4e6a consul: Use QueryMeta to simplify blockingRPC interface 2014-04-21 11:18:27 -07:00
Armon Dadgar 959ffb5758 consul: Move the Index into QueryMeta 2014-04-21 11:13:36 -07:00
Armon Dadgar 5b91b6f06e consul: Moving QueryMeta handling into blockingRPC 2014-04-21 11:04:52 -07:00
Armon Dadgar f7bcffe627 consul: Adding a method to enforce consistent read 2014-04-21 10:59:46 -07:00
Armon Dadgar dbdfcbc717 consul: Testing QueryMeta 2014-04-21 10:59:46 -07:00
Armon Dadgar 9e0e5259f9 consul: Adding support for QueryMeta on all queries 2014-04-21 10:59:46 -07:00
Armon Dadgar da9c89e9ba consul: Support a stale read query 2014-04-21 10:59:46 -07:00
Armon Dadgar 4c7d9a01b3 consul: Switch to RPCInfo 2014-04-21 10:59:46 -07:00
Armon Dadgar 85fd3158c3 consul: Adding RPCInfo to get common info 2014-04-21 10:59:46 -07:00
Armon Dadgar 6ea9ec310c consul: Adding additional query options and return meta data 2014-04-21 10:59:46 -07:00
Armon Dadgar 25e4e526ae consul: Update to use raft-mdb package 2014-04-19 13:31:56 -07:00
Armon Dadgar 0abda467e7 consul: Fix a 64bit alignment issue for x86-32 2014-04-11 11:12:17 -07:00
Armon Dadgar bd0cc256b7 consul: Adding client/server TLS tests 2014-04-07 15:07:00 -07:00
Armon Dadgar a851ebcb23 consul: Refactor to pull out server config 2014-04-07 15:07:00 -07:00
Armon Dadgar f91fe6c407 consul: Adding configuration tests 2014-04-07 15:07:00 -07:00
Armon Dadgar c77666669b consul: Fix decoding of certificate 2014-04-07 15:07:00 -07:00
Armon Dadgar 0bd535f60d consul: Simplify TLS handling in RPC server 2014-04-07 15:07:00 -07:00
Armon Dadgar 8160ea85ed consul: Enforce TLS if VerifyIncoming is set 2014-04-07 15:06:59 -07:00
Armon Dadgar 37ad00d66d consul: Ensure Raft also uses TLS connections 2014-04-07 15:06:59 -07:00
Armon Dadgar cb100af7b8 consul: Enable incoming TLS connections to server 2014-04-07 15:06:59 -07:00
Armon Dadgar f3a3492edc consul: Server initializes pool with TLS settings 2014-04-07 15:06:59 -07:00
Armon Dadgar 91417d4cf3 consul: Client initializes TLS settings 2014-04-07 15:06:59 -07:00
Armon Dadgar 5b18b000f2 consul: Connection pool supports TLS mode 2014-04-07 15:06:59 -07:00
Armon Dadgar 80de0f8789 consul: Adding basic TLS configuraiton 2014-04-07 15:06:59 -07:00
Armon Dadgar b10df9ea60 consul: Export some telemetry on service queries 2014-04-04 14:55:44 -07:00
Armon Dadgar 08d29f120f Merge pull request #26 from hashicorp/f-tags
Adding support for multiple tags
2014-04-03 15:51:31 -07:00
Armon Dadgar 63ce30acd4 consul: Adding reconcilation to handle reaped Serf nodes. Fixes #15. 2014-04-03 15:51:09 -07:00
Armon Dadgar c919928d8d consul: Adding test for multiple tags with lookup 2014-04-03 12:07:17 -07:00
Armon Dadgar 1c3e574c71 consul: Updating all the tests 2014-04-03 12:03:10 -07:00
Armon Dadgar b9c2b178f0 consul: Change state store to support multiple tags 2014-04-03 12:03:02 -07:00
Armon Dadgar fa8fb4153e consul: Replace single tag with list of tags 2014-04-03 11:23:55 -07:00
Armon Dadgar 13c370da30 consul: FSM snapshot can avoid type assertion 2014-04-01 12:10:58 -07:00
Armon Dadgar a312d7e6ff consul: Avoid loading all KV pairs during a snapshot 2014-04-01 11:55:25 -07:00
Armon Dadgar 24da6713de consul: Support a streaming transaction 2014-04-01 11:42:07 -07:00
Armon Dadgar 20a9cbc6d1 consul: More efficient restore of KVS entriesg 2014-04-01 11:29:55 -07:00
Armon Dadgar 0313f62311 consul: Adding raft endpoint to force a snapshot 2014-03-31 20:09:16 -07:00
Armon Dadgar 243198e49b consul: Fixing blocking query if set table is at index 0 2014-03-31 20:00:46 -07:00
Armon Dadgar d1de666855 consul: Enable a recursive delete of all keys 2014-03-31 20:00:01 -07:00
Armon Dadgar 5def21491e consul: Test the remaining KVS endpoints 2014-03-31 16:18:44 -07:00
Armon Dadgar 97b64d82e7 consul: Adding tests for endpoint method 2014-03-31 16:10:49 -07:00
Armon Dadgar 2067783692 consul: First pass at KVS endpoints for RPC 2014-03-31 16:00:23 -07:00
Armon Dadgar a55ebaa353 consul: Adding KVS RPC endpoint 2014-03-31 14:15:49 -07:00
Armon Dadgar 8b5b6c3872 consul: Testing FSM application of KVS commands 2014-03-31 14:13:03 -07:00
Armon Dadgar b24118e1bc consul: FSM support to snapshot/restore KVS values 2014-03-31 13:56:16 -07:00
Armon Dadgar 4aa7c0c00c consul: Adding FSM support for KVS operations 2014-03-31 13:41:43 -07:00
Armon Dadgar 47807c5d19 consul: Snapshot KVS store support 2014-03-31 13:31:31 -07:00
Armon Dadgar aba2d997d3 consul: Support DeleteTree 2014-03-31 13:20:08 -07:00
Armon Dadgar 5ffe5a0dba consul: Adding support for KVSList 2014-03-31 13:12:35 -07:00
Armon Dadgar d0ff439f77 consul: Adding support for virtual indexes 2014-03-31 13:06:29 -07:00
Armon Dadgar 493bbd5991 consul: Implementing Check-And-Set 2014-03-31 12:37:11 -07:00
Armon Dadgar aae9429d9d consul: Implement KVSDelete 2014-03-31 12:24:06 -07:00
Armon Dadgar a009f89946 consul: Implement and test KV get and set 2014-03-31 12:13:57 -07:00
Armon Dadgar 48ffdc05f4 consul: Adding KVSDeleteTree operation 2014-03-31 12:13:40 -07:00
Armon Dadgar d804a08744 consul: Adding kvs table to state store 2014-03-31 11:48:32 -07:00
Armon Dadgar 218d5502f6 consul: Adding new directory structs for KVS 2014-03-31 11:47:10 -07:00
Armon Dadgar fab32fe515 consul: Only close the cursor for read-only transactions (mdb) 2014-03-27 10:48:04 -07:00
Armon Dadgar 3c911b3145 consul: Should not clear the peer set 2014-03-25 14:57:00 -07:00
Armon Dadgar 9210f71fb6 consul: Fixing issue with cursors not closing in MDB 2014-03-25 13:30:19 -07:00
Armon Dadgar 8f3ceca608 consul: Set maximum consul DB size to 128MB 2014-03-25 13:29:42 -07:00
Armon Dadgar 4b6dc60169 consul: Set maximum raft log size to 128MB 2014-03-25 13:29:15 -07:00
Armon Dadgar 277c31d813 consul: Handle reaping of serf members 2014-03-20 12:51:49 -07:00
Armon Dadgar fad79e1f8e consul: Increase default reap time to 3 days 2014-03-20 12:39:06 -07:00
Armon Dadgar a421782901 consul: Ignore new Serf events 2014-03-12 12:46:14 -07:00
Armon Dadgar 18c3bbcb21 consul: Add tags for consul protocol versions 2014-03-09 15:46:03 -07:00
Armon Dadgar 6fba03db8f consul: Adding protocol version numbers 2014-03-09 15:18:36 -07:00
Armon Dadgar ccd9d0b001 consul: Fixing subtle delete issue 2014-03-05 19:32:09 -08:00
Armon Dadgar eb9f2a50bd consul: Peg Serf proto version to 3 2014-03-05 15:32:59 -08:00
Armon Dadgar 4833c7995e consul: Handle API changes in StateStore 2014-03-05 15:03:12 -08:00
Armon Dadgar b73a381e6d consul: Log instead of panic. Change NodeServices to return nil. 2014-03-05 15:02:28 -08:00
Armon Dadgar 8948a5218e consul: Providing logOutput to StateStore 2014-03-05 14:34:29 -08:00
Armon Dadgar ba2df6cb9c consul: Passthrough the Serf Stats() 2014-02-23 18:08:58 -08:00
Armon Dadgar 11369ca9ad consul: Adding Stats() method to get various debugging information 2014-02-23 16:37:33 -08:00
Armon Dadgar f65ba3c365 consul: Increase network timeout value 2014-02-22 11:13:59 -08:00
Armon Dadgar 974d227b94 consul: Reduce the number of raft snapshots we keep 2014-02-22 10:57:22 -08:00
Armon Dadgar 6c597008f4 If not in bootstrap mode, clear the raft peerset 2014-02-21 15:21:27 -08:00
Armon Dadgar 6142460b29 consul: Only add ourself to the peerset if we are in bootstrap mode 2014-02-20 16:27:14 -08:00
Armon Dadgar b31a0510eb consul: Do not replay events on serf join 2014-02-20 16:27:03 -08:00
Armon Dadgar 7294305df9 consul: Adding telemetry 2014-02-20 15:16:26 -08:00
Armon Dadgar f9da9fe1b5 consul: Use serf event to announce new leader 2014-02-19 12:36:27 -08:00
Armon Dadgar a2b3374569 Add test file for structs package 2014-02-07 16:40:52 -08:00
Armon Dadgar 7534346103 agent: Adding server up callback to make state sync faster 2014-02-07 12:11:34 -08:00
Armon Dadgar ba765b193f consul: ConnPool multiplexes a single connection instead of using multiple 2014-02-05 16:19:05 -08:00
Armon Dadgar e9c0493c9e consul: Make some ConnPool methods private 2014-02-05 15:30:19 -08:00
Armon Dadgar 4459aa9517 consul: Allow receiving RPC connections 2014-02-05 15:29:52 -08:00
Armon Dadgar 5cc0c73f89 TODO cleanups 2014-02-05 14:54:35 -08:00
Armon Dadgar f6ea0ba7f8 consul: Fixing struct type 2014-02-05 14:27:24 -08:00
Armon Dadgar 1b84705cb3 consul: ensure conn pool shutdown is fast 2014-02-05 14:20:18 -08:00
Armon Dadgar 944cbc7291 consul: Health endpoints support blocking queries 2014-02-05 13:30:18 -08:00
Armon Dadgar a58ee71739 consul: Adding a sanity check 2014-02-05 11:13:08 -08:00
Armon Dadgar f0134e42c6 consul: Support blocking queries for the Catalog 2014-02-05 11:10:10 -08:00
Armon Dadgar b0707df2ab consul: Enable ListNodes and ListServices to be a blocking query 2014-02-05 11:00:43 -08:00
Armon Dadgar 8b1c78dc00 consul: Cleanup the FSM, running out of file handles 2014-02-05 11:00:10 -08:00
Armon Dadgar ed5ff78504 consul: Adding indexed versions of return structs 2014-02-05 10:44:28 -08:00
Armon Dadgar 5c60d0a1bc consul: blockingRPC is a helper method for queries that need to block 2014-02-05 10:38:29 -08:00
Armon Dadgar 428c74cc35 consul: State store can return the tables for a query, and watch for changes 2014-02-05 10:37:28 -08:00
Armon Dadgar 626a3b5bf6 consul: Adding BlockingQuery to structs to wait for changes 2014-02-05 10:21:31 -08:00
Armon Dadgar ab0831e268 consul: Add a guard against deadlock in MDB 2014-02-04 19:04:36 -08:00
Armon Dadgar 59cd74dbb0 consul: reduce the scope of various transactions 2014-02-04 19:01:32 -08:00
Armon Dadgar 6188cd4ccd consul: Notify watchers of changes 2014-02-04 18:45:40 -08:00
Armon Dadgar 10707da7fc consul: Move notification group from MDBTable into the state store 2014-02-04 18:37:38 -08:00
Armon Dadgar 369193fbd6 consul: updating state store to associate changes with raft index 2014-02-04 18:33:15 -08:00
Armon Dadgar a8c366e9df consul: Add a NotifyGroup to the MDBTable 2014-02-04 12:32:05 -08:00
Armon Dadgar e1c7632cc3 consul: Adding a simple notification mechansim 2014-02-04 12:21:30 -08:00
Armon Dadgar 7d643a9dab consul: MDBTable can track a special 'last index' value 2014-02-04 11:11:31 -08:00
Armon Dadgar 255e224ac8 consul: Log state store errors 2014-02-03 15:21:56 -08:00
Armon Dadgar 936152092d consul: client re-uses the last connection if error free 2014-02-03 11:53:04 -08:00
Armon Dadgar 9b80ab9a61 consul: benchmark the ListNodes RPC method 2014-02-01 12:16:33 -08:00
Armon Dadgar 5c11f1fb79 consul: Adding some benchmarks to test state store 2014-02-01 12:00:56 -08:00
Armon Dadgar 1ecdeae1b6 consul: Update for serf 0.4 2014-01-30 13:13:29 -08:00
Armon Dadgar 9ea32b102f Adding LANMembers to the Consul.Interface 2014-01-21 11:52:01 -08:00
Armon Dadgar 334c2137ef Preventing multiple nodes in bootstrap mode from adding each other as Raft peers 2014-01-20 13:56:29 -10:00
Armon Dadgar 3e6787511e change isConsulServer to parse flags 2014-01-20 13:39:07 -10:00
Armon Dadgar ed8cb1bc2b Export the consul service id and name 2014-01-15 17:27:37 -10:00
Armon Dadgar ea41b2bb26 Export the serf check ID 2014-01-15 17:24:16 -10:00
Armon Dadgar e4c6ad9807 CheckServiceNodes will return node checks that are not service associated 2014-01-15 11:14:28 -10:00
Armon Dadgar 80d9899aec Do not remove ourself when we leave from Raft 2014-01-10 15:05:34 -08:00
Armon Dadgar df1eea834a Fixing testServerDC method 2014-01-10 12:58:04 -08:00
Armon Dadgar 2030b2288d Simplify Raft peer adds using only reconciliation 2014-01-10 12:55:55 -08:00
Armon Dadgar 786755ebcd Check for error when sending RPC byte 2014-01-10 12:09:19 -08:00
Armon Dadgar d741a999f5 Refactor testServerDC 2014-01-10 11:07:29 -08:00
Armon Dadgar 6b45c2c5a4 Cleanup log 2014-01-10 11:07:04 -08:00
Armon Dadgar c5e2004be9 Log cleanup 2014-01-10 11:06:11 -08:00
Armon Dadgar c2ef218c30 Improve idempotence check for consul service registration 2014-01-09 22:12:08 -08:00
Armon Dadgar 27e558ee77 Verify that consul service is registered 2014-01-09 18:02:44 -08:00
Armon Dadgar 79717c95bf Fixing issue that would prevent consul server registration 2014-01-09 17:59:31 -08:00
Armon Dadgar 26134960b1 Auto-register the consul service 2014-01-09 17:57:13 -08:00
Armon Dadgar 688a0d5bf1 Testing leader functions and reconciliation 2014-01-09 17:46:33 -08:00
Armon Dadgar 6992e8bf61 Fixing some tests 2014-01-09 17:22:01 -08:00
Armon Dadgar 9d96ce1107 First pass at Serf reconciliation 2014-01-09 15:49:09 -08:00
Armon Dadgar 3cb3085175 Adding utility method to parse consul nodes 2014-01-09 15:45:14 -08:00
Armon Dadgar e1692fb0a0 Adding a ReconcileInterval config 2014-01-09 15:44:25 -08:00
Armon Dadgar a82a606221 Retain reference to RPC endpoints 2014-01-09 15:30:36 -08:00
Armon Dadgar 5bb4a5306b Cleanup 2014-01-09 11:33:23 -08:00
Armon Dadgar f410802055 Adding Health endpoint to combine service nodes with health 2014-01-08 15:06:13 -08:00
Armon Dadgar 0b59adce3f Adding CheckServiceNodes to get health info with service nodes 2014-01-08 14:58:53 -08:00
Armon Dadgar 490abc75a6 Minor structs cleanup 2014-01-08 14:43:36 -08:00
Armon Dadgar 000dbedc06 Testing the health endpoints 2014-01-08 14:23:52 -08:00
Armon Dadgar 918b83bf4e First pass at health endpoints 2014-01-08 13:56:34 -08:00
Armon Dadgar dff6b6e3c5 Adding stubs for Health endpoints 2014-01-08 13:52:09 -08:00
Armon Dadgar ad346fecdf Adding FSM support for register/deregister health checks 2014-01-08 13:39:40 -08:00
Armon Dadgar 7c8993ef3f Support getting node checks in the snapshot 2014-01-08 12:19:11 -08:00
Armon Dadgar 023974becb Implementing the health methods with tests 2014-01-08 12:15:01 -08:00
Armon Dadgar 30618ca359 Skeleton methods for health info 2014-01-08 11:35:27 -08:00
Armon Dadgar d6f8b6e48b Adding HealthCheck and an associated table 2014-01-08 11:21:29 -08:00
Armon Dadgar 48fecaf410 Adding test for last row id restore 2014-01-08 10:43:44 -08:00
Armon Dadgar c3c507f381 Remove unused variable 2014-01-08 10:39:06 -08:00
Armon Dadgar 97b9ff64e0 Delete node in a transaction 2014-01-08 10:37:16 -08:00
Armon Dadgar a84fdd51e1 Update for new interfaces 2014-01-08 10:31:42 -08:00
Armon Dadgar 0ca9b085a2 Switch state store to MDBTables 2014-01-08 10:31:20 -08:00
Armon Dadgar f666211ca2 Adding ServiceName to ServiceNode to simplify 2014-01-08 10:29:29 -08:00
Armon Dadgar a5a8eeee93 Support multi-table transactions with MDBTable 2014-01-08 10:27:37 -08:00
Armon Dadgar 49bc2c4075 Handle record updates 2014-01-07 21:35:44 -08:00
Armon Dadgar ed87aae1cf Supporting table Delete 2014-01-07 18:55:34 -08:00
Armon Dadgar f55090314a Refactoring some code to share with Delete 2014-01-07 17:43:57 -08:00
Armon Dadgar e8846486de Support blank fields 2014-01-07 17:28:15 -08:00
Armon Dadgar 88cebcc595 Working on abstracting MDB storage 2014-01-07 16:58:28 -08:00
Armon Dadgar 4bca485178 Adding some utility functions 2014-01-07 16:58:16 -08:00
Armon Dadgar 870074056f Support non-unique service entries per node 2014-01-06 14:18:38 -08:00
Armon Dadgar 2edd92a73b Handle new Raft API 2014-01-03 17:15:09 -08:00
Armon Dadgar ca43075041 NodeServices struct now includes the node address 2014-01-02 17:29:39 -08:00
Armon Dadgar 76baf19c9a Fixing bug in state store 2013-12-31 18:31:17 -08:00
Armon Dadgar aefe4cc679 Fix indexing error when getting nodes 2013-12-31 18:16:09 -08:00
Armon Dadgar 3c3da212d7 Allow for more cached connections 2013-12-31 17:43:56 -08:00
Armon Dadgar 4cb3d08aba Increase maximum MDB map size 2013-12-31 17:43:05 -08:00
Armon Dadgar 0588a9cb3f Fixing some tests 2013-12-31 16:46:56 -08:00
Armon Dadgar ce79f27364 Adding support for advertise address 2013-12-31 16:45:13 -08:00
Armon Dadgar 7f2feeb7eb Testing Raft advertise addr 2013-12-31 15:44:27 -08:00
Armon Dadgar f7eb948ae1 Methods to get a private IP 2013-12-31 15:44:17 -08:00
Armon Dadgar a88bef821a Guard against a bad advertise address 2013-12-31 14:00:25 -08:00
Armon Dadgar ebdf8d2114 Adding RemoveFailedNode to consul.Client 2013-12-30 14:42:23 -08:00
Armon Dadgar 8fee0cd50a Changing the Join interfaces to match Serf 2013-12-30 12:20:17 -08:00
Armon Dadgar 3c00ba3864 Update for the new Serf config 2013-12-27 12:51:15 -08:00
Armon Dadgar 3d908d9edf Enable bootstrap mode for the tests 2013-12-24 16:53:30 -08:00
Armon Dadgar 69ed0ec184 Adding a bootstrap flag to allow single server raft 2013-12-24 16:48:07 -08:00
Armon Dadgar fd9a44ba09 Guard MDB against 0 byte slices 2013-12-24 13:25:09 -08:00
Armon Dadgar 17ee53088b Mark a few txn's as being readonly 2013-12-24 13:12:03 -08:00
Armon Dadgar 5df07d9c60 Defer the txn aborts 2013-12-24 13:05:43 -08:00
Armon Dadgar 140fb21472 Stronger API validation 2013-12-24 12:43:34 -08:00
Armon Dadgar 088def3935 Do not leave raft pool if we are the only member 2013-12-24 12:36:50 -08:00
Armon Dadgar ac15ca1139 Better error logging 2013-12-24 12:22:42 -08:00
Armon Dadgar 851c4c8ed1 More HTTP endpoints 2013-12-23 16:20:51 -08:00
Armon Dadgar 995a60ea0b Setup logging for Raft properly 2013-12-23 15:30:45 -08:00
Armon Dadgar b03d1b55b3 Ensure local server is always a raft peer 2013-12-23 11:50:58 -08:00
Armon Dadgar 3fe3f8815d Adding a Status.Peers endpoint to get peerset 2013-12-23 11:39:29 -08:00
Armon Dadgar 0e4b5720d9 Filling in Agent basics 2013-12-20 15:33:13 -08:00
Armon Dadgar 32c822db1b Adding time based reaping to ConnPool 2013-12-19 15:42:17 -08:00
Armon Dadgar 5f0bc8c91d Rename ConsulRPC to just consul.Interface 2013-12-19 15:20:10 -08:00
Armon Dadgar 90f8f075dc Server also implements ConsulRPC interface 2013-12-19 15:18:25 -08:00
Armon Dadgar 20b3d5ccbe Minimize open connections maintained by client 2013-12-19 15:10:29 -08:00
Armon Dadgar 5b0ca256ff Testing Client RPC to server 2013-12-19 15:08:55 -08:00
Armon Dadgar 8b35f6b22a Test joining a Serf pool 2013-12-19 14:56:38 -08:00
Armon Dadgar 9249bb65a5 Adding client tests 2013-12-19 14:54:32 -08:00
Armon Dadgar 1bae62fce6 Adding initial consul client 2013-12-19 14:48:14 -08:00
Armon Dadgar ed0af0ad42 Refactor isConsulServer into util 2013-12-19 14:37:54 -08:00
Armon Dadgar 644ce2fcf7 Refactor ensurePath to util 2013-12-19 14:18:55 -08:00
Armon Dadgar 88396b966a Move rpc structs into sub-package 2013-12-19 12:03:57 -08:00
Armon Dadgar 0ad0393484 Remove comment 2013-12-19 11:15:38 -08:00
Armon Dadgar 5fad6a7372 Make tests more reliable 2013-12-18 16:44:56 -08:00
Armon Dadgar 9c8af31036 Guard against accessing slices that may have contents changed 2013-12-18 16:40:32 -08:00
Armon Dadgar c5aada3298 Switch Raft from SQLite to MDB 2013-12-18 16:23:17 -08:00
Armon Dadgar c515682303 Adding snapshot support 2013-12-18 15:09:38 -08:00
Armon Dadgar 424491e9f6 Starting port of state store to MDB 2013-12-18 15:03:25 -08:00
Armon Dadgar ab970083dd FSM logs snapshot time 2013-12-17 11:13:19 -08:00
Armon Dadgar 7fbb2c9918 Adding support and tests for FSM snapshotting 2013-12-16 10:47:14 -08:00
Armon Dadgar 70a001bfa0 Adding ability to snapshot StateStore 2013-12-12 15:14:08 -08:00
Armon Dadgar b86d6f4370 Changing how state store is opened to allow shared connections 2013-12-12 14:41:13 -08:00
Armon Dadgar 96a52fc0b2 Remove unused raft endpoints 2013-12-12 11:48:22 -08:00
Armon Dadgar 8409f9fc0a Adding NodeServices endpoing 2013-12-12 11:46:25 -08:00
Armon Dadgar 7757943156 Support querying for ServiceNodes 2013-12-12 11:37:19 -08:00
Armon Dadgar d4bb369642 Remove useless check since we are doing a DISTINCT query 2013-12-12 11:08:01 -08:00
Armon Dadgar e1c927f218 Adding ability to list services 2013-12-12 11:07:14 -08:00
Armon Dadgar d3cba241bf Adding node listing 2013-12-12 10:48:36 -08:00
Armon Dadgar 9a76a2bf12 Support datacenter listing 2013-12-12 10:35:50 -08:00
Armon Dadgar aee98291a9 Remove unused methods 2013-12-11 16:43:29 -08:00
Armon Dadgar f73f2a6513 Test leader forwarding 2013-12-11 16:42:19 -08:00
Armon Dadgar 5135724dae Adding support for cross-dc forwarding 2013-12-11 16:33:19 -08:00
Armon Dadgar 4cfe5179ba Track remote consul servers 2013-12-11 16:24:34 -08:00
Armon Dadgar 43cc986202 Adding support for deregistration 2013-12-11 15:34:10 -08:00
Armon Dadgar 4385ab3092 Testing Catalog.Register endpoint 2013-12-11 14:57:40 -08:00
Armon Dadgar 2b194d6380 Adding FSM support for Register 2013-12-11 14:38:18 -08:00
Armon Dadgar b0c82b61d2 Adding state store methods 2013-12-11 14:27:27 -08:00
Armon Dadgar 94865a40ac consul: starting work on some RPC layers 2013-12-11 14:04:44 -08:00
Armon Dadgar b4b4365d1d Adding some state store methods with tests 2013-12-11 14:03:09 -08:00
Armon Dadgar 479185694d Stubs 2013-12-10 18:19:15 -08:00
Armon Dadgar ac9d2a81ff consul: working on fsm state 2013-12-10 17:00:48 -08:00
Armon Dadgar 48e3db305b Adding Status.Leader endpoint 2013-12-10 15:16:41 -08:00
Armon Dadgar 662a1d9af7 consul: Adding method to force remove failed nodes 2013-12-10 14:42:29 -08:00
Armon Dadgar 0725906cab consul: Adding LANMembers and WANMembers 2013-12-10 13:17:54 -08:00
Armon Dadgar e7f4a84841 consul: abandon join on shutdown or member fail 2013-12-09 16:25:24 -08:00
Armon Dadgar 761197575c consul: Adding tons of shit, leave test 2013-12-09 16:05:15 -08:00
Armon Dadgar 9c4583c0e3 consul: type safe event handlers 2013-12-09 15:29:44 -08:00
Armon Dadgar f582b86cd8 consul: status rpc endpoint 2013-12-09 15:29:20 -08:00
Armon Dadgar 2d7af79662 consul: store the peerstore 2013-12-09 15:29:01 -08:00
Armon Dadgar 08152dc66b consul: Leave does a RemovePeer RPC call 2013-12-09 15:01:42 -08:00
Armon Dadgar a8a9d2cd45 consul: helper to make RPC calls 2013-12-09 14:58:49 -08:00
Armon Dadgar f7f743dfa9 consul: ConnPool creates RPC client 2013-12-09 14:52:22 -08:00
Armon Dadgar 03bd66c8fa consul: Adding Raft rpc endpoint 2013-12-09 14:49:07 -08:00
Armon Dadgar b7bafb6bd8 consul: gossip role includes rpc addr 2013-12-09 14:30:16 -08:00
Armon Dadgar c28ebbf60f consul: Write the byte to set the RPC mode 2013-12-09 14:29:20 -08:00
Armon Dadgar 6e9d7dc0fd consul: RaftLayer does not use ConnPool 2013-12-09 14:25:59 -08:00
Armon Dadgar ad51531407 consul: fixing test 2013-12-09 14:23:19 -08:00
Armon Dadgar 5ab00f34ee consul: Remove the RaftBindAddr 2013-12-09 14:22:23 -08:00
Armon Dadgar a5d001034e consul: close raft transport before layer 2013-12-09 14:20:56 -08:00
Armon Dadgar 7f4adceae8 consul: sharing the RPC layer between Consul/Raft 2013-12-09 13:13:40 -08:00
Armon Dadgar fc595ce9ee consul: Adding leave function 2013-12-09 12:10:27 -08:00
Armon Dadgar 205941ffcf consul: adding connection pool 2013-12-09 12:09:57 -08:00
Armon Dadgar af9176bca0 consul: Add+test JoinLAN/JoinWAN 2013-12-06 17:18:09 -08:00
Armon Dadgar 72e93a7432 consul: refactor into more files 2013-12-06 16:54:33 -08:00
Armon Dadgar 0bf9a8fb1c consul: Basic RPC framework 2013-12-06 16:35:13 -08:00
Armon Dadgar 9b8433f787 consul: Rename to LAN/WAN instead of Local/Remote 2013-12-06 16:05:26 -08:00
Armon Dadgar 94ff23d2a4 consul: adding basic skeleton 2013-12-06 15:43:07 -08:00