Commit graph

168 commits

Author SHA1 Message Date
Travis Turner
5c52e48b12
change NewStandardLogger() to only take an io.Writer 2018-03-27 10:30:41 -05:00
Travis Turner
36ce12da59
This commit adds a Close() method to the pilosa.Logger interface,
and it moves the file handling (open/close) out of the main Command and
into the interface implementation. The Logger implementations both have
a `Logger()` method which returns their internal logger (`*log.Logger`).
This is because the gossip setup (memberlist) needs a `*log.Logger` for
its configuration.
2018-03-27 08:40:05 -05:00
Travis Turner
fd8040e699
remove LogOutput and instead close any logger that implements io.Closer 2018-03-27 08:40:05 -05:00
Travis Turner
d113ebe147
Support --verbose logging 2018-03-27 08:40:05 -05:00
Travis Turner
9a2aeac6f8
Clean up logger; make it honor --log-path flag.
Add functional options to NewGossipMemberSet.
2018-03-27 08:40:04 -05:00
Travis Turner
5a95a49c83
Merge pull request #1179 from travisturner/remove-default-gossip-seed
Default gossip seed should be empty instead of local bind address
2018-03-26 10:21:02 -05:00
Travis Turner
7dd41399cb
Merge pull request #1169 from travisturner/attrstore-interface
put BoltDB behind AttrStore interface
2018-03-23 16:39:19 -05:00
Travis Turner
0ca7cfe498
Change Seeds() to GetBindAddr() to clarify GossipMemberSet testing. 2018-03-23 16:34:19 -05:00
Cody Soyland
f9efa6c579 Use type func(string) AttrStore in place of interface AttrStoreGenerator for simplicity 2018-03-23 13:57:29 -05:00
Cody Soyland
4e1ff7c86f Merge branch 'cluster-resize' into webui-interface 2018-03-19 14:02:01 -05:00
Travis Turner
b66bedd1ef
put BoltDB behind AttrStore interface 2018-03-19 11:30:41 -05:00
Cody Soyland
b36e8c7a14 Combine two subpackages and consolidate doc.go into filestystem.go for simplicity. 2018-03-19 08:39:17 -05:00
Cody Soyland
f4c1e0c492 Refactor gopsutil into SystemInfo interface/subpackage for dependency injection. 2018-03-13 11:41:45 -05:00
Travis Turner
1cc45b22a2
Change Config.Coordinator from URI to bool 2018-03-08 12:42:24 -06:00
Cody Soyland
0a6f2d07f6 Move statik filesystem implemention to subpackage of statik package. 2018-03-08 08:38:29 -06:00
Cody Soyland
5a2e1c3703
Merge pull request #1162 from codysoyland/cluster-resize-remove-without-replicas
Proper error handling when attempting to remove node when there aren't enough replicas
2018-03-07 13:51:44 -06:00
Travis Turner
d6896ea0a5
rename StaticFileSystem to FileSystem. re-org statik files 2018-03-07 11:12:05 -06:00
Cody Soyland
42682e12a8 Address code review: Fix error handling and add comment 2018-03-07 09:45:27 -06:00
Travis Turner
e03dee9386
put Statik behind an interface 2018-03-06 17:02:08 -06:00
Cody Soyland
d28a30ebd4 Proper error handling when attempting to remove node when there aren't enough replicas 2018-03-06 15:11:46 -06:00
Travis Turner
1233226aa0
remove Join method from StaticMemberSet struct 2018-03-06 12:18:44 -06:00
Travis Turner
10ebb6ab11
put GCNotify behind an inerface 2018-02-26 10:30:51 -06:00
Travis Turner
29dcfd06da
Merge pull request #1117 from travisturner/cluster-resize-handle-error
replace swallowed error with log entry
2018-02-23 16:37:42 -06:00
Cody Soyland
dbe917c9f4 Merge branch 'cluster-resize' into redundant-gossip-seeds 2018-02-23 09:20:28 -06:00
Cody Soyland
a23fe86839 Convert gossip seed string to slice 2018-02-22 13:14:45 -06:00
Travis Turner
52edeb72b4
add validation around node-remove conditions 2018-02-22 12:15:27 -06:00
Cody Soyland
fc6b0ea0e8 Add support for comma-separated list of gossip seeds for redundancy. 2018-02-22 11:45:50 -06:00
Travis Turner
6776fa81ef
Merge branch 'master' into cluster-resize-merging 2018-02-16 11:13:40 -06:00
Travis Turner
666fe22ecb
replace swallowed error with log entry 2018-02-15 12:11:27 -06:00
Yuce Tekol
c2d16f44e3
Spread recalculate caches to all nodes. Fixes #1069 2018-02-12 04:12:35 +03:00
Travis Turner
1085be6582
fix bug in NewServerCluster where each host was its own coordinator 2018-02-08 15:11:51 -06:00
Travis Turner
9085c03ce8
Changes configuration cluster.type (string) to cluster.disabled (bool) 2018-02-08 12:40:46 -06:00
Cody Soyland
e9bd1c7f0d Add license notice to two files 2018-02-06 14:15:37 -06:00
Travis Turner
2d5daaf78d
Merge branch 'master' into cluster-resize 2018-02-06 10:06:15 -06:00
Travis Turner
668689e119
ensure that the license is prepended to all source files 2018-02-05 16:35:28 -06:00
Cody Soyland
6756d97089 Enable diagnostics via build constraint to prevent from running in tests 2018-02-02 17:32:14 -06:00
Travis Turner
216ba7a41e
Use NodeID instead of URI for node identification 2018-02-02 15:58:46 -06:00
Travis Turner
d3590098f6
perform FrameRestore on both nodes in test cluster 2018-01-29 11:22:28 -06:00
Travis Turner
f12527d535
put a mutex around Cluster.State 2018-01-23 16:00:32 -06:00
Travis Turner
1b0fcb0e5a
move cluster Main test helpers to the test package 2018-01-23 12:38:14 -06:00
Travis Turner
2fdc8048c5
Merge branch 'master' into cluster-resize 2018-01-23 12:17:40 -06:00
Yuce Tekol
ee503c455a
Merge pull request #1056 from yuce/1045-use-multinode-cluster-in-tests
Uses NewServerCluster method in tests
2018-01-23 19:12:25 +03:00
Travis Turner
c0fab2bcee
Merge branch 'master' into cluster-resize 2018-01-17 12:55:12 -06:00
Yuce Tekol
be24428367
Uses NewServerCluster method in tests 2018-01-17 14:43:58 +03:00
Ben Johnson
234d40fe96
Enterprise support. 2018-01-16 11:21:01 -06:00
Matthew Jaffee
59bd2da93f
fix a number of data races
datadog statsd client contained a race condition - was fixed in master

Server.Logger contained a race where multiple loggers could write to the same
output io.Writer

TestMain_FrameRestore contained a race where it tried to change a cluster's
nodes while it was running (which conflicted with antiEntropy reading that
state).
2018-01-09 13:31:17 -06:00
Travis Turner
149e8124db
disable diagnostics in server tests 2018-01-02 15:10:02 -06:00
Travis Turner
d2d0756f4a
Define default config values for pilosa server in NewConfig rather than
flags. Based on work done in #885.
2017-12-15 15:07:02 -06:00
Travis Turner
78cddbd0c7
Add the rest of the available memberlist configuration options
into pilosa.Config.Gossip.
2017-12-15 12:37:51 -06:00
Travis Turner
0342da92bb
WIP: add tests for cluster resize
This commit adds support for allocating a gossip transport
and a server listener prior to opening server (and cluster).
Doing that allows tests to use a dynamically allocated port
by supplying bind port: 0.
2017-12-12 16:27:47 -06:00