Commit graph

5503 commits

Author SHA1 Message Date
Matt Jaffee
ab34df351d
add Gopkg.lock as a dependency for vendor target 2018-12-18 12:27:32 -06:00
Matthew Jaffee
c1b0a9e2a0
Merge branch 'master' into patch-2 2018-12-18 11:18:16 -06:00
Travis Turner
95f05ca4d0
WIP: allow translate log entry buffer to grow
In the case where a translate log entry contained
many key/id pairs, it was possible for the read
buffer (which was allocated at 65536 bytes) to
fail to handle it. This happened when the serialized
LogEntry was larger than 65536 bytes.

This PR adds logic which returns a custom error called
ErrTranslateReadTargetUndersized notifying the reader
to reallocate a larger read buffer and try the read
again.

TODO:
- [ ] Add a max buffer size check to prevent this from doubling the
buffer size with no limit.
- [ ] Add tests.
2018-12-18 09:26:26 -06:00
Travis Turner
6784ab8ac1
Merge pull request #1785 from travisturner/cluster-resize-fix
Cluster resize fix
2018-12-18 09:25:52 -06:00
WaaX
827e5ea5fc
Removed the mention of measurements
Change `measurements` field to `patients index`
Fix import command by removing `-f measurements`
2018-12-18 09:34:52 -05:00
Travis Turner
ca2241731d
fix tracing message. prevent reallocation of availableShards 2018-12-18 08:34:48 -06:00
Travis Turner
d28170ddc6
Syncs AvailableShards when handling a ResizeInstruction.
There was a situation where availableShards on a new
node were not in sync with the cluster, so queries
following a resize were incorrect.
- Start a one-node cluster.
- Write data to shards 0 and 1
- Start a second node.
In the case where the hash algo was moving shard 0 to
node1, then node1 only knew about shard 0, so queries
to node1 would be incomplete.

This PR modifies the ResizeInstruction message to replace
`Schema` with `NodeStatus` (which contains both `Schema` and
`AvailableShards`). So now when a resize instruction is received,
the receiving node is able to sync its schema and availableShards.
2018-12-18 08:34:48 -06:00
Travis Turner
84fddbc67f
Replace the /fragment/data endpoint to support cluster resizing 2018-12-18 08:34:47 -06:00
Matthew Jaffee
047b5874ee
Merge pull request #1788 from jaffee/1691-existence-namespace
1691 existence namespace
2018-12-17 17:02:12 -06:00
Matt Jaffee
ef7f04c09d
schema endpoint doesn't return internal fields 2018-12-17 16:01:32 -06:00
Matt Jaffee
45cd48c1b7
change exists field to _exists 2018-12-17 15:44:50 -06:00
Matthew Jaffee
506e9a2db7
Merge pull request #1786 from jaffee/remove-client-timeout
revert client Timeout addition
2018-12-14 17:09:52 -06:00
Matt Jaffee
2047ebe377
revert client Timeout addition
suspect that this is somehow causing "cannot assign requested address" bugs for
some users. removing since it wasn't a necessary part of the deadlock fix, but
just seemed like a prudent thing to have.
2018-12-14 11:31:23 -06:00
Matthew Jaffee
a2b3cc4a38
Merge pull request #1773 from benbjohnson/query-cancel
Cancel queries on Context.Done()
2018-12-13 17:17:24 -06:00
Ben Johnson
88c18ca1fe
Cancel queries on Context.Done()
This commit periodicially checks if the context has been cancelled
or if a deadline has been reached. If so, it returns a query-related
error message depending on the cause.
2018-12-12 16:55:44 -07:00
Travis Turner
8fe32d764f
Merge pull request #1774 from richardartoul/ra/fix-union-in-place-bug
Fix bug in UnionInPlace function and add property test
2018-12-12 16:49:30 -06:00
Richard Artoul
e7ca4562ea Fix bug in unionInPlaceImplementation 2018-12-12 14:26:57 -08:00
Matthew Jaffee
6ed5da1714
Merge pull request #1771 from jaffee/import-benchmarking
Import benchmarking
2018-12-12 11:34:48 -06:00
Matt Jaffee
7e90917c3c
suppress linter for init call 2018-12-12 10:26:08 -06:00
Matt Jaffee
f2578c401f
clean up fragments more cleanly (in tests and benchmarks) 2018-12-12 10:26:08 -06:00
Matt Jaffee
4f808c2028
add flag or setting temp dir used for benchmarks 2018-12-12 10:26:08 -06:00
Matt Jaffee
4f459028d9
add concurrent update benchmark and clean up temp frags 2018-12-12 10:26:08 -06:00
Matt Jaffee
054926fd6c
add concurrent import benchmark 2018-12-12 10:26:08 -06:00
Matt Jaffee
dc01dff3d3
add import roaring and import w/update benchmarks 2018-12-12 10:26:07 -06:00
Travis Turner
17ea3f7f94
Merge pull request #1781 from travisturner/test-fix
fixed a mistake in the test from PR 1780
2018-12-11 17:32:17 -06:00
Travis Turner
eadd77f901
fixed a mistake in the test from PR 1780 2018-12-11 16:20:10 -06:00
Matthew Jaffee
2597be4ad5
Merge pull request #1782 from jaffee/cluster-w-replication-deadlock
attempt to fix deadlock by releasing view lock before broadcasting Cr…
2018-12-11 16:16:14 -06:00
Matt Jaffee
9d4a6e2be7
don't add the fragment and then remove it 2018-12-11 15:45:44 -06:00
Matt Jaffee
8b3e5b998a
fix data race which appears to be unrelated to previous changes 2018-12-11 15:45:44 -06:00
Matt Jaffee
7304258967
improve comments 2018-12-11 15:45:44 -06:00
Matt Jaffee
4b786e1057
attempt to fix deadlock by releasing view lock before broadcasting CreateShard 2018-12-11 15:45:44 -06:00
Matthew Jaffee
bb65a4a14f
Merge pull request #1777 from jaffee/1776-unexpected-resizing
fix bug where cluster goes into RESIZING instead of NORMAL
2018-12-11 12:22:24 -06:00
Matt Jaffee
2c4401db8c
hopefully fix data race 2018-12-11 09:22:04 -06:00
Matt Jaffee
7e6c406212
fix bug where cluster goes into RESIZING instead of NORMAL
running
"make clustertests
DOCKER_COMPOSE=internal/clustertests/docker-compose-replication2.yml"

