Commit graph

232 commits

Author SHA1 Message Date
Matt Jaffee
bcb6942c80
continue simplifying memberset and pilosa setup
since the gossip MemberSet has access to Server, it wasn't really necessary to
pass it a Node object when calling Open on it from Cluster. The end goal is to
have it be removed from Cluster entirely, and have it be Opened externally, and
this is a step toward that.

Exposing Node method on Server doesn't really expose any more than was already
there as the same info can be gotten from LocalStatus with a bit of type
casting. I figured adding the method was a little cleaner, and we could collapse
all the functionality when the dust has settled.

The Cluster.open method has been broken into two parts - one of which happens
earlier (at NewServer time), and the other will eventually just be "waiting to
make sure we've joined the cluster". Right now it's calling Memberset.Open, and
then waiting to make sure the cluster has been joined.
2018-06-26 14:36:05 -05:00
Matt Jaffee
d9b4cfacb0
Merge branch 'develop' into fix-translate-merged 2018-06-26 12:51:41 -05:00
Matt Jaffee
7190fe71e5
fix comment 2018-06-26 11:23:31 -05:00
Matt Jaffee
ee37152cd5
consolidate gossipEventReceiver into gossip member set
pilosa.Server now implements StatusHandler and EventReceiver and needs only
start a gossip memberset. A gossip member set now takes a server as an argument
explicitly and the maze of handlers and receivers and the starting sequence is
somewhat simplified.

