Commit Graph

1195 Commits

Author SHA1 Message Date
Ryan Uber f9823a2a08 consul/state: read transactions don't block writes 2015-10-15 14:59:09 -07:00
Ryan Uber 0085512eb8 consul/state: more tests for EnsureNode/GetNode 2015-10-15 14:59:09 -07:00
Ryan Uber b2d9c10fad consul/state: working on service registration storage 2015-10-15 14:59:09 -07:00
Ryan Uber 82039191a1 consul/state: node registration and retrieval works 2015-10-15 14:59:09 -07:00
Ryan Uber 8181be18f2 consul/state: start tests for schema 2015-10-15 14:59:09 -07:00
Ryan Uber 89f87b7b5e consul/state: round out schema 2015-10-15 14:59:09 -07:00
Ryan Uber 633a270803 consul/state: starting on new state store 2015-10-15 14:59:09 -07:00
Ryan Uber b6ca82dd41 consul: comment msgpack handle 2015-10-15 14:57:29 -07:00
Ryan Uber e098b7592f consul: revert session endpoint test 2015-10-15 12:31:48 -07:00
Ryan Uber 81a862d8b7 consul: initial pass at refactoring RPC using net-rpc-msgpackrpc 2015-10-13 22:15:23 -07:00
Dale Wijnand 5a28ebcaa3 Fix a bunch of typos. 2015-09-15 13:22:08 +01:00
James Phillips 2f9ebdb135 Merge pull request #1187 from sfncook/enable_tag_drift_03
Enable tag drift 03
2015-09-11 15:35:32 -07:00
Anthony Scalisi 10e028d599 remove various typos 2015-09-11 12:29:54 -07:00
Shawn Cook 66fd8fb2a0 Rename EnableTagOverride and update formatting 2015-09-11 08:35:29 -07:00
Shawn Cook 0b3faf6e4a Merge remote-tracking branch 'hashicorp/master' into enable_tag_drift_03 2015-09-10 14:55:30 -07:00
William Tisäter 54ea982b02 Bind to loopback only as last resort 2015-09-02 12:24:44 +02:00
William Tisäter c94f78e92f Don't try to bind on address from inactive interface 2015-09-02 12:24:36 +02:00
William Tisäter 0a2b8cee85 Treat 127.0.0.0/8 and 169.254.0.0/16 as private network 2015-09-02 12:24:14 +02:00
James Phillips af7d2cb596 Bumps protocol version back down as we've made memberlist smarter. 2015-08-31 11:16:34 -07:00
Shawn Cook ab91590bcb Update tests - NodeService init needs bool 2015-08-20 09:09:26 -07:00
Shawn Cook 6a835939b8 EnableTagDrift in NodeService struct 2015-08-18 10:34:55 -07:00
Mac Browning 6b59226f0a consul: refactor GetPrivateIP for testability 2015-08-15 17:44:32 -04:00
James Phillips 614bf446fc Changes to an unbuffered channel, since we just close it. 2015-08-13 11:38:02 -07:00
James Phillips 1e8937b52b Cleans up locking and factors markForUse into a Conn method. 2015-08-13 10:01:05 -07:00
James Phillips 072811f289 Gets rid of follow up attempts if the lead thread can't connect. 2015-08-12 20:14:48 -07:00
James Phillips 8bca3eb644 Adds missing ref count for the race condition case. 2015-08-12 19:26:01 -07:00
James Phillips 40c5af6f73 Fixes #1165 by having threads wait for any outstanding connect to finish. 2015-08-12 18:48:15 -07:00
Ryan Uber f2b71940f5 consul: filter services by ACL when using ChecksInState. 2015-07-27 16:57:56 -07:00
Ryan Uber a6317f2fb2 Merge pull request #1090 from hashicorp/f-keyring-acl
Keyring ACLs
2015-07-24 10:23:18 -07:00
Armon Dadgar dcb5ae783b Merge pull request #1119 from trumant/multiple_private_IPs
Fixes #1099 by raising an error when we multiple private IPs are found
2015-07-22 17:32:00 -07:00
Travis Truman 182f881d82 Fixes #1099 by raising an error when we multiple private IPs are found 2015-07-16 22:25:02 -04:00
Ryan Uber 5d73afc13f consul: fixes for events and related tests 2015-07-14 11:38:26 -07:00
Ryan Uber 1b8051a783 acl: initial pass at keyring ACLs 2015-07-06 18:28:09 -06:00
Armon Dadgar 2783f2bfec consul: fixing test using wrong FSM 2015-07-06 14:33:58 -06:00
Ryan Uber e37b5ecb69 Merge pull request #1046 from hashicorp/f-event-acl
Event ACLs
2015-07-02 07:02:07 -07:00
Ryan Uber 18715a445c agent: remove unnecessary EventFire function 2015-07-02 06:56:27 -07:00
Tiru Srikantha b48842cf4f Add RFC 6598 private IP range
Fixes #1031 by adding 100.64.0.0/10 as a private IP range.
2015-06-19 12:20:30 -07:00
Ryan Uber 6e084f6897 consul: always fire events from server nodes 2015-06-18 18:13:29 -07:00
Ryan Uber d5e13280a3 consul: use acl cache struct in server 2015-06-18 18:13:29 -07:00
Ryan Uber 3ef482de7f consul: split ACL cache into a reusable struct 2015-06-18 18:13:29 -07:00
Ryan Uber d777105c11 consul: check ACLs when firing events 2015-06-18 18:13:29 -07:00
Ryan Uber cee0af8d5c consul: fast path a typed nil during ACL filtering 2015-06-12 16:46:15 -07:00
Ryan Uber 389f89274a consul: fail badly if an unsupported type is passed to the ACL filter 2015-06-11 17:06:35 -07:00
Ryan Uber e06e5c5e99 consul: fix log message 2015-06-11 15:00:26 -07:00
Ryan Uber 71f21fdea7 consul: testing acl filters in isolation 2015-06-11 14:14:43 -07:00
Ryan Uber 77721e3a1a consul: better tests for acl filtering 2015-06-11 13:23:49 -07:00
Ryan Uber a4d34b66d6 consul: testing internal endpoint acl filtering 2015-06-11 13:05:33 -07:00
Ryan Uber d217c25668 consul: rename function to avoid collision and clean up 2015-06-11 13:04:47 -07:00
Ryan Uber 6623538c93 consul: break acl filtering into a separate struct 2015-06-11 12:08:21 -07:00
Ryan Uber 0159511714 consul: testing health endpoint service acl filtering 2015-06-11 09:39:35 -07:00
Ryan Uber 5128924b00 consul: testing catalog endpoint acl filtering 2015-06-10 22:14:58 -07:00
Ryan Uber 4a9965f062 consul: begin testing discovery ACLs 2015-06-10 19:25:58 -07:00
Ryan Uber 5b90b0f249 consul: use anonymous function for acl filtering 2015-06-10 18:43:48 -07:00
Ryan Uber 5fed1b5dc3 consul: filter internal endpoints for acls 2015-06-10 18:40:40 -07:00
Ryan Uber c68f1dab8a acl: initial pass at service discovery acls 2015-06-10 18:40:09 -07:00
James Phillips feb7f65703 Bumps protocol version to 3 to get serf version 5. 2015-06-02 17:50:35 -07:00
Sam Boyer 40478cb534 Condense switch fallthroughs into expr lists 2015-05-26 21:30:14 -04:00
Armon Dadgar cee5b53423 consul: adding StopWatch test 2015-05-14 18:32:19 -07:00
Armon Dadgar ab3632e409 consul: lower default query time and add small stagger 2015-05-14 17:59:43 -07:00
Armon Dadgar c51c888142 consul: adding randomStagger util method 2015-05-14 17:59:11 -07:00
Armon Dadgar 926b8bc7fa consul: proactively clear timers 2015-05-14 17:42:47 -07:00
Armon Dadgar e62ff966a3 consul: ensure blocking query cleans any lingering state 2015-05-14 17:38:42 -07:00
Armon Dadgar 1a50225911 consul: Adding methods to stop watching for changes 2015-05-14 17:33:02 -07:00
Armon Dadgar c54ab04794 consul: adding Clear to NotifyGroup 2015-05-14 17:30:30 -07:00
Armon Dadgar ebf961ef8b Merge pull request #927 from hashicorp/f-tls
Add new `verify_server_hostname` to mitigate possibility of MITM
2015-05-11 18:15:16 -07:00
Armon Dadgar 8d86290ebf Fixing merge conflict 2015-05-11 16:48:10 -07:00
Armon Dadgar beec4972de consul: support the new TLS wrapper 2015-05-11 15:15:36 -07:00
Armon Dadgar 6cf2efca0c consul: thread the target DC through the RPC path 2015-05-11 13:09:19 -07:00
Armon Dadgar 92e5548b23 consul: use tlsutil.Wrapper instead of tls.Config directly 2015-05-11 13:09:19 -07:00
Armon Dadgar b4531164e9 consul: updating for Raft API changes 2015-05-08 11:35:52 -07:00
Armon Dadgar 5d0f83d73d consul: more telemetry on RPCs and queries 2015-05-07 17:25:12 -07:00
Armon Dadgar f3a8f907fb Merge pull request #909 from hashicorp/f-create
Support ACL upsert behavior
2015-05-06 11:22:11 -07:00
Armon Dadgar 35744c7210 consul: Adding flag to support future incompatible commands. Future self will thank me. 2015-05-05 19:44:21 -07:00
Armon Dadgar cc9bd0a00b consul: ACL.Apply allows upserting with custom ID 2015-05-05 19:19:45 -07:00
Armon Dadgar 8b8abe2268 consul: fixing overly redundant logging 2015-05-05 13:00:47 -07:00
Armon Dadgar a86f31517b Merge pull request #816 from pepov/master
Support different advertise address for WAN gossip
2015-05-04 15:40:25 -07:00
Ryan Mills c92d45dd9b Remove 'unknown' as one of the valid states when setting the initial state of a check. 2015-04-13 20:46:01 +00:00
Ryan Mills 275af975e8 Allow specifying a status field in the agent/service/register and agent/check/register endpoints.
This status must be one of the valid check statuses: 'passing', 'warning', 'critical', 'unknown'.
If the status field is not present or the empty string, the default of 'critical' is used.
2015-04-12 02:00:31 +00:00
Ryan Uber 6cc0eefa76 Merge pull request #857 from hashicorp/f-boltdb
Raft uses BoltDB
2015-04-10 18:30:07 -07:00
Armon Dadgar 5f921653cd consul: do not clear connection cache on RPC errors 2015-04-07 14:17:20 -07:00
pepov 8cfe42f5dc add test using separate advertise addresses for wan and for lan 2015-03-28 16:08:19 +01:00
Michael Fraenkel 8c26836783 Support SesionTTLMin configuration
- Allow setting SessionTTLMin
- Validate on the Server
2015-03-27 05:13:57 -07:00
Ryan Uber ed67f6593f consul: swap over to raft-boltdb 2015-03-26 20:01:52 -07:00
Ryan Uber 1200e25ec9 consul: allow returning custom error for merge delegate 2015-02-22 18:24:10 -08:00
Ryan Breen b78eb40ef4 s/data center/datacenter/g 2015-02-19 17:45:47 -05:00
Armon Dadgar d92e5d37e3 Revert "* use defer to avoid tracking lock"
This reverts commit a030abdefc.
This commit causes a connection to be leaked if there is a race with
another concurrent RPC.
2015-02-16 14:04:47 -08:00
Emil Hessman 87dca96152 consul: clean up TempDirs in FSM tests 2015-01-26 08:34:23 +01:00
Armon Dadgar 149f25aaff Merge pull request #621 from hashicorp/f-leave
Changing interaction between Leave and RemovePeers
2015-01-21 16:28:19 -08:00
Ryan Uber 674be58e55 agent: support multiple checks per service 2015-01-20 21:48:42 -08:00
Armon Dadgar 8dc077edaa consul: Testing leave as leader and non-leader 2015-01-20 16:30:56 -08:00
Armon Dadgar 6f48675f14 consul: Wait for RemovePeer in Leave as a follower 2015-01-20 16:19:54 -08:00
Armon Dadgar 38f276dc47 consul: remove ourself from raft peer set if we are the leader 2015-01-20 16:19:29 -08:00
Armon Dadgar 6446df65bf consul: Do not remove ourself as raft peer in Serf event handler 2015-01-20 16:13:54 -08:00
Armon Dadgar 1c942386b6 consul: Use new LogCache to improve write throughput 2015-01-14 15:49:58 -08:00
Armon Dadgar 0b969c4e2b consul: Fixing potential issue with blocking queries for {Session,ACL}.Get 2015-01-13 12:02:30 -08:00
Armon Dadgar 8068c73b29 consul: Fixing blocking query returning old result 2015-01-13 11:51:24 -08:00
Ryan Uber 2c9bb57c0f consul: fix server left test 2015-01-09 19:10:17 -08:00
Ryan Uber 757c850c6e consul: improve test reliability for session ttls 2015-01-09 17:18:11 -08:00
Armon Dadgar 4572e7c8ec consul: Testing KVSDeleteCAS in FSM 2015-01-08 17:26:12 -08:00
Armon Dadgar 2bd5c3f7e5 consul: Test the KVSDeleteCheckAndSet method 2015-01-08 17:24:36 -08:00
Armon Dadgar 65bebca0f5 consul: Expose the KVSDeleteCAS operation in FSM 2015-01-08 17:08:44 -08:00
Armon Dadgar 32e9e8ead5 consul: Implement KVSDeleteCheckAndSet 2015-01-08 17:08:32 -08:00
Armon Dadgar 55330c95a6 consul: Adding KVSDeleteCAS operation type 2015-01-08 17:08:17 -08:00
Armon Dadgar 779ae5ca0d consul: Do not override the node address 2015-01-08 10:57:15 -08:00
Armon Dadgar 23b9c96169 consul: Fixing merge conflict 2015-01-08 10:42:19 -08:00
Armon Dadgar cd4f17a410 consul: Remove cruft from KV watching 2015-01-07 18:10:18 -08:00
Armon Dadgar 80607e593a consul: Enforce lock-delay with delete behavior 2015-01-07 15:48:27 -08:00
Ryan Uber 8e09016aee Ignore vim swap files 2015-01-07 15:21:01 -08:00
Ryan Uber d97305e376 command: check LastIndex is not zero while waiting for leader 2015-01-07 15:18:00 -08:00
Armon Dadgar 2dcadffb12 consul: Adding merge delegate to prevent mixing clusters 2015-01-06 15:48:46 -08:00
Armon Dadgar 6c425299db consul: Test WatchKV 2015-01-05 17:08:01 -08:00
Armon Dadgar 974a97583a consul: Adding test for KVS.List blocking query 2015-01-05 16:57:48 -08:00
Armon Dadgar ff9869eee5 consul: Remove dead code 2015-01-05 16:42:30 -08:00
Armon Dadgar f45d7900b8 consul: Optimize KV watching 2015-01-05 16:41:57 -08:00
Armon Dadgar 3096d6c749 consul: First pass to reduce KV watch cost 2015-01-05 16:18:27 -08:00
Armon Dadgar 73db8cd559 consul: Adding more useful metrics 2015-01-05 15:13:39 -08:00
Armon Dadgar 3d45d76930 consul: Fixing the KVS tests 2015-01-05 15:06:53 -08:00
Armon Dadgar d842b6da74 consul: Disable tombstones as follower 2015-01-05 14:58:59 -08:00
Armon Dadgar ce6cbab397 consul: Improve log message 2015-01-05 14:43:56 -08:00
Armon Dadgar 62d6fe51e0 consul: Reverting some index compute logic 2015-01-05 14:43:56 -08:00
Armon Dadgar e7abf17db4 consul: List Keys should handle tombstones 2015-01-05 14:43:56 -08:00
Armon Dadgar b4292640a5 consul: Ensure KVS List handles tombstones 2015-01-05 14:43:56 -08:00
Armon Dadgar eb2df41171 consul: Mesure time for reapTombstones 2015-01-05 14:43:56 -08:00
Armon Dadgar e02e8a4558 consul: Testing leader issue of reap command 2015-01-05 14:43:56 -08:00
Armon Dadgar 55ac84c463 consul: Test FSM Reap operations 2015-01-05 14:43:56 -08:00
Armon Dadgar c22f172d84 consul: Test FSM restore of tombstones 2015-01-05 14:43:56 -08:00
Armon Dadgar 2a388aa354 consul: Testing tombstone snapshot 2015-01-05 14:43:55 -08:00
Armon Dadgar a4dad44131 consul: Testing tombstone reaping 2015-01-05 14:43:55 -08:00
Armon Dadgar 089b7655ca consul: Test tombstone creation 2015-01-05 14:43:55 -08:00
Armon Dadgar 4492ad0ab4 consul: Persist tombstones 2015-01-05 14:43:55 -08:00
Armon Dadgar bf74361fa7 consul: First pass at tombstone reaping 2015-01-05 14:43:55 -08:00
Armon Dadgar bcb10cff11 consul: TombstoneReapRequestType -> TombstoneRequestType 2015-01-05 14:43:55 -08:00
Armon Dadgar 76e5237356 consul: Generate a raft operation to reap tombstones 2015-01-05 14:43:55 -08:00
Armon Dadgar d4b1f368b3 consul: Adding new request to reap tombstones 2015-01-05 14:43:55 -08:00
Armon Dadgar 1120e6fcbd consul: Leader should reset the tombstone GC clock 2015-01-05 14:43:55 -08:00
Armon Dadgar 3bcf957d95 consul: Adding PendingExpiration 2015-01-05 14:43:55 -08:00
Armon Dadgar 10604a6fa8 consul: Thread Tombstone GC through 2015-01-05 14:43:55 -08:00
Armon Dadgar 103112b591 consul: Fixing accidental commit of transaction 2015-01-05 14:43:54 -08:00
Armon Dadgar 019d511fe7 consul: Fixing tombstone creation and hinting of GC 2015-01-05 14:43:54 -08:00
Armon Dadgar b79be042d4 consul: Adding GetTxnLimit to MDBTable 2015-01-05 14:43:54 -08:00
Armon Dadgar 99e24160d2 consul: Support reset of tombstone GC 2015-01-05 14:43:54 -08:00
Armon Dadgar b54aa8a25f consul: Adding TombstoneGC to track TTLs 2015-01-05 14:43:54 -08:00
Armon Dadgar a5ddae0de4 consul: Rename TombstoneGC to TombstoneTTL 2015-01-05 14:43:54 -08:00
Armon Dadgar 139568b0eb consul: Create tombstones before key deletes 2015-01-05 14:43:54 -08:00
Armon Dadgar 1d0aba2f97 consul: Adding TombstoneGC config 2015-01-05 14:43:54 -08:00
Daniel Malon 051ac8eb0b advertise specific address for a service
Enable setting a specific address in a service definition for advertise. If no specific address is given it will fallback to the node address and reassemble the old behaviour.
2015-01-02 21:10:05 +00:00
Armon Dadgar 8015854a74 consul: Collect useful session metrics 2015-01-02 22:46:51 +05:30
Armon Dadgar 0953efd5a0 consul: Minor cleanup 2014-12-12 22:17:41 -08:00
Armon Dadgar 19ce0842c6 consul: Test Session.Apply updates session timers 2014-12-12 21:54:29 -08:00
Armon Dadgar 7565d628b3 consul: Adding more tests for session TTLs 2014-12-12 21:42:59 -08:00
Armon Dadgar a886e8e561 consul: Setup ACLs and timers after initial barrier 2014-12-12 21:42:24 -08:00
Armon Dadgar fc89462236 consul: Make sessionTimersLock a plain mutex 2014-12-12 19:17:35 -08:00
Armon Dadgar a5a9f051cd consul: Ignore zero ttl on session 2014-12-12 19:17:04 -08:00
Armon Dadgar bb1ba3a167 consul: Minor cleanups 2014-12-12 15:43:34 -08:00
Armon Dadgar 29afa881f4 Merge pull request #524 from amalaviy/session_ttl
Consul Session TTLs
2014-12-12 14:42:25 -08:00
Atin Malaviya 31e461e10b Add invalidateSession test 2014-12-11 06:09:53 -05:00
Atin Malaviya ac54010027 Fixed clearSessionTimer, created invalidateSession, added invalid TTL test 2014-12-11 05:34:31 -05:00
Atin Malaviya 60915629f6 Took out usage of snapshot SessionListTTL 2014-12-10 21:37:06 -05:00
Atin Malaviya 3821f3c57b Took out StateSnapshot SessionListTTL also 2014-12-10 20:53:05 -05:00
Atin Malaviya 5229f3b44d Clean up code based on feedback from armon 2014-12-10 20:49:06 -05:00
Atin Malaviya 87e9d855fd Added more tests 2014-12-10 16:43:15 -05:00
Atin Malaviya 624c465e2b Added more tests. Also added return of 404 if the session id to renew is not found 2014-12-10 10:02:23 -05:00
Atin Malaviya 4732c36d88 Consul Session TTLs
The design of the session TTLs is based on the Google Chubby approach
(http://research.google.com/archive/chubby-osdi06.pdf). The Session
struct has an additional TTL field now. This attaches an implicit
heartbeat based failure detector. Tracking of heartbeats is done by
the current leader and not persisted via the Raft log. The implication
of this is during a leader failover, we do not retain the last
heartbeat times.

Similar to Chubby, the TTL represents a lower-bound. Consul promises
not to terminate a session before the TTL has expired, but is allowed
to extend the expiration past it. This enables us to reset the TTL on
a leader failover. The TTL is also extended when the client does a
heartbeat. Like Chubby, this means a TTL is extended on creation,
heartbeat or failover.

Additionally, because we must account for time requests are in transit
and the relative rates of clocks on the clients and servers, Consul
will take the conservative approach of internally multiplying the TTL
by 2x. This helps to compensate for network latency and clock skew
without violating the contract.

Reference: https://docs.google.com/document/d/1Y5-pahLkUaA7Kz4SBU_mehKiyt9yaaUGcBTMZR7lToY/edit?usp=sharing
2014-12-07 12:38:22 -05:00
Ali Abbas fc73a5a53e cleanup and simplify 2014-12-06 13:08:35 +01:00
Ali Abbas a030abdefc * use defer to avoid tracking lock
* simplify control flow
2014-12-06 12:32:18 +01:00
Chavez 42a92693a8 consul: Server leave test fix 2014-12-05 11:22:54 -08:00
Chavez b98374802d consul: Fix failing globalRPC test 2014-12-05 10:36:37 -08:00
Veres Lajos 3b1068387a typofixes - https://github.com/vlajos/misspell_fixer 2014-12-04 23:25:06 +00:00
Armon Dadgar 4861e4d9e1 consul: Check that ACL also allows registration 2014-11-30 21:10:42 -07:00
Armon Dadgar cafba93869 consul: Enforce service registration ACLs 2014-11-30 21:05:15 -07:00
Ali Abbas d1b2e41680 * Fix race condition on read/write of shutdown bool variable of server and connection pool.
* In connection pool, there is no guarantee that .reap() cannot execute the same time as .Shutdown() is called. It also did not benefit to eval shutdown when a select is run on the shutdown channel.
* In server, same principle applies to handleConsulConn. Since we also have a shutdown channel, it makes more to use this than to loop on a bool variable.
2014-11-26 10:39:25 +01:00
Ali Abbas e395420af6 cleanup unreachable code 2014-11-25 19:54:30 +01:00
Atin Malaviya d7933ae747 Set empty Behavior setting into SessionKeysRelease and flag error for unrecognized values 2014-11-20 19:16:07 -05:00
Atin Malaviya 6ef03a806c Clean up tests, use switch to default session.Behavior value if unspecified, unrecognized 2014-11-20 14:29:18 -05:00
Atin Malaviya 47241fc1c8 Ephemeral Nodes for via Session behavior settings.
Added a "delete" behavior for session invalidation, in addition to
the default "release" behavior. On session invalidation, the sessions
Behavior field is checked and if it is set to "delete", all nodes owned
by the session are deleted. If it is "release", then just the locks
are released as default.
2014-11-20 11:34:45 -05:00
Ryan Uber c283754381 Rebase against upstream 2014-11-19 16:45:49 -08:00
Ryan Uber 4203e7ab6d consul: clean up comments, fix globalRPC tests 2014-11-19 16:37:40 -08:00
Ryan Uber a662acd794 consul: fix obscure bug when launching goroutines from for loop 2014-11-19 16:37:40 -08:00
Ryan Uber 0cafb129ee consul: more tests, remove unused KeyManager() method 2014-11-19 16:37:40 -08:00
Ryan Uber 648c7cdc8e consul: simplify keyring operations 2014-11-19 16:36:19 -08:00
Ryan Uber ee03c6a4b8 consul: add test for internal keyring rpc endpoint 2014-11-19 16:36:19 -08:00
Ryan Uber a79176d314 consul: simplify keyring operations 2014-11-19 16:36:19 -08:00
Ryan Uber e60c909276 command/keyring: clean up tests 2014-11-19 16:36:18 -08:00
Ryan Uber bc2b2120fa agent: -encrypt appends to keyring if one exists 2014-11-19 16:36:01 -08:00
Ryan Uber 22b2c63304 command/agent: fix up gossip encryption indicator 2014-11-19 16:35:37 -08:00
Ryan Uber 1f9d13dc73 agent: squash some more common keyring semantics 2014-11-19 16:34:18 -08:00
Ryan Uber 25845a39d3 consul: detach executeKeyringOp() from *Internal 2014-11-19 16:34:18 -08:00
Ryan Uber 7b4b87ccf1 consul: use keyring operation type to cut out duplicated logic 2014-11-19 16:34:18 -08:00
Ryan Uber 9556347609 consul: generalize multi-DC RPC call broadcasts 2014-11-19 16:34:18 -08:00
Ryan Uber daf77c3f5b command/keyring: cleanup 2014-11-19 16:34:18 -08:00
Ryan Uber 61b0908e3a consul: test rpc errors returned from remote datacenters 2014-11-19 16:34:18 -08:00
Ryan Uber 9b8e753b15 consul: make forwarding to multiple datacenters parallel 2014-11-19 16:34:18 -08:00
Ryan Uber 74c7b1239b consul: break rpc forwarding and response ingestion out of internal endpoints 2014-11-19 16:34:18 -08:00
Ryan Uber 9d01174521 consul: kill unused struct fields 2014-11-19 16:34:17 -08:00
Ryan Uber 9056e617cb consul: cross-dc key rotation works 2014-11-19 16:34:17 -08:00
Ryan Uber ef2aabc544 consul: use a function for ingesting responses 2014-11-19 16:34:17 -08:00
Ryan Uber 2bdeaa0c6a consul: restructuring 2014-11-19 16:34:17 -08:00
Ryan Uber 8dec2744da consul: refactor keyring, repeat RPC calls to all DC's 2014-11-19 16:34:17 -08:00
Ryan Uber fcb0961436 agent: refactor keyring loader 2014-11-19 16:31:06 -08:00
Ryan Uber 67b179ccc9 command: basic rpc works for keys command 2014-11-19 16:30:21 -08:00
Ryan Uber 4dd1b42477 consul: use rpc layer only for key management functions, add rpc commands 2014-11-19 16:30:21 -08:00
Ryan Uber e20a724999 consul: first pass at keyring integration 2014-11-19 16:30:20 -08:00
Armon Dadgar 6be29e17c2 Merge pull request #478 from amalaviy/https
Added HTTPS support via a new HTTPS Port configuration option
2014-11-19 11:17:10 -08:00
Armon Dadgar e9c7b1df93 consul: Increase maximum number of parallel readers 2014-11-18 18:46:43 -08:00
Atin Malaviya 61f1d24f39 consul.Config() helper to generate the tlsutil.Config{} struct, 30 second keepalive, use keepalive for HTTP and HTTPS 2014-11-18 17:56:48 -05:00
Atin Malaviya f1f8c88228 Moved TLS Config stuff to tlsutil package 2014-11-18 11:03:36 -05:00
Armon Dadgar 8a1969cc8c consul: Fixing key list index calculation 2014-11-12 17:55:45 -08:00
Emil Hessman c9333b1b9b Fix missing arguments 2014-11-01 22:56:48 +01:00
Armon Dadgar 541b98a926 Gofmt 2014-10-20 10:21:31 -07:00
Armon Dadgar ce4aa7beb5 Switching to the pinned version of msgpack 2014-10-17 18:26:19 -07:00
Armon Dadgar ad445f5ac2 Encode/Decode test 2014-10-17 18:23:13 -07:00
Armon Dadgar f37f5fde54 consul: Improving test reliability 2014-10-17 17:40:14 -07:00
Armon Dadgar 4f1fa3a4ce Merge pull request #401 from hashicorp/f-healthcheck
Default services to "critical" state instead of "unknown"
2014-10-15 16:50:38 -07:00
Armon Dadgar c8ac05b39e consul: Fixing FSM path tests 2014-10-15 15:03:58 -07:00
Armon Dadgar bb3324dd85 consul: Ensure FSM stores data in the data dir 2014-10-15 14:57:59 -07:00
Armon Dadgar 7380216911 consul: FSM stores state in a given path only 2014-10-15 14:56:12 -07:00
Armon Dadgar be8051ec7e consul: Allow providing a path for the state store 2014-10-15 14:55:04 -07:00
Ryan Uber d2fc11c19d consul/structs: keep HealthUnknown around for backward compatibility 2014-10-15 11:35:22 -07:00
Armon Dadgar f8fc46dc57 consul: Reduce mmap size on 32bit 2014-10-15 11:32:40 -07:00
Ryan Uber 2f93e13da8 consul: kill remaining use of HealthUnknown 2014-10-15 10:14:46 -07:00
Armon Dadgar d1d76856e6 consul: less aggressive deadlock timer. Fixes #389 2014-10-14 12:00:25 -07:00
Armon Dadgar af4a955037 consul: Improve variable name 2014-10-14 11:04:43 -07:00
Armon Dadgar e39d2ee675 consul: Reap left members ignoring state. Fixes #371 2014-10-14 11:02:26 -07:00
Armon Dadgar 93b209db50 consul: Log why invalidation happened. Fixes #390 2014-10-14 10:54:57 -07:00
Armon Dadgar d3c3d9a1be consul: Fixing graceful leave of current leader. Fixes #360. 2014-10-13 22:14:43 -07:00
Armon Dadgar e6ed387f42 consul: Deprecate ACLForceSet 2014-10-09 12:28:07 -07:00
Armon Dadgar c832ea8aa3 consul: Fix non-deterministic ACL IDs 2014-10-09 12:23:32 -07:00
Armon Dadgar 39e8b1ffaa consul: Fix non-deterministic session IDs 2014-10-09 11:54:47 -07:00
Armon Dadgar c8f35aea45 consul: don't close a nil connection 2014-10-02 10:26:25 -07:00
Armon Dadgar 602828472d agent: First pass at multi-DC support 2014-08-28 15:00:49 -07:00
Armon Dadgar b5fb9d6dfb consul: Testing user events 2014-08-26 19:26:55 -07:00
Armon Dadgar 20d55e2ec4 consul: Adding user event name tests 2014-08-26 19:20:02 -07:00
Armon Dadgar be78e355de consul: Adding user event handler for callbacks 2014-08-26 19:04:07 -07:00
Armon Dadgar 1c341e6766 consul: expose UserEvent from Serf 2014-08-26 18:50:03 -07:00
Armon Dadgar 9622e99861 consul: Deny delete anonymous or update of root policies 2014-08-22 14:55:09 -07:00
Armon Dadgar 333095691e consul: Ensure node/service/check registration is in a single txn 2014-08-22 12:38:33 -07:00
Armon Dadgar 22e7205a5f consul: fixing a unit test 2014-08-22 12:34:31 -07:00
Armon Dadgar 40ae65b277 consul: Refactor txn handling in state store 2014-08-22 12:27:12 -07:00
Armon Dadgar 43a7a20868 consul: Ensure authoritative cache is purged after update 2014-08-18 15:46:59 -07:00
Armon Dadgar e56007753d consul: Provide ETag to avoid expensive policy fetch 2014-08-18 15:46:59 -07:00
Armon Dadgar 25855b2362 consul: ACL enforcement for KV updates 2014-08-18 15:46:24 -07:00
Armon Dadgar c7cb1f562b consul: ACL enforcement for key reads 2014-08-18 15:46:24 -07:00
Armon Dadgar f49d34d0e3 consul: Filter keys, refactor to interface 2014-08-18 15:46:24 -07:00
Armon Dadgar 614b0a1414 consul: Helpers to filter on ACL rules 2014-08-18 15:46:24 -07:00
Armon Dadgar 84488ed1f0 consul: Starting token enforcement 2014-08-18 15:46:23 -07:00
Armon Dadgar 2d5e869e69 consul: Prevent resolution of root policy 2014-08-18 15:46:23 -07:00
Armon Dadgar 10db4c7c8f consul: Resolve parent ACLs 2014-08-18 15:46:23 -07:00
Armon Dadgar ef171ca344 consul: Support management tokens 2014-08-18 15:46:23 -07:00
Armon Dadgar a82439c713 consul: Adding some metrics for ACL usage 2014-08-18 15:46:23 -07:00
Armon Dadgar 827e7c9efa consul: Create anonymous and master tokens 2014-08-18 15:46:22 -07:00
Armon Dadgar 01beaa60cc consul: Testing down policies and multi-DC 2014-08-18 15:46:22 -07:00
Armon Dadgar fe86c8c5ee consul: Testing ACL resolution 2014-08-18 15:46:22 -07:00
Armon Dadgar 0c912f2c98 consul: Use Etag for policy caching 2014-08-18 15:46:22 -07:00
Armon Dadgar b5e22203fc consul: Support conditional policy fetch 2014-08-18 15:46:22 -07:00
Armon Dadgar b5c9e65175 consul: Verify compilation of rules 2014-08-18 15:46:22 -07:00
Armon Dadgar 338f11c6cf consul: Enable ACL lookup 2014-08-18 15:46:22 -07:00
Armon Dadgar 97a737b1ee consul: Pulling in ACLs 2014-08-18 15:46:21 -07:00
Armon Dadgar 78049ad240 agent: ACL endpoint tests 2014-08-18 15:46:21 -07:00
Armon Dadgar 1b6806872d consul: ACL Endpoint tests 2014-08-18 15:46:21 -07:00
Armon Dadgar 7cbb2225af consul: Adding ACL endpoint 2014-08-18 15:46:21 -07:00
Armon Dadgar b53ee80acd consul: register the ACL queries 2014-08-18 15:46:21 -07:00
Armon Dadgar 70b84e44c9 consul: FSM support for ACLsg 2014-08-18 15:46:21 -07:00
Armon Dadgar fea61d629b consul: Adding ACLs to the state store 2014-08-18 15:46:21 -07:00
Armon Dadgar 3b4d8d5805 consul: ACL structs 2014-08-18 15:46:21 -07:00
Armon Dadgar cae4b421a3 agent: Adding ACL master token 2014-08-18 15:46:20 -07:00
Armon Dadgar a8063457f8 consul: ACL setting passthrough 2014-08-18 15:46:20 -07:00
William Tisäter 6b52d410b3 Run `go fmt` 2014-07-24 01:09:55 +02:00
William Tisäter 945e19e139 Don't override `ServiceTags` 2014-07-23 23:42:22 +02:00
William Tisäter 57d62eb492 Change order of fixtures 2014-07-23 23:42:22 +02:00
William Tisäter 37426f7410 Make service tag filter case-insensitive 2014-07-23 23:42:22 +02:00
William Tisäter 9ad8b9ff19 Make service index case-insensitive 2014-07-23 23:42:22 +02:00
William Tisäter 9359f899f5 Lowercase index key and lookup value if flag is set 2014-07-23 23:42:22 +02:00
William Tisäter ee4de11741 Add case-insensitive flag to `MDBIndex` 2014-07-23 23:42:21 +02:00
William Tisäter e5798c74d2 Add helper for lowercase list of strings 2014-07-23 23:42:21 +02:00
Armon Dadgar ce9de56469 consul: Defer serf handler until initialized. Fixes #254. 2014-07-22 09:36:58 -04:00
Armon Dadgar 746449ffed Merge pull request #233 from nelhage/tls-no-subjname
Restore the 0.2 TLS verification behavior.
2014-07-01 13:41:00 -07:00
Nelson Elhage 12a7f765b6 Add some basic smoke tests for wrapTLSclient.
Check the success case, and check that we reject a self-signed
certificate.
2014-06-29 18:11:32 -07:00
Nelson Elhage d174cbe7f4 Restore the 0.2 TLS verification behavior.
Namely, don't check the DNS names in TLS certificates when connecting to
other servers.

As of golang 1.3, crypto/tls no longer natively supports doing partial
verification (verifying the cert issuer but not the hostname), so we
have to disable verification entirely and then do the issuer
verification ourselves. Fortunately, crypto/x509 makes this relatively
straightforward.

If the "server_name" configuration option is passed, we preserve the
existing behavior of checking that server name everywhere.

No option is provided to retain the current behavior of checking the
remote certificate against the local node name, since that behavior
seems clearly buggy and unintentional, and I have difficulty imagining
it is actually being used anywhere. It would be relatively
straightforward to restore if desired, however.
2014-06-28 13:32:42 -07:00
Armon Dadgar 924e4bc7f1 Rename Expect to BootstrapExpect. Fixes #223. 2014-06-19 17:08:55 -07:00
Armon Dadgar 92b6e947dd consul: Minor cleanups 2014-06-18 16:15:28 -07:00
Robert Xu 7b456a6d6d Minor cleanup to logic and testsuite.
Signed-off-by: Robert Xu <robxu9@gmail.com>
2014-06-18 18:47:05 -04:00
Robert Xu bc4a4fe09b Utilise new raft.SetPeers() method, move expect logic to leader.go.
This way, we don't use EnableSingleMode, nor cause chaos adding peers.

Signed-off-by: Robert Xu <robxu9@gmail.com>
2014-06-18 12:03:30 -04:00
Robert Xu c60fd0542a Add expect bootstrap '-expect=n' mode.
This allows for us to automatically bootstrap a cluster of nodes after
'n' number of server nodes join. All servers must have the same 'n' set, or
they will fail to join the cluster; all servers will not join the peer set
until they hit 'n' server nodes.

If the raft commit index is not empty, '-expect=n' does nothing because it
thinks you've already bootstrapped.

Signed-off-by: Robert Xu <robxu9@gmail.com>
2014-06-16 17:40:33 -04:00
Armon Dadgar 961a00c496 Adding server_name configuration for TLS 2014-06-13 11:10:27 -07:00
Robert B Gordon 470d0f1e58 Seems like we should actually check the reference count. 2014-06-13 11:25:01 -05:00
Armon Dadgar 93f4eb0a0f consul: Start RPC before Raft, wait to accept connecitons 2014-06-11 10:17:58 -07:00
Armon Dadgar 938371ee40 consul: start RPC after fully initialized. Fixes #160 2014-06-11 09:46:44 -07:00
Armon Dadgar ab4e3de185 consul: Avoid network for server RPC. Fixes #148. 2014-06-10 19:12:36 -07:00
Armon Dadgar 476339b20c consul: Provide output for serfHealth check. Fixes #176. 2014-06-09 16:07:22 -07:00
Armon Dadgar 10f3007aa2 consul: Adding support for optional session name 2014-06-09 11:42:28 -07:00
Armon Dadgar 9a46a12fa5 consul: fixing use of nil log output. Fixes #203 2014-06-09 11:16:53 -07:00
Armon Dadgar 474e286aca Rename shared msgpack handle 2014-06-08 14:02:42 -07:00
Andrew M Bursavich 8a3c1a9b47 reuse codec.MsgpackHandle 2014-06-07 01:13:38 -07:00
Armon Dadgar b144633815 consul: Gossip the build using Serf 2014-06-06 15:36:40 -07:00
Armon Dadgar e171df2e2c consul: Sort datacenter list. Fixes #198 2014-06-06 14:12:40 -07:00
William Tisäter cbdb54f22b Log peers when `TestLeader_LeftServer` fail 2014-05-30 21:18:37 +02:00
William Tisäter 9e3ad6721c Re-configure `LeaderLeaseTimeout` to pass validation 2014-05-30 20:57:39 +02:00
Armon Dadgar acc048036b consul: Ensure clients also implement LocalMember 2014-05-29 11:21:56 -07:00
Armon Dadgar 3874498374 Merge pull request #173 from hashicorp/f-agent-self
Add `/v1/agent/self` and return local agent config
2014-05-29 11:18:19 -07:00
Armon Dadgar 5124428ba7 consul: Conn pool clean, spare existing streams 2014-05-28 16:55:39 -07:00
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