shows this issue (just remove the change in cluster.go).

Also removed two unrelated lines of code that appear to be doing absolutely nothing.
2018-12-11 09:22:03 -06:00
Travis Turner
01e520d9ea
Merge pull request #1780 from travisturner/anti-entropy-roaring
convert the anti-entropy logic to use `ImportRoaring` instead of `QueryNode`
2018-12-10 22:01:26 -06:00
Travis Turner
c66daabc81
convert the anti-entropy logic to use ImportRoaring instead of QueryNode 2018-12-10 21:05:08 -06:00
Matthew Jaffee
69059e91d2
Merge pull request #1779 from pilosa/jaffee-docs-patch
wrap <CALL> in backquotes so it gets displayed.
2018-12-10 18:22:12 -06:00
Matthew Jaffee
9ac4d981fc
wrap <CALL> in backquotes so it gets displayed.
previously was not rendering - I assume because it was being interpreted as an HTML tag.
2018-12-10 17:24:23 -06:00
Travis Turner
fef0b26c89
Merge pull request #1766 from richardartoul/ra/optimize-in-place-bulk
Implement fast roaring bitmap union (Part 1)
2018-12-07 15:52:23 -06:00
Richard Artoul
082c8aba56 switch to |= 2018-12-07 16:13:42 -05:00
Richard Artoul
dcfed6ebb6 fix grammar 2018-12-07 16:11:16 -05:00
Richard Artoul
a11d04c061 clarify comment 2018-12-07 16:11:16 -05:00
Richard Artoul
9da6d43b76 fix docstring nit 2018-12-07 16:11:16 -05:00
Richard Artoul
c495d08d1b simplify logic by removing concept or target 2018-12-07 16:11:16 -05:00
Richard Artoul
5b72544d73 simplify helper with early return 2018-12-07 16:11:16 -05:00
Richard Artoul
bb20f058ba Add Repair operation to btree containers 2018-12-07 16:11:16 -05:00
Richard Artoul
71621e60ba Refactor roaring repair operations 2018-12-07 16:11:16 -05:00
Richard Artoul
34b1f2199f Fix comment 2018-12-07 16:11:16 -05:00
Richard Artoul
3570ec7ab6 collapse next calls into conditonals 2018-12-07 16:11:16 -05:00
Richard Artoul
531b9d616d Refactor code and comment for clarity 2018-12-07 16:11:16 -05:00