Server now trivially implements EventHandler by passing the call along to its
Cluster object which has the actual implementation. This means that less things
will need to refer to cluster.
2018-06-26 07:50:33 -05:00
Matt Jaffee
b2dd9c50ca
Merge branch 'develop' into fix-translate 2018-06-25 12:33:52 -05:00
Ben Johnson
8f3189c1b3
Translation fixes, error checking. 2018-06-22 08:12:35 -06:00
Matt Jaffee
504309e594
rewrite some tests to not be skipped 2018-06-21 15:06:22 -05:00
Cody Soyland
c6db3974bc WIP API refactor 2018-06-21 13:51:31 -05:00
Matt Jaffee
343880e0ad
remove broadcaster from server 2018-06-20 13:13:35 -05:00
Matt Jaffee
d529ee3ccc
unexport Server.TranslateFile 2018-06-20 11:26:33 -05:00
Matt Jaffee
44d3e87d4e
remove remaining external ref to Server.Holder and unexport holder 2018-06-20 11:21:03 -05:00
Matt Jaffee
7a05f32a17
remove NewAttrStore field on Server - unused 2018-06-20 11:14:09 -05:00
Matt Jaffee
69b1f2ea97
make behavior equivalent to pre-change to stop test from failing 2018-06-19 17:02:44 -05:00
Matt Jaffee
33b3a14b24
move static cluster setup logic into Server/Cluster 2018-06-19 16:28:54 -05:00
Matt Jaffee
719241f0d9
move some silly comments around 2018-06-19 13:22:08 -05:00
Matt Jaffee
56ed9bfbe1
remove broadcaster methods from gossip- don't use sendAsync anywhere 2018-06-18 18:47:29 -05:00
Ben Johnson
060254e0d6
Key-to-ID Translation
This commit adds id-to-key translation to make it easier for users
to provide non-integer identifiers for rows & columns.
2018-06-15 16:45:05 -06:00
Cody Soyland
415b4de110
Merge branch 'develop' into http-inversion-2 2018-06-13 21:38:30 -05:00
Cody Soyland
fba865fc6c Remove more net/http references 2018-06-13 16:50:44 -05:00
Travis Turner
fe167ea78c
un-export some top-level functions 2018-06-13 16:44:24 -05:00
Travis Turner
8021fc389b
un-export (some) Cluster methods 2018-06-13 15:42:35 -05:00
Cody Soyland
37153daf15 Remove commented code 2018-06-13 09:21:25 -05:00
Cody Soyland
952db994c7 Fix mistake in interface name 2018-06-13 09:21:15 -05:00
Cody Soyland
ecbbd31b4e Improve naming 2018-06-13 09:18:50 -05:00
Cody Soyland
f2c104dfef Migrate HTTP handler and client into http subpackage. 2018-06-12 13:22:40 -05:00
Travis Turner
cb7487e34d
change all instances of internal Frame to Field 2018-06-05 23:24:24 -05:00
Travis Turner
9db359d34a
GoRename Frame to Field in holder.go 2018-06-05 22:36:19 -05:00
Travis Turner
3531c128c4
GoRename Frame to Field in index.go 2018-06-05 22:33:48 -05:00
Travis Turner
1d3c4d6fcb
first pass at GoRename Frame to Field in frame.go 2018-06-05 17:52:22 -05:00
Travis Turner
50f8ea3921
remove CreateField and DeleteField from API 2018-06-05 13:58:28 -05:00
Travis Turner
a6ae39d0b0
remove cases of Field from frame.go 2018-06-04 17:33:55 -05:00
Travis Turner
54d94f1aca
rename CreateField to createBSIGroup 2018-06-04 17:33:55 -05:00
Cody Soyland
77a5c6f811 Merge branch 'master' into cors-support 2018-05-29 08:18:26 -05:00
Matt Jaffee
47f7beaecc
WIP removing inverse 2018-05-25 17:18:38 -05:00
Cody Soyland
1a9beb0916 Add CORS support to handler. 2018-05-24 08:42:34 -05:00
Cody Soyland
422d901e44 Close HTTP handler gracefully (Fixes #1018)
An earlier version of this patch (PR #1019) was erroneously removed during a merge.
2018-05-17 15:47:56 -05:00
Matt Jaffee
616545cd5c
remove input definition, add install-stringer to Makefile
also removes one line of unreachable code in cluster.go (unrelated)
2018-05-14 17:14:20 -05:00
Alan Bernstein
0ba14600da Wrap a few more errors 2018-05-10 12:08:46 -05:00
Travis Turner
43ec69d08b
API.URI was not being used. removed it. 2018-05-09 09:32:18 -05:00
Yuce Tekol
24c9699432
Merge pull request #1242 from yuce/dont-create-tilde-directory-when-running-tests
Make sure ~ is expanded in NewServer; BroadcastReceiver uses temp path
2018-05-09 09:53:02 +03:00
Yuce Tekol
0244f4b51d
Added dataDir field to Server 2018-05-09 01:27:42 +03:00
Matt Jaffee
0d3df71e37
add URI argument to InternalClient.SendMessage
passing values through context is error prone and usually bad practice.
2018-05-07 12:40:37 -07:00
Cody Soyland
85f90ac8fc Log time/version to startup log (Fixes #391) 2018-05-03 16:11:43 -05:00
Yuce Tekol
beaa69a7bd
Made expandDirName generic. 2018-05-03 00:07:56 +03:00
Yuce Tekol
806437bd23
Make sure ~ is expanded in NewServer; BroadcastReceiver uses temp path 2018-05-02 17:07:17 +03:00
Matthew Jaffee
57ac2f40aa
fix nil client bug in monitorAntiEntropy (and test)
also fix bug where broadcast_test tried to listen on localhost:10101
2018-04-28 09:12:59 -05:00
Yuce Tekol
75bd93d895
Fixes crash due to server.diagnostics.server not set 2018-04-27 15:11:15 +03:00
Matthew Jaffee
f9ff20689a
remove holder.Peek, combine with HasData, move server logic
Server initializing happens more in NewServer than Open now - expecting to
continue this trend. goal was to remove remoteClient from Server (since it has a
defaultClient) as well, but we'll have to refactor the client usage in fragment
and frame first.
2018-04-24 08:44:58 -05:00
Matthew Jaffee
9f1720f01d
unexport stuff in pilosa.Server
refactor gossip.NewGossipMemberset to not take Server
2018-04-23 15:12:23 -05:00
Matthew Jaffee
28acc29a10
refactoring pilosa/server
trying to separate internal an external concerns in pilosa.Server - it should
handle Cluster, Holder, etc. while pilosa/server handles things with external
deps - e.g. Logger, Stats, Handler, etc. Using functional options in
pilosa.Server now.
2018-04-23 13:35:39 -05:00