Cody Soyland
5f4545eeb2
Fix edge case with Range() calls outside field Min/Max. Fixes #876 .
2017-11-21 13:43:44 -06:00
Cody Soyland
27748259a2
Fix field value import: Use signed int and respect field minimum. Fixes #875
2017-10-31 13:32:26 -05:00
Charlie Andrews
b6509a3ad7
Add RecalculateCaches to every level in hierarchy
...
This to decouple the implementation of recalculating caches from the
structure of the hierarchy: holder > index > frame > view > fragment.
See [Law of Demeter](https://en.wikipedia.org/wiki/Law_of_Demeter ).
2017-10-11 09:36:32 -05:00
Travis
d62ea053b5
Add support for field != <int> Range query
2017-10-06 11:36:41 -05:00
Travis
06f387842b
Adjust some comments and handle error conditions in Handler.
2017-09-27 15:51:16 -05:00
Linh Vo
5435886e7b
Merge branch 'master' of github.com:pilosa/pilosa into handle-get-fields
2017-09-27 13:50:56 -05:00
Travis
c8c2229ca3
remove some code duplication in IndexOptions
2017-09-27 12:35:26 -05:00
Travis
80603ef28a
remove some code duplication in FrameOption encoding
2017-09-27 12:27:45 -05:00
Travis
27921564c0
Make sure Fields gets encoded with FrameOptions
2017-09-27 12:27:45 -05:00
Linh Vo
d507251f3c
resolve conflig with master
2017-09-27 12:00:57 -05:00
Linh Vo
abc6bad985
throw error with invalid field value
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
Linh Vo
7e53a4ed1d
more test
2017-09-27 10:10:43 -05:00
Linh Vo
a1a6c7d717
update test
2017-09-26 13:46:00 -05:00
Linh Vo
505363d8ed
get fields
2017-09-26 10:57:22 -05:00
Travis
e53f218c49
consolidate the BaseValue code. Add tests for BaseValue ranges
2017-09-25 15:37:27 -05:00
Matthew Jaffee
3aecb61285
more read-only locking for maxslice, timequantum, and Index.Frames
2017-09-25 15:20:17 -05:00
Matthew Jaffee
1210489f76
frame rowlabel and options read-only lock
2017-09-25 15:19:43 -05:00
Matthew Jaffee
ce7283ae1b
convert to RWMutex in index, holder, view, and frame
...
use RLock and RUnlock in mapperLocal hotpath
2017-09-25 15:16:40 -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
Ben Johnson
8bd1ab31f5
Add field HTTP API.
2017-09-07 11:45:20 -06:00
Michael Baird
62791e7a2f
Merge pull request #785 from raskle/613-delete-view
...
Delete view API
2017-08-28 13:38:07 -05:00
Michael Baird
60a4ad0c52
Use the full view name in the Delete API. Will need to append the prefix: standard_, inverse_, or field_
2017-08-25 08:11:00 -05:00
Ben Johnson
ad847f2c8a
Add field Range() support to Executor.
2017-08-24 13:34:57 -06:00
Michael Baird
2dfa689d71
Fragment.Close now returns an error.
...
This required changing the Holder test utility Reopen, since in those cases we needed to close the file before making permission changes that Close() was failing silently on.
2017-08-22 14:52:07 -05:00
Michael Baird
ff3190e0d3
Broadcast and handle the DeleteViewMessage
2017-08-22 11:39:00 -05:00
Michael Baird
941d8a7575
DeleteView from Frame
2017-08-22 10:07:01 -05:00
Ben Johnson
562fba9de1
Sum() and Average() field queries.
2017-08-22 08:27:52 -06:00
Ben Johnson
0bb94fc83d
Implement BSI Field Range internally
...
This commit adds `FieldRange()` to the `Frame`, `View`, and
`Fragment` types. It accepts an operator & a predicate and
returns a bitmap of matching field values.
2017-08-01 14:44:53 -06:00
Travis
b91da2d0a4
Merge branch 'master' into input-definition
2017-07-26 14:44:31 -05:00
Linh Vo
f68362c40c
implement nopcache
2017-07-20 16:11:13 -05:00
Michael Baird
7be458bfa6
Merge remote-tracking branch 'upstream/master' into input-definition
...
Conflicts:
pilosa.go
2017-07-03 10:31:58 -05:00
Ben Johnson
800e3844f9
Set & retrieve field values.
...
This commit adds support for set/get field values at the
`Frame`, `View`, and `Fragment` levels.
2017-06-30 12:21:21 -06:00
Travis
f68110be8b
refactor frame options to reduce code duplication
2017-06-28 13:45:07 -05:00
Ben Johnson
0107ddffea
BSI range-encoding schema support.
2017-06-21 08:53:30 -06:00
Michael Baird
60cd24b368
set maxSlice StatsD gauge on get max slice
2017-05-16 14:00:54 -05:00
Michael Baird
4a051900c0
Add sampling rate to StatsD functions, and fix data dog logging
2017-05-16 10:35:49 -05:00
Michael Baird
bd44949cb5
Merge remote-tracking branch 'origin/master' into metrics
...
Conflicts:
config.go
executor_test.go
server/server.go
2017-05-09 11:31:14 -05:00
Matt Jaffee
11b84cec94
change default cache type to ranked
...
All tests which use MustOpenFragment now explicitly pass a cacheType parameter.
If this parameter is an empty string, it means that whether the test works
should not depend on the cache type of the fragment. Otherwise the test should
explicitly set the cache type it needs rather than relying on the default.
2017-05-02 16:58:03 -05:00
Michael Baird
ee159b455d
Merge remote-tracking branch 'origin/master' into metrics
...
Conflicts:
.gitignore
cluster.go
frame.go
glide.lock
index.go
2017-05-01 10:41:04 -05:00
Travis
692d997cab
add labelRegexp to validate row and column labels
2017-04-29 15:01:18 -05:00
Travis Turner
a1871388b0
Merge pull request #504 from travisturner/default-row-label
...
change DefaultRowLabel from `id` to `rowID`
2017-04-28 22:06:34 -05:00
Travis
0b5e058579
change DefaultRowLabel from id to rowID
2017-04-28 15:26:30 -05:00
Cody Soyland
3996b56b88
Apply Apache License 2.0
2017-04-28 14:22:03 -05:00
Travis
7246e1e00d
Broadcast CreateSliceMessage when a new max slice is created
2017-04-27 11:44:13 -05:00
Michael Baird
866c5e8773
Merge remote-tracking branch 'origin/metrics' into stats-view-tag
...
Conflicts:
frame.go
2017-04-25 09:45:52 -05:00
Travis
cd6b3f9605
During import, write to standard view as well as time views
2017-04-24 18:43:33 -05:00
Michael Baird
5a8c165c53
Merge remote-tracking branch 'origin/master' into metrics
...
Conflicts:
cache.go
cluster.go
db.go
executor.go
fragment.go
frame.go
gossip/gossip.go
handler.go
index.go
server.go
server/server.go
2017-04-24 16:35:25 -05:00
Alan Bernstein
dd465cc77b
Fix typo to add view tag
2017-04-24 15:13:07 -05:00