Commit graph

196 commits

Author SHA1 Message Date
Cody Soyland
76fa64df79
Merge pull request #1285 from codysoyland/vendor-btree
B+Tree Containers / Enterprise
2018-05-15 16:32:15 -05:00
Matt Jaffee
652b5695e1
fix redundant arguments to make() calls 2018-05-15 10:56:24 -05:00
Cody Soyland
513c7fd705 B+tree integration work.
Export necessary vars from roaring to fix b+tree containers implementation.
Clean up naming.
Use constructor replacement for enterprise integration.
2018-05-14 17:32:30 -05:00
Cody Soyland
faa79a385c Add B+tree to enterprise subpackage 2018-05-11 20:20:24 -05:00
Alan Bernstein
01b56b9c09 Fix return type typo 2018-05-10 17:17:45 -05:00
Alan Bernstein
8c5f2bd76b Address review comments 2018-05-10 13:56:52 -05:00
Alan Bernstein
6e28624528 Wrap errors in fragment 2018-05-10 13:09:07 -05:00
Cody Soyland
2590b25628 Merge branch 'master' into vendor-btree 2018-05-10 11:28:13 -05:00
Matt Jaffee
2738c92286
stop passing uri via context to InternalClient.ExecuteQuery 2018-05-07 12:40:38 -07:00
Travis Turner
47607d5d2e
Merge pull request #1191 from travisturner/min-max-bsi
Implement Min/Max BSI queries
2018-04-24 11:00:35 -05:00
Matthew Jaffee
3f303d1098
remove global defaults from config.go
these were occaisionally referenced elsewhere in the codebase - in all but one
case, there were workarounds that are actually better I think.

In the one case there wasn't I created a single top level DefaultConfig object
which is instantiated with all the default values and can be referred to if
necessary.

There was a bug in fragment.go with the way MaxWritesPerRequest was treated if
it was 0. Elsewhere, 0 meant no limit, but here, it would have caused a division
by 0.

Changed the default metrics provider from "nop" to "none", although "nop" will
still work. Previously, any value other than "statsd" or "expvar" was treated as
"nop", but I've changed this behavior to return an error if an invalid string is
provided. I think this is better behavior, because in the case that someone
bothered to change the default, they were probably interested in actually
getting stats, and might be annoyed when it silently failed.
2018-04-12 19:52:48 -05:00
Matthew Jaffee
04f5d5875c
api docs, rename funcs, refactor usage of internal
All exported funcs in api.go are now documented

Several poorly named methods of API and Cluster were renamed. Particularly, the
word Fragment was often changed to Slice in cases where it was really a slice
being specified and not a fragment.

several methods which received or returned internal data structures have been
refactored to be more opaque.

