Commit graph

1270 commits

Author SHA1 Message Date
Travis Turner
ca6a0b239b Merge pull request #473 from travisturner/inverse-calls
Determine if a Call is inverse or not to correctly map to slices.
2017-04-25 12:15:12 -05:00
Travis Turner
610c7f2d54 Merge pull request #474 from travisturner/standard-time-import
During import, write to standard view as well as time views
2017-04-24 22:47:37 -05:00
Travis
cd6b3f9605
During import, write to standard view as well as time views 2017-04-24 18:43:33 -05:00
Travis
7dc06f918b
Determine if a Call is inverse or not so that the map to slices is correct. 2017-04-24 16:19:17 -05:00
Travis Turner
03aa9447a8 Merge pull request #470 from travisturner/nodestate
Implement NodeState as an attribute of *Node
2017-04-24 14:30:20 -05:00
Michael Baird
445023a04f fixed some comments 2017-04-24 14:21:50 -05:00
Michael Baird
1dc5d6f348 handle Join error 2017-04-24 14:14:16 -05:00
Michael Baird
acc4b022d7 added Join method to Static Nodeset so that Status is calculated with the local node 2017-04-24 13:57:35 -05:00
Michael Baird
5857438d8b fixed state to status 2017-04-24 13:56:26 -05:00
Travis
74bf4731f5
WIP: Implement NodeState as an attribute of *Node
NodeState is shared among nodes in the cluster (via gossip
in a gossip implementation) and cached locally in Cluster.Nodes
in order to be available to the /status endpoint.
2017-04-24 12:33:43 -05:00
Travis Turner
6fe8e2b8ab Merge pull request #471 from travisturner/database-to-index
Rename Database to Index
2017-04-24 11:34:26 -05:00
Travis
1343979308
Fixes up a few overlooked d := Index() 2017-04-24 11:17:30 -05:00
Travis
2ad322c2c7
Rename DB to Index
Rename `db.go` to `index.go` and `db_test.go` to `index_test.go`
2017-04-23 21:49:27 -05:00
Travis
2cacff8e09
Rename Index to Holder
Rename `index.go` to `holder.go` and `index_test.go` to `holder_test.go`
2017-04-23 15:59:20 -05:00
Ben Johnson
eec02179c8 Merge pull request #469 from benbjohnson/nomenclature
Rename bitmap/profile to row/column.
2017-04-21 21:25:24 -06:00
Ben Johnson
d34687121f
Rename bitmap/profile to row/column. 2017-04-21 21:23:24 -06:00
Travis Turner
ea663b980f Merge pull request #435 from travisturner/messenger-rebase
Messenger rebase
2017-04-21 14:04:27 -05:00
Travis
93f36d0e9a
adds a basic BroadcastReceiver test 2017-04-21 13:54:39 -05:00
Linh Vo
49269a5d90 Merge pull request #465 from linhvo/457-option-validation
#457 rewrite validateOptions, update frame options
2017-04-21 12:41:42 -05:00
Linh Vo
e1404cf330 change variable name of getValidOptions 2017-04-21 11:42:31 -05:00
Linh Vo
7e935dd90a rewrite custom UnmarshalJSON for postDBRequest and postFrameRequest 2017-04-21 11:37:32 -05:00
Linh Vo
9198dfab59 inverseEnabled check for bool type 2017-04-20 22:11:01 -05:00
Linh Vo
9c02edc4e3 #457 rewrite validateOptions, update frame options 2017-04-20 17:28:22 -05:00
Travis
3487bc373f
group Server interface implementation function together 2017-04-20 15:45:00 -05:00
Travis
a4921ac55a
remove leftover Receive() method from gossip implementation 2017-04-20 15:14:11 -05:00
Travis
95bd4913c8
adjusted DBOptions/FrameOptions logic and removed some unused tests 2017-04-20 10:41:17 -05:00
Travis Turner
cf7082f235 Merge pull request #462 from travisturner/import-inverseenabled
Don't try to create inverse views on Import() when inverseEnabled is …
2017-04-19 18:10:07 -05:00
Travis
6268c96264
add a client test for imports to an inverseEnabled frame 2017-04-19 18:05:22 -05:00
Travis
35383b9b9c
Don't try to create inverse views on Import() when inverseEnabled is false 2017-04-19 17:27:08 -05:00
Travis
d2e68b2980
adjust some handler comments. remove debugging line 2017-04-19 17:08:10 -05:00
Travis
5a80685052
add support for CreateDB and CreateFrame without POST data (i.e. use defaults) 2017-04-19 16:59:56 -05:00
Travis
caf35bb4d9
rename messenger_test to align with broadcast 2017-04-19 16:07:30 -05:00
Travis
dcaf7617de
changed some json tag names to Lower Camel Case to be consistent with the rest 2017-04-19 14:01:46 -05:00
Travis
25e649add8 remove cacheSize argument from NewFragment() 2017-04-19 11:41:41 -05:00
Travis
26b524a60e fix some tests and update glide.lock 2017-04-19 11:35:02 -05:00
Travis
4c8e46e17f change Config.Nodes to Config.Hosts 2017-04-19 10:37:00 -05:00
Travis
b4a69be751 Add support for Node.InternalHost.
This was required for the HTTPBroadcaster to run locally on different InternalPorts.
2017-04-19 10:37:00 -05:00
Matt Jaffee
a11daecfcb remove done TODO 2017-04-19 10:36:28 -05:00
Matt Jaffee
d10d8d94e1 simplify config structure - remove gossip sub-struct 2017-04-19 10:36:28 -05:00
Matt Jaffee
0da580d0e9 change broadcaster-type to type
It is nested under "cluster" in the config, and it controls cluster membership
as well as broadcasting, so I think type is more appropriate. Also, brevity.
2017-04-19 10:36:28 -05:00
Matt Jaffee
6e8bf5dcc1 move http messenger stuff to separate package 2017-04-19 10:36:27 -05:00
Matt Jaffee
d2621709f1 move NodeSet out of cluster.go into broadcast and messenger
HTTP implementation will be split into separate package.
2017-04-19 10:36:27 -05:00
Matt Jaffee
802fd32988 separate broadcast interfaces from implementations
interfaces are in broadcast.go and http implementations in messenger.go (gossip
is already in a separate package). Next changes will bring in the HTTP nodestate
implementation, and separate the http implementation into a separate package.
2017-04-19 10:36:27 -05:00
Matt Jaffee
c4d3bde501 move gossip code to separate package 2017-04-19 10:36:27 -05:00
Matt Jaffee
059403e673 add stateHandler interface to gossip
now it doesn't need to directly reference pilosa.Server
2017-04-19 10:36:27 -05:00
Matt Jaffee
2d139d299c remove server from handler - not used anymore 2017-04-19 10:36:27 -05:00
Matt Jaffee
bc8f7f702f add BroadcastReceiver and collapse Gossip structs into one
GossipNodeSet and GossipBroadcaster had a lot of cross dependency - I made them
the same object and had it implement all three interfaces (NodeSet, Broadcaster,
BroadcastReceiver).

I implmented an HTTPBroadcastReceiver which runs as as separate server.
BroadcastReceiver is a separate entity on the pilosa.Server object and is
started separately from broadcaster and nodeset. In the case of GossipNodeSet,
the broadcast receiver must be started before Open()ing the Nodeset, because it
doesn't actually start listening until Open() is called, but it needs the
handler set up before then.

server/server.go was heavily refactored to configure the new structs and
interfaces on the pilosa.Server object.
2017-04-19 10:36:27 -05:00
Matt Jaffee
4fc2494cc0 add panic if Atoi on DefaultGossipPort fails 2017-04-19 10:34:52 -05:00
Matt Jaffee
32d07fc9e1 rename MessageBroker -> Broadcaster 2017-04-19 10:34:52 -05:00
Matt Jaffee
4b8c2630e3 split MessageBroker.Send into SendSync and SendAsync 2017-04-19 10:34:30 -05:00