James Phillips
46be9fa2cf
Adds benchmarks back in to the state store.
2015-10-15 14:59:09 -07:00
James Phillips
6db1a8624d
Removes a todo that's no longer needed.
2015-10-15 14:59:09 -07:00
James Phillips
82f275d126
Adds unit tests for the graveyard.
2015-10-15 14:59:09 -07:00
James Phillips
e285af5d1c
Does some go fmt after latest round of changes.
2015-10-15 14:59:09 -07:00
James Phillips
409fd57e4a
Adds a delay test.
2015-10-15 14:59:09 -07:00
James Phillips
73ad5f0695
Adds watch unit tests and does some related watch cleanup.
2015-10-15 14:59:09 -07:00
James Phillips
9fce4aaf35
Adds tests for GC.
2015-10-15 14:59:09 -07:00
James Phillips
ca220c9717
Adds clone for service nodes so we don't twiddle the database's object.
2015-10-15 14:59:09 -07:00
James Phillips
25d7746f38
Fixes remaining non-KV index calclulations and adds a general getWatchTables thing.
2015-10-15 14:59:09 -07:00
James Phillips
32e2439f93
Fixes index management for KVS.
2015-10-15 14:59:09 -07:00
James Phillips
37da1faaf2
Makes session invalidate loops use a separate slice to protect the iterator.
2015-10-15 14:59:09 -07:00
James Phillips
8504646900
Makes all delete loops use a separate slice to protect the iterator.
2015-10-15 14:59:09 -07:00
James Phillips
768f6fd8db
Cleans up some go vet warnings.
2015-10-15 14:59:09 -07:00
James Phillips
495b276e44
Gets rid of todo that we discussed is ok.
2015-10-15 14:59:09 -07:00
James Phillips
3fedffbffb
Gets rid of the transitional "New" suffix on state store and RPC.
2015-10-15 14:59:09 -07:00
James Phillips
263c7e3fd3
Deletes the old state store and all its accoutrements.
2015-10-15 14:59:09 -07:00
James Phillips
3f07f0685f
Nukes old state store's connection to FSM and RPC.
2015-10-15 14:59:09 -07:00
James Phillips
450886246d
Integrates session TTL tests with new state store.
2015-10-15 14:59:09 -07:00
James Phillips
a15c24f771
Integrates new state store into internal endpoint.
2015-10-15 14:59:09 -07:00
James Phillips
76bdeadefb
Abstracts the table names away from the RPC call sites.
2015-10-15 14:59:09 -07:00
James Phillips
7a8e5b2866
Integrates new state store into session endpoint; returns table index always.
2015-10-15 14:59:09 -07:00
James Phillips
1463e6100a
Integrates new state store into leader and catalog/health endpoints.
2015-10-15 14:59:09 -07:00
James Phillips
6203c1e585
Integrates KVS endopint with new state store (changes KVSList to match old behavior).
2015-10-15 14:59:09 -07:00
James Phillips
837d8994b4
Cuts FSM unit tests over to new state store.
2015-10-15 14:59:09 -07:00
James Phillips
92e48b87bf
Adds twiddling of the real state store in snapshot tests.
2015-10-15 14:59:09 -07:00
James Phillips
87ff8d031c
Ports over session invalidation tests (and fixes some bugs).
2015-10-15 14:59:09 -07:00
James Phillips
8072138c9a
Adds a note about updating sessions after they are created.
2015-10-15 14:59:09 -07:00
James Phillips
a09571133c
Beefs up node and service watch tests for multi-table triggers.
2015-10-15 14:59:09 -07:00
James Phillips
ae21a33aca
Adds session snapshot/restore and basic watch tests (and fixes some bugs).
2015-10-15 14:59:09 -07:00
James Phillips
1725063067
Adds tombstone tests and gets rid of unused logger.
2015-10-15 14:59:09 -07:00
James Phillips
391c04de90
Makes sure we don't create a full table watch for tombstones.
2015-10-15 14:59:09 -07:00
James Phillips
4be951571e
Adds snapshot/restore and watch tests for KVS.
2015-10-15 14:59:09 -07:00
James Phillips
9bfe2c32f6
Allows lock holder to re-lock and set a KV, adds tests for corner cases around sessions.
2015-10-15 14:59:09 -07:00
James Phillips
1088145060
Adds kvs lock/unlock tests.
2015-10-15 14:59:09 -07:00
James Phillips
2c0ba7e44b
Adds snap and watch tests for nodes, services, and checks.
2015-10-15 14:59:09 -07:00
James Phillips
f7fca62dcd
Adds node snap and watch tests as well as a general watch test.
2015-10-15 14:59:09 -07:00
James Phillips
e25fb6c5ed
De-generalizes graveyard since that ended up as a YAGNI (only useful for KV).
2015-10-15 14:59:09 -07:00
James Phillips
e7de7a2b8c
Cleans up unit tests for consistency.
2015-10-15 14:59:09 -07:00
James Phillips
1bf432d5af
Adds ensure registration unit test (and fixes bugs).
2015-10-15 14:59:09 -07:00
James Phillips
e5773635e7
Adds reap tombstone test (and fixes bugs).
2015-10-15 14:59:09 -07:00
James Phillips
8a39581ae0
Adds ACL snapshot/restore test.
2015-10-15 14:59:09 -07:00
James Phillips
2dae65a6ec
Adds a watch tester helper that helps cut the cruft.
2015-10-15 14:59:09 -07:00
James Phillips
04b365495d
Completes state store for KV, sessions, tombstones, and nodes/services/checks (needs tests and integration).
2015-10-15 14:59:09 -07:00
James Phillips
edae626f36
Integrates new state store for ACLs.
2015-10-15 14:59:09 -07:00
James Phillips
cbcd977a39
Gets new structs changes to compile, adds some corner case handling and extra unit tests.
2015-10-15 14:59:09 -07:00
Ryan Uber
4cf5f6223e
consul/state: list acls
2015-10-15 14:59:09 -07:00
Ryan Uber
69b0ee0e5a
consul/state: implement acl delete
2015-10-15 14:59:09 -07:00
Ryan Uber
6e7c3e3579
consul/state: basic acl set/get/delete
2015-10-15 14:59:09 -07:00
Ryan Uber
e30c3cdea8
consul/state: basic session destroy works
2015-10-15 14:59:09 -07:00
Ryan Uber
747527fef5
consul/state: more tests
2015-10-15 14:59:09 -07:00
Ryan Uber
d0e349b190
consul/state: refactor some tests
2015-10-15 14:59:09 -07:00
Ryan Uber
d5f3648846
consul/state: session lookup by node id works
2015-10-15 14:59:09 -07:00
Ryan Uber
82fa9347e1
consul/state: add session list method
2015-10-15 14:59:09 -07:00
Ryan Uber
0d0b3c91ef
consul/state: adding session registration
2015-10-15 14:59:09 -07:00
Ryan Uber
a613f65e41
consul/state: adding tree delete for kvs store
2015-10-15 14:59:09 -07:00
Ryan Uber
66a211a70e
consul/state: list keys from the kv with a prefix/separator
2015-10-15 14:59:09 -07:00
Ryan Uber
0171c2ba3d
consul/state: fix for maxIndex and better tests
2015-10-15 14:59:09 -07:00
Ryan Uber
b0ae1c0967
consul/state: add CAS method for kv set
2015-10-15 14:59:09 -07:00
Ryan Uber
dc997beef3
consul/state: initial pass at CAS delete operation for kvs
2015-10-15 14:59:09 -07:00
Ryan Uber
57c36c274b
consul/state: adding KVSList for listing a given prefix
2015-10-15 14:59:09 -07:00
Ryan Uber
9b4f8cd800
consul/state: adding shallow delete for kvs store
2015-10-15 14:59:09 -07:00
Ryan Uber
b2dc11fed4
consul/state: basic k/v operations
2015-10-15 14:59:09 -07:00
Ryan Uber
a511e8a42d
consul/state: adding node dump methods
2015-10-15 14:59:09 -07:00
Ryan Uber
0df0b1674e
consul/state: testing service registration update
2015-10-15 14:59:09 -07:00
Ryan Uber
c3cd5051ba
consul/state: fetch node/check sets by service ID
2015-10-15 14:59:09 -07:00
Ryan Uber
d88ef90479
consul/state: filter checks by state
2015-10-15 14:59:09 -07:00
Ryan Uber
2249bec117
consul/state: support check lookups by service name
2015-10-15 14:59:09 -07:00
Ryan Uber
9fe029abc3
consul/state: return highest index for queries with compound results
2015-10-15 14:59:09 -07:00
Ryan Uber
e6a9db17d7
consul/state: cleanup
2015-10-15 14:59:09 -07:00
Ryan Uber
e114b5040f
consul/state: better tests for index table updates
2015-10-15 14:59:09 -07:00
Ryan Uber
c3ad758e0e
consul/state: test helpers
2015-10-15 14:59:09 -07:00
Ryan Uber
5d63160bb6
consul/state: node checks are removed with their associated nodes
2015-10-15 14:59:09 -07:00
Ryan Uber
329c88d8b7
consul/state: services are removed with their associated nodes
2015-10-15 14:59:09 -07:00
Ryan Uber
5bb69db6b3
consul/state: remove checks during service deregistration
2015-10-15 14:59:09 -07:00
Ryan Uber
db1bcdc863
consul/state: add check deletion method
2015-10-15 14:59:09 -07:00
Ryan Uber
ee8a1dc5d2
consul/state: set index if we have an existing health check
2015-10-15 14:59:09 -07:00
Ryan Uber
d6380e31cc
consul/state: negative tests
2015-10-15 14:59:09 -07:00
Ryan Uber
f9e8ca252c
consul/state: basic health check retrieval works
2015-10-15 14:59:09 -07:00
Ryan Uber
b6af94a8ff
consul/state: persisting health checks works
2015-10-15 14:59:09 -07:00
Ryan Uber
0a000f63a3
consul/state: test for index modification during deletes
2015-10-15 14:59:09 -07:00
Ryan Uber
8ae69b6878
consul/state: add service delete functions
2015-10-15 14:59:09 -07:00
Ryan Uber
5a8d8b0362
consul/state: working on node deletion
2015-10-15 14:59:09 -07:00
Ryan Uber
766c367ef4
consul/state: add function for returning all nodes
2015-10-15 14:59:09 -07:00
Ryan Uber
8fea5f8dc5
consul/state: track highest index when querying services
2015-10-15 14:59:09 -07:00
Ryan Uber
08553f0fef
consul/state: querying node services works
2015-10-15 14:59:09 -07:00
Ryan Uber
859ffe14e1
consul/state: read transactions don't block writes
2015-10-15 14:59:09 -07:00
Ryan Uber
a5d5577cdd
consul/state: more tests for EnsureNode/GetNode
2015-10-15 14:59:09 -07:00
Ryan Uber
f0dd8b2923
consul/state: working on service registration storage
2015-10-15 14:59:09 -07:00
Ryan Uber
011e7584b4
consul/state: node registration and retrieval works
2015-10-15 14:59:09 -07:00
Ryan Uber
6778c8d3ff
consul/state: start tests for schema
2015-10-15 14:59:09 -07:00
Ryan Uber
f30437bade
consul/state: round out schema
2015-10-15 14:59:09 -07:00
Ryan Uber
f253c39cb1
consul/state: starting on new state store
2015-10-15 14:59:09 -07:00
Ryan Uber
ae7cdfaf8d
consul: comment msgpack handle
2015-10-15 14:57:29 -07:00
Ryan Uber
cc7aa44459
consul: revert session endpoint test
2015-10-15 12:31:48 -07:00
Ryan Uber
33741f9156
consul: initial pass at refactoring RPC using net-rpc-msgpackrpc
2015-10-13 22:15:23 -07:00
Dale Wijnand
c5168e1263
Fix a bunch of typos.
2015-09-15 13:22:08 +01:00
James Phillips
b25797a808
Merge pull request #1187 from sfncook/enable_tag_drift_03
...
Enable tag drift 03
2015-09-11 15:35:32 -07:00
Anthony Scalisi
8d733b7fca
remove various typos
2015-09-11 12:29:54 -07:00
Shawn Cook
99be758411
Rename EnableTagOverride and update formatting
2015-09-11 08:35:29 -07:00
Shawn Cook
2f04917261
Merge remote-tracking branch 'hashicorp/master' into enable_tag_drift_03
2015-09-10 14:55:30 -07:00
William Tisäter
4ce2af3bd4
Bind to loopback only as last resort
2015-09-02 12:24:44 +02:00
William Tisäter
1013f2f494
Don't try to bind on address from inactive interface
2015-09-02 12:24:36 +02:00
William Tisäter
4267814e5b
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
c0127e9932
Bumps protocol version back down as we've made memberlist smarter.
2015-08-31 11:16:34 -07:00
Shawn Cook
d4ec6aa630
Update tests - NodeService init needs bool
2015-08-20 09:09:26 -07:00
Shawn Cook
f6814c89ed
EnableTagDrift in NodeService struct
2015-08-18 10:34:55 -07:00
Mac Browning
04eb37ffb6
consul: refactor GetPrivateIP for testability
2015-08-15 17:44:32 -04:00
James Phillips
8df55b6964
Changes to an unbuffered channel, since we just close it.
2015-08-13 11:38:02 -07:00
James Phillips
1c6414e806
Cleans up locking and factors markForUse into a Conn method.
2015-08-13 10:01:05 -07:00
James Phillips
18711b40b8
Gets rid of follow up attempts if the lead thread can't connect.
2015-08-12 20:14:48 -07:00
James Phillips
7d9db86b03
Adds missing ref count for the race condition case.
2015-08-12 19:26:01 -07:00
James Phillips
0efc49b510
Fixes #1165 by having threads wait for any outstanding connect to finish.
2015-08-12 18:48:15 -07:00
Ryan Uber
36bddeca25
consul: filter services by ACL when using ChecksInState.
2015-07-27 16:57:56 -07:00
Ryan Uber
6d38027689
Merge pull request #1090 from hashicorp/f-keyring-acl
...
Keyring ACLs
2015-07-24 10:23:18 -07:00
Armon Dadgar
f1a83a8954
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
e18a93ed54
Fixes #1099 by raising an error when we multiple private IPs are found
2015-07-16 22:25:02 -04:00
Ryan Uber
6d27334ee1
consul: fixes for events and related tests
2015-07-14 11:38:26 -07:00
Ryan Uber
4ef6545583
acl: initial pass at keyring ACLs
2015-07-06 18:28:09 -06:00
Armon Dadgar
fd2bead478
consul: fixing test using wrong FSM
2015-07-06 14:33:58 -06:00
Ryan Uber
503fa1eed1
Merge pull request #1046 from hashicorp/f-event-acl
...
Event ACLs
2015-07-02 07:02:07 -07:00
Ryan Uber
d2eac37579
agent: remove unnecessary EventFire function
2015-07-02 06:56:27 -07:00
Tiru Srikantha
f1932e5e46
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
e6923a4832
consul: always fire events from server nodes
2015-06-18 18:13:29 -07:00
Ryan Uber
6e9adae494
consul: use acl cache struct in server
2015-06-18 18:13:29 -07:00
Ryan Uber
e04a23801e
consul: split ACL cache into a reusable struct
2015-06-18 18:13:29 -07:00
Ryan Uber
d84fa3c98d
consul: check ACLs when firing events
2015-06-18 18:13:29 -07:00
Ryan Uber
d600fad4e7
consul: fast path a typed nil during ACL filtering
2015-06-12 16:46:15 -07:00
Ryan Uber
2b1a19a906
consul: fail badly if an unsupported type is passed to the ACL filter
2015-06-11 17:06:35 -07:00
Ryan Uber
593b4b3dd6
consul: fix log message
2015-06-11 15:00:26 -07:00
Ryan Uber
63a2737cac
consul: testing acl filters in isolation
2015-06-11 14:14:43 -07:00
Ryan Uber
e413b0e7c7
consul: better tests for acl filtering
2015-06-11 13:23:49 -07:00
Ryan Uber
5aeb8202d6
consul: testing internal endpoint acl filtering
2015-06-11 13:05:33 -07:00
Ryan Uber
aa87f2b73c
consul: rename function to avoid collision and clean up
2015-06-11 13:04:47 -07:00
Ryan Uber
1ff496d6dd
consul: break acl filtering into a separate struct
2015-06-11 12:08:21 -07:00
Ryan Uber
404d4d653c
consul: testing health endpoint service acl filtering
2015-06-11 09:39:35 -07:00
Ryan Uber
1e2751511d
consul: testing catalog endpoint acl filtering
2015-06-10 22:14:58 -07:00
Ryan Uber
c8629de127
consul: begin testing discovery ACLs
2015-06-10 19:25:58 -07:00
Ryan Uber
4f9161f485
consul: use anonymous function for acl filtering
2015-06-10 18:43:48 -07:00
Ryan Uber
b115047919
consul: filter internal endpoints for acls
2015-06-10 18:40:40 -07:00
Ryan Uber
4f3e661b8c
acl: initial pass at service discovery acls
2015-06-10 18:40:09 -07:00
James Phillips
7b8aae37cb
Bumps protocol version to 3 to get serf version 5.
2015-06-02 17:50:35 -07:00
Sam Boyer
bdc5983463
Condense switch fallthroughs into expr lists
2015-05-26 21:30:14 -04:00
Armon Dadgar
f91069f9d5
consul: adding StopWatch test
2015-05-14 18:32:19 -07:00
Armon Dadgar
2c9592c5ee
consul: lower default query time and add small stagger
2015-05-14 17:59:43 -07:00
Armon Dadgar
e5c8fce96a
consul: adding randomStagger util method
2015-05-14 17:59:11 -07:00
Armon Dadgar
23a1df1548
consul: proactively clear timers
2015-05-14 17:42:47 -07:00
Armon Dadgar
2bc43844bc
consul: ensure blocking query cleans any lingering state
2015-05-14 17:38:42 -07:00
Armon Dadgar
6f433c9ad8
consul: Adding methods to stop watching for changes
2015-05-14 17:33:02 -07:00
Armon Dadgar
abbf4456f2
consul: adding Clear to NotifyGroup
2015-05-14 17:30:30 -07:00
Armon Dadgar
430100a0c8
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
f797130228
Fixing merge conflict
2015-05-11 16:48:10 -07:00
Armon Dadgar
9642384429
consul: support the new TLS wrapper
2015-05-11 15:15:36 -07:00
Armon Dadgar
3bf337a6ac
consul: thread the target DC through the RPC path
2015-05-11 13:09:19 -07:00
Armon Dadgar
a1de4b17c2
consul: use tlsutil.Wrapper instead of tls.Config directly
2015-05-11 13:09:19 -07:00
Armon Dadgar
2ca41b15df
consul: updating for Raft API changes
2015-05-08 11:35:52 -07:00
Armon Dadgar
2d2fc71e0d
consul: more telemetry on RPCs and queries
2015-05-07 17:25:12 -07:00
Armon Dadgar
e474e34528
Merge pull request #909 from hashicorp/f-create
...
Support ACL upsert behavior
2015-05-06 11:22:11 -07:00
Armon Dadgar
9b9c737a82
consul: Adding flag to support future incompatible commands. Future self will thank me.
2015-05-05 19:44:21 -07:00
Armon Dadgar
f86e7d13d5
consul: ACL.Apply allows upserting with custom ID
2015-05-05 19:19:45 -07:00
Armon Dadgar
cbc29d1cde
consul: fixing overly redundant logging
2015-05-05 13:00:47 -07:00
Armon Dadgar
efaed93b91
Merge pull request #816 from pepov/master
...
Support different advertise address for WAN gossip
2015-05-04 15:40:25 -07:00
Ryan Mills
2bd5bf04bd
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
370853d7ff
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
8ebee678cc
Merge pull request #857 from hashicorp/f-boltdb
...
Raft uses BoltDB
2015-04-10 18:30:07 -07:00
Armon Dadgar
32f3d17931
consul: do not clear connection cache on RPC errors
2015-04-07 14:17:20 -07:00
pepov
8abcf3d541
add test using separate advertise addresses for wan and for lan
2015-03-28 16:08:19 +01:00
Michael Fraenkel
c00c4ebaaa
Support SesionTTLMin configuration
...
- Allow setting SessionTTLMin
- Validate on the Server
2015-03-27 05:13:57 -07:00
Ryan Uber
41aa5aeb09
consul: swap over to raft-boltdb
2015-03-26 20:01:52 -07:00
Ryan Uber
275d99e1dc
consul: allow returning custom error for merge delegate
2015-02-22 18:24:10 -08:00
Ryan Breen
53afd77e2d
s/data center/datacenter/g
2015-02-19 17:45:47 -05:00
Armon Dadgar
f3fd072418
Revert "* use defer to avoid tracking lock"
...
This reverts commit a030abdefc54470394a2a44008e02f3b3d0510ec.
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
70a6cdac6d
consul: clean up TempDirs in FSM tests
2015-01-26 08:34:23 +01:00
Armon Dadgar
7e27d923be
Merge pull request #621 from hashicorp/f-leave
...
Changing interaction between Leave and RemovePeers
2015-01-21 16:28:19 -08:00
Ryan Uber
27de0adf3b
agent: support multiple checks per service
2015-01-20 21:48:42 -08:00
Armon Dadgar
280a1c9c12
consul: Testing leave as leader and non-leader
2015-01-20 16:30:56 -08:00
Armon Dadgar
a695909a85
consul: Wait for RemovePeer in Leave as a follower
2015-01-20 16:19:54 -08:00
Armon Dadgar
aec0dedd01
consul: remove ourself from raft peer set if we are the leader
2015-01-20 16:19:29 -08:00
Armon Dadgar
ea7a0134c8
consul: Do not remove ourself as raft peer in Serf event handler
2015-01-20 16:13:54 -08:00
Armon Dadgar
133cf457a3
consul: Use new LogCache to improve write throughput
2015-01-14 15:49:58 -08:00
Armon Dadgar
1956c07034
consul: Fixing potential issue with blocking queries for {Session,ACL}.Get
2015-01-13 12:02:30 -08:00
Armon Dadgar
9a43063778
consul: Fixing blocking query returning old result
2015-01-13 11:51:24 -08:00
Ryan Uber
f3fad2180c
consul: fix server left test
2015-01-09 19:10:17 -08:00
Ryan Uber
084643abee
consul: improve test reliability for session ttls
2015-01-09 17:18:11 -08:00
Armon Dadgar
2408aa741d
consul: Testing KVSDeleteCAS in FSM
2015-01-08 17:26:12 -08:00
Armon Dadgar
e735c881a0
consul: Test the KVSDeleteCheckAndSet method
2015-01-08 17:24:36 -08:00
Armon Dadgar
d680696afe
consul: Expose the KVSDeleteCAS operation in FSM
2015-01-08 17:08:44 -08:00
Armon Dadgar
781aeb84d5
consul: Implement KVSDeleteCheckAndSet
2015-01-08 17:08:32 -08:00
Armon Dadgar
fbc77b7501
consul: Adding KVSDeleteCAS operation type
2015-01-08 17:08:17 -08:00
Armon Dadgar
2cd89e60ed
consul: Do not override the node address
2015-01-08 10:57:15 -08:00
Armon Dadgar
957fa1f5ec
consul: Fixing merge conflict
2015-01-08 10:42:19 -08:00
Armon Dadgar
2c9dac682a
consul: Remove cruft from KV watching
2015-01-07 18:10:18 -08:00
Armon Dadgar
5b972294f8
consul: Enforce lock-delay with delete behavior
2015-01-07 15:48:27 -08:00
Ryan Uber
5fe18b5093
Ignore vim swap files
2015-01-07 15:21:01 -08:00
Ryan Uber
7ecd015fc0
command: check LastIndex is not zero while waiting for leader
2015-01-07 15:18:00 -08:00
Armon Dadgar
a66a765ca9
consul: Adding merge delegate to prevent mixing clusters
2015-01-06 15:48:46 -08:00
Armon Dadgar
e971e8f456
consul: Test WatchKV
2015-01-05 17:08:01 -08:00
Armon Dadgar
b61043de5d
consul: Adding test for KVS.List blocking query
2015-01-05 16:57:48 -08:00
Armon Dadgar
48d97879c8
consul: Remove dead code
2015-01-05 16:42:30 -08:00
Armon Dadgar
0ea4f3d846
consul: Optimize KV watching
2015-01-05 16:41:57 -08:00
Armon Dadgar
7a63f822a3
consul: First pass to reduce KV watch cost
2015-01-05 16:18:27 -08:00
Armon Dadgar
8eaee53661
consul: Adding more useful metrics
2015-01-05 15:13:39 -08:00
Armon Dadgar
5ad16ca00f
consul: Fixing the KVS tests
2015-01-05 15:06:53 -08:00
Armon Dadgar
200b348f69
consul: Disable tombstones as follower
2015-01-05 14:58:59 -08:00
Armon Dadgar
4f6f5ae6f0
consul: Improve log message
2015-01-05 14:43:56 -08:00
Armon Dadgar
bf40a2ac1f
consul: Reverting some index compute logic
2015-01-05 14:43:56 -08:00
Armon Dadgar
7a4b532564
consul: List Keys should handle tombstones
2015-01-05 14:43:56 -08:00
Armon Dadgar
b70dac1a62
consul: Ensure KVS List handles tombstones
2015-01-05 14:43:56 -08:00
Armon Dadgar
a350ec9379
consul: Mesure time for reapTombstones
2015-01-05 14:43:56 -08:00
Armon Dadgar
e2bfaa11a2
consul: Testing leader issue of reap command
2015-01-05 14:43:56 -08:00
Armon Dadgar
b1fefa6d90
consul: Test FSM Reap operations
2015-01-05 14:43:56 -08:00
Armon Dadgar
7736e701ca
consul: Test FSM restore of tombstones
2015-01-05 14:43:56 -08:00
Armon Dadgar
91f8ff41eb
consul: Testing tombstone snapshot
2015-01-05 14:43:55 -08:00
Armon Dadgar
41886c6af5
consul: Testing tombstone reaping
2015-01-05 14:43:55 -08:00
Armon Dadgar
bba573dfbc
consul: Test tombstone creation
2015-01-05 14:43:55 -08:00
Armon Dadgar
f9d322f346
consul: Persist tombstones
2015-01-05 14:43:55 -08:00
Armon Dadgar
9152fae109
consul: First pass at tombstone reaping
2015-01-05 14:43:55 -08:00
Armon Dadgar
0c9cbdb3d1
consul: TombstoneReapRequestType -> TombstoneRequestType
2015-01-05 14:43:55 -08:00
Armon Dadgar
8681d913ba
consul: Generate a raft operation to reap tombstones
2015-01-05 14:43:55 -08:00
Armon Dadgar
02e984e4c4
consul: Adding new request to reap tombstones
2015-01-05 14:43:55 -08:00
Armon Dadgar
9f30ffbf9a
consul: Leader should reset the tombstone GC clock
2015-01-05 14:43:55 -08:00
Armon Dadgar
fb8f7fd929
consul: Adding PendingExpiration
2015-01-05 14:43:55 -08:00
Armon Dadgar
71c2c1468d
consul: Thread Tombstone GC through
2015-01-05 14:43:55 -08:00
Armon Dadgar
ae69cbca7b
consul: Fixing accidental commit of transaction
2015-01-05 14:43:54 -08:00
Armon Dadgar
4da4e322a3
consul: Fixing tombstone creation and hinting of GC
2015-01-05 14:43:54 -08:00
Armon Dadgar
1a9431847b
consul: Adding GetTxnLimit to MDBTable
2015-01-05 14:43:54 -08:00
Armon Dadgar
2724061351
consul: Support reset of tombstone GC
2015-01-05 14:43:54 -08:00
Armon Dadgar
4430f4592d
consul: Adding TombstoneGC to track TTLs
2015-01-05 14:43:54 -08:00
Armon Dadgar
3e2bd0db2c
consul: Rename TombstoneGC to TombstoneTTL
2015-01-05 14:43:54 -08:00
Armon Dadgar
68caf9046c
consul: Create tombstones before key deletes
2015-01-05 14:43:54 -08:00
Armon Dadgar
d5369098ba
consul: Adding TombstoneGC config
2015-01-05 14:43:54 -08:00
Daniel Malon
e56b3861dc
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
6b9ace19cf
consul: Collect useful session metrics
2015-01-02 22:46:51 +05:30
Armon Dadgar
d8c65aabee
consul: Minor cleanup
2014-12-12 22:17:41 -08:00
Armon Dadgar
c0d3798154
consul: Test Session.Apply updates session timers
2014-12-12 21:54:29 -08:00
Armon Dadgar
4d0903f781
consul: Adding more tests for session TTLs
2014-12-12 21:42:59 -08:00
Armon Dadgar
5b6ce2ca4a
consul: Setup ACLs and timers after initial barrier
2014-12-12 21:42:24 -08:00
Armon Dadgar
f25566931f
consul: Make sessionTimersLock a plain mutex
2014-12-12 19:17:35 -08:00
Armon Dadgar
9b897d1134
consul: Ignore zero ttl on session
2014-12-12 19:17:04 -08:00
Armon Dadgar
990ad02f83
consul: Minor cleanups
2014-12-12 15:43:34 -08:00
Armon Dadgar
8dbfe7c9a8
Merge pull request #524 from amalaviy/session_ttl
...
Consul Session TTLs
2014-12-12 14:42:25 -08:00
Atin Malaviya
073020f6be
Add invalidateSession test
2014-12-11 06:09:53 -05:00
Atin Malaviya
5a76929ba4
Fixed clearSessionTimer, created invalidateSession, added invalid TTL test
2014-12-11 05:34:31 -05:00
Atin Malaviya
7ece29c3e0
Took out usage of snapshot SessionListTTL
2014-12-10 21:37:06 -05:00
Atin Malaviya
2de09dc2e7
Took out StateSnapshot SessionListTTL also
2014-12-10 20:53:05 -05:00
Atin Malaviya
8369b77204
Clean up code based on feedback from armon
2014-12-10 20:49:06 -05:00
Atin Malaviya
a1afc07f54
Added more tests
2014-12-10 16:43:15 -05:00
Atin Malaviya
c992c18ef0
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
b623af776b
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
a542df954f
cleanup and simplify
2014-12-06 13:08:35 +01:00
Ali Abbas
40979b1159
* use defer to avoid tracking lock
...
* simplify control flow
2014-12-06 12:32:18 +01:00