Commit Graph

57 Commits (914a9a1de675b8e6e3425aab79d1ed6311185d88)

Author SHA1 Message Date
Jason Wilder 8456169855 Update backup/restore to use MetaClient 2016-01-21 15:32:35 -05:00
David Norton 2e8cfce7be convert CQ service to new meta client 2016-01-21 15:32:03 -05:00
Jason Wilder 19feed1d13 Fix go vet warnings 2016-01-21 15:30:44 -05:00
Jason Wilder b7e1ecf471 Close idle MetaClient http connections
Prevents too many open files when running tests
2016-01-21 15:30:09 -05:00
Jason Wilder bbe13c2818 Ensure HTTP and TCP bind addresses have hostnames
If a bind-address of :8088 is used, cluster nodes cannot
connect to those nodes because there is no hostname portion
of the address.  When we see a bind-address without a hostname,
use the os hostname or localhost if that fails if it is not specified
in the config already.
2016-01-21 15:28:34 -05:00
David Norton 58c4474f53 retry AcquireLease on error 2016-01-21 15:28:34 -05:00
Cory LaNou e36eaa0378 fix vet warnings 2016-01-21 15:28:34 -05:00
David Norton a2057415d8 meta lease retry 2016-01-21 15:28:34 -05:00
David Norton 38f09178ef add leases to meta service and client 2016-01-21 15:28:33 -05:00
Paul Dix 0341bc3532 Update meta client and retention service.
* Remove VisitRetentionPolicies from meta client.
* Update retention enforcer to run on every data node.
2016-01-21 15:28:33 -05:00
Paul Dix 70de1a7690 Update meta service/client and shard precreator.
* Wire up DataNode(id uint64).
* Remove IsLeader test on precreator.
* Clean up error in client if the server returns a non-200 on get snapshot.
2016-01-21 15:28:33 -05:00
Paul Dix 9ea8ff357e Wire up meta service and client delete data node 2016-01-21 15:28:33 -05:00
Paul Dix 7b71b66e31 Update meta service, meta client, and httpd handler
* Improve the ping endpoint so that it can optionally check for leader agreement across all meta servers
* Add Ping method to the meta client
* Fix ClusterID tests
* Remove WaitForLeader from meta client and remove unnecessary references to it
2016-01-21 15:28:33 -05:00
Paul Dix 101f93f1db Add meta service test to ensure cluster id persisted 2016-01-21 15:28:33 -05:00
Paul Dix 2f07fe88ca Update meta client to use data method to protect cache 2016-01-21 15:28:33 -05:00
Paul Dix 101ab32571 Fix meta-service for server integration tests
* Updated CreateShardGroup to not return an error if it already exists so it's idempotent
* Removed old test making sure you can't delete the default RP. You can delete it now, there was no reason to disallow it.
* Wired up the UpdateRetentionPolicy functionality
2016-01-21 15:28:33 -05:00
Cory LaNou 2715d5ef72 add clusterID and tests 2016-01-21 15:28:33 -05:00
Paul Dix fb9181d240 Fix meta-service build 2016-01-21 15:28:33 -05:00
Paul Dix bfcf5d63ce Clean up meta service close. 2016-01-21 15:28:33 -05:00
David Norton f23fea81b3 take rlock and grab ref to data 2016-01-21 15:28:33 -05:00
David Norton d1fcf1f7a1 wire up meta client shard methods 2016-01-21 15:28:33 -05:00
Paul Dix f385945058 Update Server to work with new metaservice/client 2016-01-21 15:28:33 -05:00
Cory LaNou d0cad8a022 add subscription meta client test 2016-01-21 15:28:33 -05:00
Cory LaNou 853f4bf70e add continuous query meta client tests 2016-01-21 15:28:33 -05:00
Cory LaNou a41222befb add continuous query/subscription methods to meta client 2016-01-21 15:28:33 -05:00
Cory LaNou 7c41c0e02f add user tests for meta client 2016-01-21 15:28:33 -05:00
Paul Dix 9fd9a666bf Add CreateDataNode to meta client/service 2016-01-21 15:28:33 -05:00
Cory LaNou 53042ac56d bringing back client user methods 2016-01-21 15:28:33 -05:00
Paul Dix 13e32f6880 Update close handling on meta service 2016-01-21 15:28:33 -05:00
Paul Dix d2e3cf519c Cleanup host/port in meta service 2016-01-21 15:28:33 -05:00
Paul Dix e906107bea Update meta service to handle host names
This ensures that the meta service will gracefully handle host name changes in a single server configuration.

It also changes the raft setup to use the user specified bind address (and thus hostname) instead of pulling it off the listener, which returns the IP. This will enable users to have hostnames listed instead of IPs in the megastore, making it easier to read. This also means that underlying IPs can change without causing problems in a cluster.
2016-01-21 15:28:32 -05:00
Paul Dix 0f36fbe5ce Add comment to client 2016-01-21 15:28:32 -05:00
Paul Dix 1632980eb8 Cleanup PrintLns in meta client 2016-01-21 15:28:32 -05:00
Paul Dix eda4a6eda0 Wire up meta service and client recovery.
* increase sleep on error in client exec in case a server went down so we don't max out retries before a new leader gets elected
* update and add close logic to service, handler, raft state, and the client
2016-01-21 15:28:32 -05:00
David Norton 5c20e16406 wire up some RP stuff in meta client / service 2016-01-21 15:28:32 -05:00
David Norton c84e9b38d0 fix unit tests after backing out proto change 2016-01-21 15:28:32 -05:00
David Norton f91fd0b8ae back out proto struct changes 2016-01-21 15:28:32 -05:00
Paul Dix e9e63b573b Cycle to next server on failure in meta client 2016-01-21 15:28:32 -05:00
Paul Dix 1e63fa4e2c Enforce max retries on meta client 2016-01-21 15:28:32 -05:00
Paul Dix 90a08154c5 Wire up redirects to execute against raft leader 2016-01-21 15:28:32 -05:00
David Norton c7721c8948 don't clone database infos in client 2016-01-21 15:28:32 -05:00
David Norton 6561b702b8 remove commented out test code 2016-01-21 15:28:32 -05:00
David Norton f80f860ee5 temporarily rename statement_executor_test.go 2016-01-21 15:28:32 -05:00
David Norton 1d6878c37c wire up some meta client funcs and tests 2016-01-21 15:28:32 -05:00
Paul Dix c9d82ad0ad Wire up meta service functionality
* Add dir, hostname, and bind address to top level config since it applies to services other than meta
* Add enabled flags to example toml for data and meta services
* Wire up add/remove raft peers and meta servers to meta service
* Update DROP SERVER to be either DROP META SERVER or DROP DATA SERVER
* Bring over statement executor from old meta package
* Start meta service client implementation
* Update meta service test to use the client
* Wire up node ID/meta server storage information
2016-01-21 15:28:32 -05:00
David Norton 688bc7a2f1 fix go vet error 2016-01-21 15:28:32 -05:00
Cory LaNou d69c5f853f set store peers when starting up from config 2016-01-21 15:28:32 -05:00
David Norton 79d81a2448 add meta service tests & bug fixes 2016-01-21 15:28:32 -05:00
Cory LaNou 9ec7a710c9 some misc refactoring on influxd startup 2016-01-21 15:28:32 -05:00
Cory LaNou 8d878fff91 buildable meta -> services/meta 2016-01-21 15:28:32 -05:00