Commit graph

5503 commits

Author SHA1 Message Date
Seebs
dde6954de4 view.go: deal with races in fragment creation
There existed a case where two goroutines would try to
CreateIfNotExists the same fragment, and the first would
create it, but not put it in the fragments table, then
drop the lock, try to broadcast a message, and if it
succeeded then populate the fragments table. The second
would come along during the broadcast, not find an
entry, try to create one, and fail because the file was
already locked.

Basic problem: At least one test in server/ will fail
if we don't delay to send out broadcast messages. Everything
will lock up if we can wait forever (or even just a very
long time) for the message broadcast. We don't ever want
to have an inconsistent state -- so we don't want to either
fail to get a fragment when one's been created, or get one
that's about to be deleted if the broadcast fails.

So, creation and stashing in the fragments table is
atomic and immediate. After that, we optimistically attempt
to broadcast. If we fail, we fail. We delay up to about
50ms for the broadcast to be done, but after that return
anyway. This way, if things are going well everything
works, and if there's unexpected delays, things work except
some nodes in a cluster may not know about available
shards on other nodes sometimes. But that would have
happened anyway. A proper fix is beyond the scope of this
patch.
2019-02-21 16:43:19 -06:00
tgruben
11fe06be85
Merge pull request #1865 from tgruben/roaring-import-opt
removed copy for pilosa roaring files
2019-02-19 11:21:51 -06:00
Todd Gruben
e3fe55522d comment adjustments 2019-02-19 10:54:09 -06:00
Todd Gruben
02ed4568dd gofmt 2019-02-19 10:25:34 -06:00
Todd Gruben
a13e5fafa4 updated comments and added error wrapping 2019-02-19 10:19:17 -06:00
Todd Gruben
ffe1a285bd removed copy for pilosa roaring files 2019-02-18 16:28:37 -06:00
Cody Soyland
62b9697a6a
Merge pull request #1616 from codysoyland/go-module
Go module support
2019-02-07 12:09:38 -06:00
Cody Soyland
44f6b1d0e3 Regenerate go mod files 2019-02-07 11:46:30 -06:00
Cody Soyland
a9b8b352fc Go mod should be enabled here 2019-02-07 10:49:40 -06:00
Cody Soyland
8ffc4537b7 Ensure Go modules disabled during installation of tools 2019-02-07 10:44:46 -06:00
Cody Soyland
9ebe428824
Merge branch 'master' into go-module 2019-02-06 14:12:17 -06:00
Matthew Jaffee
755c1f4238
Merge pull request #1858 from jaffee/missing-doc-heading
add Group By heading to query language docs
2019-02-06 13:27:36 -06:00
Matt Jaffee
75d91e9b63
add Group By heading to query language docs 2019-02-06 12:49:57 -06:00
Cody Soyland
30143cf44e Fix config passing 2019-02-04 09:32:51 -06:00
Cody Soyland
4bef33eaa9 Address code review feedback 2019-02-04 08:56:32 -06:00
Travis Turner
8be84b7c76
Merge pull request #1851 from travisturner/rows-time-range
add from/to range arguments to Rows() call
2019-02-03 11:00:48 -06:00
Travis Turner
31e0371a55
update the rows range query docs to match the logic 2019-02-02 21:57:03 -06:00
Travis Turner
a0a641c541
remove extra nesting 2019-02-01 16:46:45 -06:00
Travis Turner
87b3438cb1
add logic to restrict time range to available views 2019-02-01 15:30:10 -06:00
Travis Turner
b544328647
parseTime() function to handle interface to time parsing 2019-01-31 18:29:32 -06:00
Travis Turner
a242b8cbaf
add from/to range arguments to Rows() 2019-01-30 16:27:07 -06:00
alanbernstein
839371711c
Merge pull request #1849 from alanbernstein/docs-fixes
Docs fixes
2019-01-30 15:49:09 -06:00
Alan Bernstein
6144988774 Clarify comparison operator usage 2019-01-29 16:58:32 -06:00
Alan Bernstein
5e614432b8 Fix formatting 2019-01-29 16:35:51 -06:00
Alan Bernstein
05703cfff4 Fix links 2019-01-29 16:35:37 -06:00
Cody Soyland
188b977633 Add go module support 2019-01-29 14:53:03 -06:00
Travis Turner
71c2053016
Merge pull request #1848 from travisturner/clearrow-translate
ensure ClearRow() arguments get translated
2019-01-29 13:21:32 -06:00
Travis Turner
30711664e8
ensure ClearRow() arguments get translated 2019-01-29 12:36:54 -06:00
Travis Turner
988d5a6156
Merge pull request #1846 from travisturner/columnattrs-json
prevent omitting zero ids on columnattrs
2019-01-28 14:48:11 -06:00
Travis Turner
687b67dc54
prevent omitting zero ids on columnattrs 2019-01-28 13:16:43 -06:00
Yuce Tekol
62e38dbffa
Merge pull request #1829 from yuce/internal-85-test-windows-support
Updated Docker and Windows sections in the docs
2019-01-28 21:35:03 +03:00
Yuce Tekol
bcb1ccbc2f
Merge branch 'master' into internal-85-test-windows-support 2019-01-28 21:27:13 +03:00
Travis Turner
fc3c5dcb1d
Merge pull request #1842 from travisturner/cache-type-none-size
set cache size to 0 if cache type is none
2019-01-28 09:16:04 -06:00
Travis Turner
198a2910f2
set cache size to 0 if cache type is none 2019-01-25 14:51:00 -06:00
tgruben
f3941f5aa1
Merge pull request #1761 from tgruben/shift-op
Shift operator
2019-01-25 14:21:25 -06:00
Travis Turner
113c6998be
add Shift() to query docs 2019-01-25 14:08:49 -06:00
Travis Turner
779f89815d
Merge branch 'master' into shift-op 2019-01-25 12:57:51 -06:00
Travis Turner
8fe966e8a0
Modifying some of the logic around Shift()
add some comments to the shift() logic
improve test coverage
fix full bitmap overflow
add support to specify shift-by amount
2019-01-25 12:54:44 -06:00
Travis Turner
636513f843
Merge pull request #1832 from travisturner/advertise-addr
support advertise address and listen on 0.0.0.0
2019-01-24 18:12:16 -06:00
Travis Turner
cd7d4ecc22
Merge branch 'master' into advertise-addr 2019-01-24 17:55:51 -06:00
Matthew Jaffee
9880f0a20c
Update docs/configuration.md
Co-Authored-By: travisturner <travis@pilosa.com>
2019-01-24 17:55:25 -06:00
Travis Turner
2467d88ddc
Merge branch 'master' into shift-op 2019-01-24 13:56:28 -06:00
Travis Turner
96d61fe034
Merge pull request #1793 from WaaX/patch-3
Replaced seed with seeds
2019-01-24 09:34:07 -06:00
Travis Turner
fa975411b7
change seeds examples from string to list 2019-01-24 09:20:01 -06:00
WaaX
8062fc6ea7
Replaced seed with seeds
Cluster config referred to seed but the server now expects seeds
2019-01-24 09:17:43 -06:00
tgruben
923e67959c
Merge pull request #1839 from tgruben/numbytes
added convenience function to efficiently calculate size of a roaring bitmap in bytes
2019-01-23 18:04:18 -06:00
Todd Gruben
c2ca00ebe8 force bitmap creation on test; for real this time 2019-01-23 17:05:40 -06:00
Todd Gruben
cb08749967 correct bitmap test 2019-01-23 16:47:59 -06:00
Todd Gruben
4436bce943 Merge branch 'numbytes' of github.com:tgruben/pilosa into numbytes 2019-01-23 13:50:40 -06:00
Todd Gruben
790123410f metalinter fix 2019-01-23 13:50:01 -06:00