James Phillips
f4943c1613
Makes UUID regex case-insensitive.
2015-11-16 22:57:47 -08:00
James Phillips
a1e02996e5
Moves conversion of nil slices up to HTTP layer for prepared queries.
2015-11-15 17:06:00 -08:00
James Phillips
c032dee945
Adds a paranoia set of the nodes slice to nil.
2015-11-15 17:06:00 -08:00
James Phillips
a0211db3b9
Adds a test to ensure we don't return a nil slice.
2015-11-15 17:06:00 -08:00
James Phillips
375312f07a
Gets rid of some unused constants.
2015-11-15 17:06:00 -08:00
James Phillips
e6ccf5b9ed
Returns a 404 from a get or execute of a nonexistent query.
2015-11-15 17:06:00 -08:00
James Phillips
c9ef552385
Plumbs the service name back and uses agent-specific TTL settings as a fallback.
2015-11-15 17:06:00 -08:00
James Phillips
cad6938474
Adds unit tests for prepared queries and DNS, using existing tests for equivalence.
2015-11-15 17:06:00 -08:00
James Phillips
7762a828d3
Adds query metadata to prepared query execute response.
2015-11-15 17:06:00 -08:00
James Phillips
0c02365bf2
Makes an empty prepared query list an empty slice, not a nil one.
2015-11-15 17:06:00 -08:00
James Phillips
3029906254
Adds a unit test for the new RTT getDatacentersByDistance fn.
2015-11-15 17:06:00 -08:00
James Phillips
697e2f4e71
Completes FSM support for prepared queries.
2015-11-15 17:06:00 -08:00
James Phillips
124410b66c
Adds an HTTP endpoint for prepared queries.
2015-11-15 17:06:00 -08:00
James Phillips
b209c2afe2
Adds an RPC endpoint injection method for testing.
2015-11-15 17:06:00 -08:00
James Phillips
4051db4e88
Changes Lookup to Get since we don't need it (only Execute does).
2015-11-15 17:06:00 -08:00
James Phillips
095806584d
Always increments the failovers counter, even for error-ed DCs.
2015-11-15 17:06:00 -08:00
James Phillips
07361d3e96
Adds test for remote datacenter selection and query logic.
2015-11-15 17:06:00 -08:00
James Phillips
6a1c571a38
Adds a test for the server wrapper.
2015-11-15 17:06:00 -08:00
James Phillips
9428f025f9
Adds tag filter tests.
2015-11-15 17:06:00 -08:00
James Phillips
da5cf9cdf2
Adds execute tests for prepared queries.
2015-11-15 17:06:00 -08:00
James Phillips
7c8404df4c
Adds status information about failovers to query results.
2015-11-15 17:06:00 -08:00
James Phillips
dc517aa288
Removes unused ACL filter.
2015-11-15 17:06:00 -08:00
James Phillips
00ea015770
Adds execute leader forward test for prepared queries.
2015-11-15 17:06:00 -08:00
James Phillips
264e86e533
Adds a leader forwarding case for prepared queries.
2015-11-15 17:06:00 -08:00
James Phillips
bb0f136412
Adds tests for query lookup and list endpoints.
2015-11-15 17:06:00 -08:00
James Phillips
495d00c0b8
Adds query parsing unit tests.
2015-11-15 17:06:00 -08:00
James Phillips
72f6c8a261
Adds ACL cases for apply.
2015-11-15 17:06:00 -08:00
James Phillips
76a55eed53
Completes non-ACL version of apply test.
2015-11-15 17:06:00 -08:00
James Phillips
bc0fba43d8
Adds lookup and list endpoints and basic end-to-end apply test.
2015-11-15 17:06:00 -08:00
James Phillips
3b3c7c02e4
Checks for valid UUIDs before calling in to index function.
2015-11-15 17:06:00 -08:00
James Phillips
ec5249357e
Clarifies comment about name vs. ID.
2015-11-15 17:06:00 -08:00
James Phillips
61e6cbc560
Skips unknown DCs during queries and chugs along in the face of errors.
2015-11-15 17:06:00 -08:00
James Phillips
0141438e6c
Moves sort to a query-time decision and adds back the limit.
2015-11-15 17:06:00 -08:00
James Phillips
25fac70924
Adds an explicit ACL check that will fail vs. trying other DCs.
2015-11-15 17:06:00 -08:00
James Phillips
347bb847c2
Changes "not" prefix from "~" to "!".
2015-11-15 17:06:00 -08:00
James Phillips
09034a84bd
Adds prefix "prepared" to everything prepared query-related.
2015-11-15 17:06:00 -08:00
James Phillips
2183565d83
Adds basic structure for prepared queries (needs tests).
2015-11-15 17:06:00 -08:00
James Phillips
6e7faa6239
Factors code for pulling the sorted list of DCs into a common place.
2015-11-15 17:06:00 -08:00
James Phillips
6a70cb9885
Adds a better shuffle test (similar to DNS).
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
55f49d6e73
Merge pull request #1413 from hashicorp/b-coord-raft-errors
...
Adds a check for in-band error returns in the coordinate RaftApply.
2015-11-15 17:05:19 -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
04dffd7c46
Adds a check for in-band error returns in the coordinate RaftApply.
2015-11-15 16:50:46 -08:00
James Phillips
5b0697fc67
Changes batch update failure to a WARN since it's nbd.
2015-10-29 09:26:24 -07:00
James Phillips
eb4bfa3411
Prevents agents from considering Raft information when doing sync checks.
2015-10-28 14:32:00 -07:00
James Phillips
7c44a9b6c9
Fixes a bad error message.
2015-10-28 12:40:47 -07:00
James Phillips
5449096bc2
Adds a check for the minimum version as well.
2015-10-27 15:56:36 -07:00
James Phillips
1c678effde
Sets the ignore flag on coordinate update Raft log entries.
2015-10-27 14:44:34 -07:00
James Phillips
c1305a08ea
Makes the version upshift code look at the correct version field.
2015-10-27 14:44:34 -07:00
James Phillips
b91e2d3a97
Completes rebase of network coordinates to new memdb.
2015-10-23 15:23:01 -07:00
James Phillips
132e1d813b
Fixes configs now that Serf always caches coordinates.
2015-10-23 15:23:01 -07:00
James Phillips
aea2194ce3
Makes the default protocol 2 and lets 3 interoperate with 2.
2015-10-23 15:23:01 -07:00
James Phillips
7dd88f7de6
Zeroes out the height when testing exact distances.
2015-10-23 15:23:01 -07:00
James Phillips
7d5e29f6c6
Cleans up after latest rebase.
2015-10-23 15:23:01 -07:00
James Phillips
a74bdcba49
Moves sorting up into coordinate endpoint HTTP handlers.
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
e900fef95a
Fixes bad name for DC forwarding of Coordinate.Get.
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
019f656f39
Switches to the median over all DC nodes with known coordinates.
2015-10-23 15:23:01 -07:00
James Phillips
5609b2e889
Adds explicit check for empty node in source parameter.
2015-10-23 15:23:01 -07:00
James Phillips
5d75ce7852
Moves disable checks down into the sort routine.
2015-10-23 15:23:01 -07:00
James Phillips
59b710894d
Adds tests for HTTP interface. Removes a stray mark.
2015-10-23 15:23:01 -07:00
James Phillips
033e8e6625
Adds sort of DCs in catalog queries based on RTT. Cleans up.
...
* Makes the catalog endpoint respect disabling coordinates for all
RTT-sorting query types.
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
9ba9a708f6
Scales coordinate sends to hit a fixed aggregate rate across the cluster.
2015-10-23 15:23:01 -07:00
James Phillips
d8b8a3719f
Simplifies the batching function and adds some comments.
2015-10-23 15:23:01 -07:00
James Phillips
a93a1a68b6
Adds snapshot save and restore of coordinates.
2015-10-23 15:23:01 -07:00
James Phillips
f71c79c53f
Does some small cleanups based on PR feedback.
...
* Holds coordinate updates in map and gets rid of the update channel.
* Cleans up config variables a bit.
2015-10-23 15:23:01 -07:00
James Phillips
1222772452
Hardens Consul from bad coordinates from other nodes.
2015-10-23 15:23:01 -07:00
James Phillips
e02ae7b6b4
Takes the node name out of the coordinate get call.
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
b6c31bdf2f
Flips the sense of the coordinate enable option.
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
James Phillips
ac4185b888
Merges config changes after rebase.
2015-10-23 15:23:01 -07:00
Derek Chiang
b805215237
Address comments
2015-10-23 15:23:01 -07:00
Derek Chiang
7d70d8b1d7
Add test for the GetWAN endpoint
2015-10-23 15:23:01 -07:00
Derek Chiang
e03a9d4c38
Add an endpoint for getting WAN coordinates
2015-10-23 15:23:01 -07:00
Derek Chiang
213f5a15e6
Fix tests
2015-10-23 15:23:01 -07:00
Derek Chiang
eb599a1745
Address comments
2015-10-23 15:23:01 -07:00
Derek Chiang
66d5a129bf
Add state store tests
2015-10-23 15:23:01 -07:00
Derek Chiang
88550714ca
Add more tests
2015-10-23 15:23:01 -07:00
Derek Chiang
139c9240ea
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
979c0c6c9e
Improve a test
2015-10-23 15:23:01 -07:00
Derek Chiang
b2cff43bb5
Complete logic for sending coordinates
2015-10-23 15:23:01 -07:00
Derek Chiang
019da1dae4
Fix tests
2015-10-23 15:23:01 -07:00
Derek Chiang
66b210afcb
Some fixes
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
aae298a179
Cleans up a little whitespace with go fmt.
2015-10-20 18:41:05 -07:00
James Phillips
54535d45d7
Gets rid of error prefixing in leader.go.
2015-10-20 13:37:11 -07:00
James Phillips
eb93d1d9ad
Puts all restore operations into a single transaction and optimizes watches.
2015-10-19 23:06:59 -07:00
James Phillips
96c5c9de2b
Gets rid of unique constraint on sessions index in session_checks.
2015-10-19 17:41:50 -07:00
James Phillips
3e93055cef
Switches sessions over to UUIDFieldIndex.
2015-10-19 17:09:02 -07:00
James Phillips
d905804514
Adds a special case for fill KVS listings to avoid a tombstone scan.
2015-10-19 16:22:27 -07:00
James Phillips
22a46f7bf5
Makes the iterator naming more consistent.
2015-10-19 15:51:11 -07:00
James Phillips
9a2fdff4c4
Converts sessions and ACLs over to iterators.
2015-10-19 14:56:22 -07:00
James Phillips
d459d94b3f
Converts KVS snapshot over to iterator.
2015-10-19 14:07:57 -07:00