Sean Chittenden
7482a9207d
Chase casting types.CheckID to a string into the state_store.
...
It turns out the indexer can only use strings as arguments when
creating a query. Cast `types.CheckID` to a `string` before calling
into `memdb`.
Ideally the indexer would be smart enough to do this at compile-time,
but I need to look into how to do this without reflection and the
runtime package. For the time being statically cast `types.CheckID`
to a `string` at the call sites.
2016-06-07 16:59:02 -04:00
Sean Chittenden
ff45f8c8ff
Revert "Move structs.CheckID
to a new top-level package, types
."
...
This reverts commit 2bbd52e3b44ff1b60939a8400264d534662d6d51.
2016-06-07 16:59:02 -04:00
Sean Chittenden
a4554b945c
Move structs.CheckID
to a new top-level package, types
.
...
Per discussion w/ @slackpad, move this type to its own top-level package
2016-06-07 16:59:02 -04:00
Sean Chittenden
cd68cd3868
Move structs.CheckID
to a new top-level package, types
.
...
Per discussion w/ @slackpad, move this type to its own top-level package
2016-06-07 16:59:02 -04:00
Sean Chittenden
0857e93d0b
Float a type balloon. Some strings are square pegs in round holes.
...
This experiment was brought about because of variable naming
confusion where name and checkIDs were interchanged. Gave CheckID
an Qualified Type Name and chased downstream changes.
2016-06-07 16:59:02 -04:00
James Phillips
a11f32a1da
Adds a get-tree verb to KV transaction operations.
2016-05-13 16:57:39 -07:00
James Phillips
2649a6336e
Adds a read-only optimized path for transactions.
2016-05-13 00:34:05 -07:00
James Phillips
dc662f7e35
Refactors TxnRequest/TxnResponse into a form that will allow non-KV ops.
...
This isn't needed/used yet, but it's a good hook to get in there so we
can add more atomic operations in the future. The Go API hides this detail
so that feels like a KV-specific API. The implications on the REST API are
pretty minimal.
2016-05-11 01:39:10 -07:00
James Phillips
471160d8f0
Performs basic plumbing of KVS transactions through all the layers.
2016-05-09 22:15:49 -07:00
James Phillips
dca00c96f7
Adds state store support for atomic KVS ops.
2016-05-05 15:46:59 -07:00
James Phillips
3f340716fd
Adds a clone method to HealthCheck and uses that in local.go.
2016-04-11 00:05:39 -07:00
Sean Chittenden
d1ef4ec7e2
Use rand.Int31n()
to get power of two optimization
...
In cases where i+1 is a power of two, skip one modulo operation.
2016-03-23 16:00:39 -07:00
James Phillips
79bd1fd4bb
Sets up config for more address tags down the road, renames struct members.
2016-02-07 10:37:34 -08:00
Evan Gilman
71cf39b5f8
Use a map for additional node addresses
2016-02-06 23:01:45 -08:00
Evan Gilman
369e501dd5
Store WanAddress on Node
2016-02-06 23:01:45 -08:00
James Phillips
09034a84bd
Adds prefix "prepared" to everything prepared query-related.
2015-11-15 17:06:00 -08:00
James Phillips
781f9611e8
Changes structs and state store for prepared queries.
2015-11-15 17:06:00 -08:00
James Phillips
26cf0a2974
Extends the session TTL max to 24 hours, and adds a warning to the docs.
2015-11-15 16:51:00 -08:00
James Phillips
eb4bfa3411
Prevents agents from considering Raft information when doing sync checks.
2015-10-28 14:32:00 -07:00
James Phillips
b91e2d3a97
Completes rebase of network coordinates to new memdb.
2015-10-23 15:23:01 -07:00
James Phillips
a2bcef00a0
Adds endpoints for raw network coordinates.
2015-10-23 15:23:01 -07:00
James Phillips
ee1cf1e13b
Adds distance sorting to health endpoint. Cleans up unit tests.
2015-10-23 15:23:01 -07:00
James Phillips
b63909cf67
Adds coordinate sorting support to catalog queries for nodes and service nodes.
2015-10-23 15:23:01 -07:00
James Phillips
acb0dce829
Moves batching down into the state store and changes it to fail-fast.
...
* A batch of updates is done all in a single transaction.
* We no longer need to get an update to kick things, there's a periodic flush.
* If incoming updates overwhelm the configured flush rate they will be dumped with an error.
2015-10-23 15:23:01 -07:00
James Phillips
9c069c5031
Removes one more WAN leftover.
2015-10-23 15:23:01 -07:00
James Phillips
edb9a119e2
Does a clean up pass on the Consul side.
2015-10-23 15:23:01 -07:00
Derek Chiang
b805215237
Address comments
2015-10-23 15:23:01 -07:00
Derek Chiang
eb599a1745
Address comments
2015-10-23 15:23:01 -07:00
Derek Chiang
23c08aeeb4
Use IndexedCoordinate instead
2015-10-23 15:23:01 -07:00
Derek Chiang
def0a2f5ab
Change GET API a little bit
2015-10-23 15:23:01 -07:00
Derek Chiang
b5bbe2bcfa
Adding tests and stuff
2015-10-23 15:23:01 -07:00
Derek Chiang
e54c8f2ea0
Start adding stuff
2015-10-23 15:23:01 -07:00
James Phillips
498c4a989a
Converts nodes, services, checks to iterators duing dumps; fixes tag drift bug.
...
Realized that the conversions ServiceNode <-> NodeService were incomplete in a
few places so centralized those and added some tests.
2015-10-19 13:55:35 -07:00
James Phillips
e285af5d1c
Does some go fmt after latest round of changes.
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
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
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
6e7c3e3579
consul/state: basic acl set/get/delete
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
b2dc11fed4
consul/state: basic k/v operations
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
9fe029abc3
consul/state: return highest index for queries with compound results
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
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
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
Shawn Cook
99be758411
Rename EnableTagOverride and update formatting
2015-09-11 08:35:29 -07:00
Shawn Cook
f6814c89ed
EnableTagDrift in NodeService struct
2015-08-18 10:34:55 -07:00