Deprecation logging was added to input definition methods.
2018-04-12 11:28:35 -05:00
Travis Turner
16539bbab1
WIP: implement Min/Max BSI queries 2018-04-11 15:39:40 -05:00
Travis Turner
1764d5a9bf
Merge pull request #1180 from travisturner/remove-rowcol-labels
Remove rowcol labels
2018-04-03 22:37:59 -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
b2b0fd081a
Remove ColumnLabel support 2018-03-26 15:35:56 -05:00
Travis Turner
2a8172b2a3
Remove RowLabel support 2018-03-26 14:48:56 -05:00
Travis Turner
b66bedd1ef
put BoltDB behind AttrStore interface 2018-03-19 11:30:41 -05:00
Travis Turner
6776fa81ef
Merge branch 'master' into cluster-resize-merging 2018-02-16 11:13:40 -06:00
Todd Gruben
23970b98dc
changed roaring.NewBitmapBTree to roaring.NewBTreeBitmap 2018-02-07 13:56:58 -06:00
Todd Gruben
440980384c
applied travis suggestions 2018-02-07 13:56:58 -06:00
Todd Gruben
8a70c4e5a3
added slice containers type for in memory bitmaps and btree for file based 2018-02-07 13:56:58 -06:00
Todd Gruben
eca01e4b4f replace sha1 hash with faster xxhash 2018-02-06 08:51:38 -06:00
Travis Turner
216ba7a41e
Use NodeID instead of URI for node identification 2018-02-02 15:58:46 -06:00
Travis Turner
cf1e41faf1
Merge branch 'master' into cluster-resize 2017-12-08 15:22:12 -06:00
Travis Turner
0f971f7bc6
Merge pull request #950 from raskle/914-syncblock-maxwrites
group the write operations in syncBlock by MaxWritesPerRequest
2017-12-06 14:02:07 -06:00
Travis Turner
c9886b049b
Merge branch 'master' into cluster-resize working branch. 2017-12-04 22:18:57 -06:00
Travis Turner
5aa905b9a1
Merge pull request #935 from travisturner/cluster-resize-test-setvalue
add SetFieldValue() method to TestCluster and use in tests
2017-12-04 17:31:49 -06:00
Todd Gruben
f051f7ccea refactored httpclient handling 2017-12-01 16:00:12 -06:00
Michael Baird
59035883f4 group the write operations in syncBlock by MaxWritesPerRequest 2017-11-10 15:03:23 -06:00
Travis Turner
e641aa1d8a
Merge branch 'master' into 'cluster-resize' 2017-11-07 15:00:11 -06:00
Travis Turner
7e797efdc2
Allow CacheType to be set for a RangeEnabled frame (to apply to the standard frame) 2017-11-06 14:32:20 -06:00
Travis Turner
a8871ada6a
Convert Host to URI.
Fix all compile errors.
2017-10-25 11:52:55 -05:00
Yuce Tekol
66650ec1f7
NewExecutor doesn't return an error; renamed NewClient to NewInternalHTTPClient 2017-10-18 17:38:20 +03:00
Yuce Tekol
e201afe241
Replaced all http.Clients with InternalClient; updated InternalClient interface. 2017-10-17 15:53:42 +03:00
Yuce Tekol
48c0dbaee7
Initial client refactoring 2017-10-17 11:35:01 +03:00
Yuce Tekol
2c5a8d9125
Fixed Merge branch 'master' into tls-support-URI
# Conflicts:
#	cmd/server_test.go
2017-10-12 16:03:32 +03:00
Yuce Tekol
3501732b19
https with signed certificates work 2017-10-08 21:11:19 +03:00
Travis
d62ea053b5
Add support for field != <int> Range query 2017-10-06 11:36:41 -05:00
Travis
07ae881967
Add FieldNotNull for more efficient BETWEEN queries 2017-10-06 11:36:24 -05:00
Travis
41b322d744
update fragment.FieldSum to use roaring IntersectionCount() 2017-09-27 11:54:09 -05:00
Travis
eaefc31b4f
make ImportSetFieldValue a private method and add some error handling 2017-09-27 11:43:11 -05:00
Todd Gruben
0d8c2c10e2
created ImportSetFieldValue to handle import scenerio 2017-09-27 11:43:11 -05:00
Travis
01fa368c6a
Import FieldValues
This PR adds the ability to import field values into RangeEnabled frames
using the `pilosa import` command.

Example:
```
pilosa import -i i -f f --field foo sample-vals.csv
```
imports data from sample-vals.csv, which contains data in the format:
```
[ColumnID, Value]
```

Also fixes a bug where `frame.rangeEnabled` was not being set on frame creation.
2017-09-27 11:43:10 -05:00
Travis Turner
917f41e8eb Merge pull request #847 from travisturner/field-range-between
Implements BETWEEN for Range queries.
2017-09-27 11:14:31 -05:00
Travis
ab908227be
remove private function fieldRangeBetween 2017-09-27 11:02:32 -05:00
Matthew Jaffee
f257be9926
FieldSum calls fragment.row which needs write lock
remove read lock and call fragment.Row
2017-09-25 15:24:52 -05:00
Matthew Jaffee
c5b6c39c56
read only lock in fragment.FieldSum 2017-09-25 15:20:00 -05:00
Travis
2b88d278bc
Implements BETWEEN for Range queries.
The PQL looks like:
```
Range(frame=f, field0 >< [200,610])
```

One thing I noticed while implementing this is that it doesn't seem
like `FieldRange()` is used in either `Frame` or `View`; the Executor
calls `Fragment.FieldRange()` directly. The problem with this is that
the offset logic is calculated in the Frame, but since the Executor
doesn't go through Frame, then the Executor also has to calculate
the offset before calling `Fragment.FieldRange`. We should unify this
logic somewhere. Note, this applies to both `FieldRange` and
`FieldRangeBetween`.
2017-09-25 15:11:04 -05:00
Todd Gruben
1eb2f8d568 reusing containers for memory efficiency 2017-09-07 12:59:09 -05:00