Paul Dix
f2d132b361
Implement continuous queries with group by intervals
...
* Update defaults on Broker for when to trigger CQ runs
* Add config settings for how often to calculate and recalculate CQ results
* Update Server to have CQ settings
* Update AST to fold removed time literals when setting time range
* Add periodic CQ running functionality to server
2015-02-17 21:00:24 -05:00
Paul Dix
34e037a9d8
Add SetTimeRange to SelectStatement for use by continuous queries
2015-02-17 21:00:24 -05:00
Paul Dix
5f14d5faf5
WIP: start implementation of continuous queries
...
* Update SelectStatement to have GroupByInterval
* Update parser to verify that CQs have GroupByInterval if Aggregated
* Implement CreateContinousQuery on Server
* Add ContinuousQueries to database
2015-02-17 21:00:24 -05:00
Philip O'Toole
dcdb4b77a1
Merge branch 'master' into support_all_value_types
...
Conflicts:
database.go
server.go
2015-02-16 09:21:10 -08:00
Paul Dix
4cd3494ddc
Update interface on iterator.Next() to pass raw data along with key and value
2015-02-14 17:12:38 -05:00
Philip O'Toole
276c5ded5a
int maps to influxql.Number
2015-02-13 16:28:12 -08:00
Paul Dix
b394fc203f
WIP: updating the signature for iterators to pass around raw bytes for field values.
2015-02-13 14:04:45 -05:00
Philip O'Toole
bf9bfd6106
Error if field's type has changed
2015-02-12 16:06:37 -08:00
Cory LaNou
aa7073bfb0
make the fields public to all for serializing them later
2015-02-12 15:12:14 -07:00
Cory LaNou
61d4cd6a5a
shortcut calculating spread if not necessary
2015-02-12 10:40:24 -07:00
Cory LaNou
7c12afb9e1
fixing comment
2015-02-12 09:56:39 -07:00
Cory LaNou
3dd53ebe80
wire up spread function
2015-02-12 09:39:41 -07:00
Cory LaNou
59a953db97
Merge pull request #1575 from influxdb/batch-std-dev
...
emit in batches of 1000
2015-02-11 18:19:39 -07:00
Cory LaNou
ecb145d15d
fix test
2015-02-11 16:06:49 -07:00
Cory LaNou
2e93fcef53
fixing test comment
2015-02-11 16:06:09 -07:00
Cory LaNou
79fe16fb6c
add comment about why we batch
2015-02-11 16:03:01 -07:00
Cory LaNou
9e80b2173a
Wire up first/last aggregate functions
2015-02-11 15:55:51 -07:00
Cory LaNou
4b18ddedec
magic numbers are evil
2015-02-11 15:11:45 -07:00
Cory LaNou
5911b38e94
emit in batches of 1000
2015-02-11 15:00:39 -07:00
Cory LaNou
6b9ba8baef
check to see if we found values to calculate
2015-02-11 12:37:14 -07:00
Cory LaNou
007dd83b9a
tests for stadard deviation
2015-02-11 12:33:45 -07:00
Cory LaNou
d108af5a94
fix standard deviation calculation
2015-02-11 12:33:10 -07:00
Cory LaNou
bf0c4599ba
first pass at stddev. tests incoming
2015-02-11 11:21:55 -07:00
Cory LaNou
8421d59eb0
no more pointers, refactored min/max
2015-02-11 10:45:44 -07:00
Cory LaNou
fe864792b5
map should do more work locally before passing up to reduce
2015-02-11 09:35:47 -07:00
Cory LaNou
d0873a9b15
wire up max fix #1474
2015-02-10 16:14:22 -07:00
Cory LaNou
eb845b1ecc
return nil instead of 0 if there is nothing to reduce, additional zero test
2015-02-10 13:35:55 -07:00
Cory LaNou
b17af5d7d5
more testing
2015-02-10 12:47:30 -07:00
Cory LaNou
4228635bf1
wire up min
2015-02-10 12:10:37 -07:00
Cory LaNou
62df7152c6
wildcards are now supported
2015-02-09 19:59:13 -07:00
Mark Rushakoff
2e4b9d8b3b
Add missing valid statements for SHOW
...
And alphabetize the order.
2015-02-09 17:06:18 -08:00
Andrew Watkins
6b68f53b10
Fail faster on not-yet-implemented wildcard query
...
Signed-off-by: Will Faurot <will@influxdb.com>
2015-02-09 14:37:52 -07:00
Paul Dix
712297cdb5
Merge pull request #1506 from influxdb/fix-select-where-time
...
Fix queries that have only time in their where clause
2015-02-08 02:05:03 -05:00
Paul Dix
c6e7a7f9ea
Fix mapper to check if the iterator is EOF before calling the map function
2015-02-07 06:29:04 -05:00
Philip O'Toole
54a1ac01b1
Test parsing of milliseconds
2015-02-05 14:51:36 -08:00
Paul Dix
bc813cc9da
Fix queries with where clause only having time.
...
* Add OnlyTimeDimensions to SelectStatement
* Update the database to handle queries that only have a time statement
* Fix server test to insert a time literal that can be parsed.
2015-02-05 01:29:19 -05:00
dgnorton
c7d5d603c2
Merge pull request #1491 from influxdb/influxql-spec
...
update InfluxQL spec
2015-02-04 11:54:17 -05:00
David Norton
30db7a0df1
INFLUXQL.md: explain escaping and fix DROP USER
2015-02-04 11:49:05 -05:00
David Norton
2b84113487
issue #1423 : wire up show field keys
2015-02-04 10:59:47 -05:00
Cory LaNou
887fbd2054
spelling is hard
2015-02-03 17:02:41 -07:00
Cory LaNou
55cc5cfa09
sending all time back as RFC3339Nano instead of UnixNano (int64)
2015-02-03 16:55:33 -07:00
David Norton
819e1107be
update DROP SERIES & MEASUREMENT
2015-02-02 23:27:09 -05:00
David Norton
2934b22048
fix formatting issue in INFLUXQL.md
2015-02-02 21:42:14 -05:00
David Norton
729be5ef36
update InfluxQL spec
2015-02-02 21:33:17 -05:00
Cory LaNou
37f62dbe71
We now store in nanoseconds and send back nanosecond values
2015-02-02 14:08:13 -07:00
David Norton
19992f3ecc
gofmt -s (simplify)
2015-02-01 15:33:12 -05:00
David Norton
a8b86dc29b
golint cleanup
2015-02-01 13:47:48 -05:00
David Norton
d7814eb5f1
issue #1418 : wire up revoke privilege
2015-01-30 10:46:29 -05:00
David Norton
0cf681d19c
influxql: remove TagKeyIdent, add WITH KEY clause
2015-01-29 15:01:25 -05:00
David Norton
ae33bc99db
issue #1411 : wire up show tag keys
2015-01-28 21:33:19 -05:00
Paul Dix
3ad3abaf64
Merge pull request #1398 from influxdb/show-queries
...
Show queries
2015-01-28 10:44:08 -05:00
Paul Dix
ac53db23ce
Merge pull request #1399 from influxdb/parse-tag
...
influxql: fix WHERE TAG KEY parsing
2015-01-28 10:03:08 -05:00
David Norton
2cf41d6ea9
influxql: fix WHERE TAG KEY parsing
2015-01-28 05:02:36 -05:00
Ben Johnson
0a73416e4d
Use the last ident segment for result names.
2015-01-28 03:57:38 -05:00
David Norton
b50e4cc514
implement SHOW SERIES
2015-01-28 00:29:14 -05:00
Paul Dix
861163c03e
Add influxql.Eval().
2015-01-27 20:27:19 -05:00
Paul Dix
c2ded241ea
WIP: wire up group bys and pretty much the whole shebang
2015-01-27 20:27:19 -05:00
Paul Dix
a4e32eb8e6
Fix raw data query test.
2015-01-27 20:26:32 -05:00
Paul Dix
7052fcdde9
WIP: add raw data points query, refactor mapper and iterator
...
Refactors the mapper to only take a single iterator. This will also make it so that we have many mappers (one per shard) that get properly reduced so order comes through correctly.
2015-01-27 20:26:32 -05:00
Paul Dix
7c4a79248d
Add percentile aggregate function
2015-01-27 20:26:32 -05:00
Paul Dix
8148259bfc
Add mean aggregate function
2015-01-27 20:26:32 -05:00
Ben Johnson
a6746b3a21
Remove MultiIterator.
2015-01-27 20:26:32 -05:00
Ben Johnson
1eda0ffcb9
Refactoring query engine.
2015-01-27 20:26:31 -05:00
Ben Johnson
d340ffcf3c
Expression expansion and reduction.
2015-01-27 20:26:31 -05:00
David Norton
780831bb17
change LIST to SHOW
2015-01-25 22:56:20 -05:00
Philip O'Toole
95597fc812
Fix typo in LIST USERS example
2015-01-25 17:45:47 -08:00
Paul Dix
c524d9afe5
Fix parser tests
2015-01-25 17:51:51 -05:00
David Norton
ab39d471a3
influxql: add OFFSET
2015-01-25 15:34:49 -05:00
Cory LaNou
5c0c728fc3
merge conflict
2015-01-21 11:06:59 -07:00
dgnorton
fee20908bc
Merge pull request #1329 from influxdb/meta-queries
...
This PR adds authorization.
2015-01-21 10:00:52 -05:00
Tristan Storch
2994e52fec
correction: orthography
2015-01-21 14:28:24 +01:00
David Norton
2d34c71c0c
Add authorization unit tests & code review fixes
2015-01-20 23:45:18 -05:00
David Norton
1796998614
Add authorization
2015-01-20 16:33:28 -05:00
Ben Johnson
9ccc3b73e0
Refactor ident parsing into Parser.parseIdent().
2015-01-19 16:12:33 -07:00
Ben Johnson
73bc8215bc
Remove combined string/ident scanning.
2015-01-19 16:01:24 -07:00
Ben Johnson
3c8c8724ed
Implement full ident scanning, single quote strings.
2015-01-19 13:05:38 -07:00
Ben Johnson
10075ea8c5
Remove debugging.
2015-01-19 11:28:31 -07:00
Ben Johnson
81f457907f
Add measurement normalization and identifier splitting.
2015-01-18 14:45:22 -07:00
David Norton
9e3ca7b569
influxql: add LIST USERS statement
2015-01-14 11:53:17 -05:00
David Norton
012b41e5ca
influxql: add DROP RETENTION POLICY statement
2015-01-13 16:46:07 -05:00
David Norton
d514cd03c8
influxql: add LIST RETENTION POLICIES statement
2015-01-13 15:40:43 -05:00
David Norton
874eedf36d
Add LIST DATABASES to QUERIES.md and INFLUXQL.md
2015-01-13 14:56:55 -05:00
Philip O'Toole
0938f75fa5
Use pointer types to fix 'go vet'
2015-01-12 11:50:49 -08:00
Philip O'Toole
29122a5bab
More 'go vet' fixes
2015-01-12 11:47:55 -08:00
Philip O'Toole
c9fdf34b4f
go vet: Fields{} -> []*Field{}
2015-01-12 11:43:38 -08:00
Philip O'Toole
295d63cb57
More vet fixes
2015-01-11 15:14:22 -08:00
David Norton
ccab32f33e
influxql: add WITH to CREATE USER & cleanup
2015-01-09 18:21:12 -05:00
David Norton
05e2bff6c4
influxql: add LIST DATABASES statement
2015-01-09 18:21:12 -05:00
David Norton
877f35ae57
influxql: sort node lists in ast.go
2015-01-09 18:21:12 -05:00
David Norton
8da9494a46
influxql: fix comment in parser.go
2015-01-09 18:21:12 -05:00
David Norton
776e9f2ec2
influxql: add GRANT to INFLUXQL.md
2015-01-09 18:21:12 -05:00
David Norton
0439c032a0
influxql: add specification (WIP)
2015-01-09 18:21:12 -05:00
David Norton
5ea393f5ac
influxql: fix scanner bug caused by double unread
2015-01-09 18:21:12 -05:00
David Norton
3b649d3e63
influxql: add CREATE CONTINUOUS QUERY (WIP)
2015-01-09 18:21:12 -05:00
David Norton
f23417fa5a
influxql: add CREATE CONTINUOUS QUERY, : separator
2015-01-09 18:21:12 -05:00
David Norton
4b5f9d3d0e
influxql: fix broken test in parser_test.go
2015-01-06 13:47:21 -05:00
David Norton
06a684a2d8
influxql: fixed typo in err msg and comment
2015-01-05 15:46:52 -05:00
David Norton
2d219d0da0
influxql: use strconv.Atoi instead of ParseInt
2015-01-05 15:44:11 -05:00
David Norton
d927573b3a
influxql: use strconv.Itoa instead of FormatInt
2015-01-05 15:37:18 -05:00
David Norton
d6aa34e840
influxql: add ALTER RETENTION POLICY statement
2015-01-05 13:24:50 -05:00
David Norton
7443e1323a
influxql: add DROP USER statement
2015-01-04 22:56:25 -05:00
David Norton
e62efba6ed
influxql: add DROP DATABASE statement
2015-01-04 22:32:49 -05:00
David Norton
52c0bf0fa2
influxql: refactor ParseStatement
2015-01-04 22:03:18 -05:00
David Norton
96e8f96d13
influxql: add CREATE RETENTION POLICY statement
2015-01-04 21:50:56 -05:00
David Norton
09a8a925e8
influxql: add REVOKE statement
2015-01-03 02:06:47 -05:00
David Norton
87922c4202
influxql: add GRANT statement
2015-01-03 02:06:47 -05:00
David Norton
03694fd6c0
influxql: add CREATE USER statement
2015-01-03 02:06:47 -05:00
David Norton
4739cc8c1d
remove RETENTION POLICY from CREATE DATABASE
2015-01-03 02:06:47 -05:00
David Norton
4ede864d13
influxql: add CREATE DATABASE
2015-01-03 02:06:47 -05:00
David Norton
b2a2b73bd9
influxql: add tokens for user & DB admin
2015-01-03 02:06:47 -05:00
Philip O'Toole
f37f0b80fa
Add unit test for change made by PR 1273
2014-12-31 15:50:10 -08:00
Philip O'Toole
ba0745e244
Fix comment for filterExprBySource
2014-12-31 14:35:30 -08:00
Philip O'Toole
a45a08cccf
Fix unit test so filterExprBySource fix is tested
...
The change introduced by:
https://github.com/influxdb/influxdb/pull/1269
was not actually being tested.
2014-12-31 11:41:54 -08:00
Ben Johnson
77322731fa
Merge pull request #1273 from blmarket/change-default-assoc
...
Change influxql default associativity from right to left.
2014-12-30 11:54:22 -07:00
Heon Jeong
a59be31449
Change influxql default associativity from right to left.
...
Closes #1266
modified one testcase as it was depending on right
associativity.
2014-12-30 10:20:12 +09:00
Heon Jeong
5736cbe2fc
Fix not to reuse unfiltered expr for filterExprBySource
...
`return expr` in the last line of `filterExprBySource` can
return unfiltered results, so fixing it by reconstruction
using filtered elements.
also added a test which can cause this problem.
2014-12-30 09:57:45 +09:00
Ben Johnson
688080af3d
Merge pull request #1257 from influxdb/filter-tags
...
Add tag filtering
2014-12-22 09:01:05 -07:00
Ben Johnson
fdd65116b4
Add Rewriter.
2014-12-21 15:18:55 -07:00
Ben Johnson
eced3a347c
Add tag filtering.
...
This commit adds tag filtering via the `WHERE` clause.
Example:
SELECT sum(value) FROM cpu GROUP BY time(1h), host WHERE region = 'us-west'
2014-12-21 13:22:04 -07:00
Ben Johnson
a034dab697
Fix date parsing comment.
2014-12-21 12:45:52 -07:00
Ben Johnson
bd79d70f50
Add absolute time support.
...
This commit adds the ability to specify time by duration since epoch.
Example:
SELECT * FROM cpu WHERE time > 1388534400s
2014-12-21 11:07:14 -07:00
Ben Johnson
2564933639
Add date-only parsing.
...
This commit changes the Parser to check for date-only formatted strings instead of only
datetime formatted strings.
2014-12-21 10:59:36 -07:00
Ben Johnson
d92d0d4737
Fix NEQ: Change != to <>
2014-12-21 10:43:03 -07:00
Ben Johnson
4d0cf4e47b
Fix syntax error.
2014-12-21 10:40:39 -07:00
Ben Johnson
f5a3e9bf15
Code review fixes.
2014-12-21 10:05:15 -07:00
Ben Johnson
252a4cfba8
code review fix.
2014-12-19 21:45:40 -07:00
Ben Johnson
6c6bb92a1b
Add join support.
...
This commit adds the ability to join multiple measurements together and calculate aggregate
function expressions.
2014-12-19 21:36:52 -07:00
Ben Johnson
41bb5ccfdd
Add group by support for tags.
...
This commit adds GROUP BY support for tags. Previously only the interval could be grouped by.
2014-12-18 08:44:21 -07:00
Ben Johnson
925abdcb67
Merge pull request #1232 from influxdb/planner
...
Add time range extraction and interval grouping support to execution engine.
2014-12-16 15:08:48 -07:00
David Norton
9d2aba9d7f
influxql: move ORDER BY parsing to its own func
2014-12-16 12:32:08 -05:00
Ben Johnson
04608f74c0
Add time range crossover test.
2014-12-16 08:57:27 -07:00
Ben Johnson
9bcc48f8f9
Code review fixes.
2014-12-16 08:50:30 -07:00
David Norton
3deb2bb132
go fmt
2014-12-16 09:06:51 -05:00
David Norton
abce33981a
influxql: capitalize LIMIT in error message
2014-12-16 09:06:51 -05:00
David Norton
4ce9b2bd74
influxql: add LIST MEASUREMENTS, TAGS, & FIELDS
2014-12-16 09:06:51 -05:00
David Norton
ddc1352073
influxql: only accept LIMIT values > 0
2014-12-16 09:06:51 -05:00
David Norton
6f3ba3efdb
influxql: change ORDER BY to accept a field list
...
Change ORDER BY to accept a field list and change LIST SERIES
statement to allow ORDER BY.
2014-12-16 09:06:51 -05:00
David Norton
0f3ea136be
influxql: make LIST SERIES support WHERE & LIMIT
2014-12-16 09:06:51 -05:00
David Norton
74ade8cffb
Add LIST related tokens to scanner
2014-12-16 09:06:50 -05:00
Ben Johnson
38263e0fac
Add time range extraction and group by support to execution engine.
2014-12-15 08:34:32 -07:00
Ben Johnson
f469097e8b
Add ability to fold without now().
2014-12-11 09:58:33 -07:00
Ben Johnson
e854b913e5
Add constant folding.
2014-12-10 23:32:45 -07:00
Ben Johnson
b349394d3c
NOTES
2014-12-10 07:44:52 -07:00
Ben Johnson
d69691e6c5
Refactor planner.
2014-12-09 08:45:29 -07:00
Ben Johnson
c77191b282
Rebuilding engine in influxql.
2014-12-07 22:08:39 -07:00
Ben Johnson
d34bc1f57f
Add AST string encoding, substatement extraction.
2014-12-06 11:17:58 -07:00
Ben Johnson
0b07cec7f4
Merge branch 'master' of https://github.com/influxdb/influxdb into planner
2014-11-30 15:52:20 -07:00
Ben Johnson
a41e539458
Initial query planner.
2014-11-30 15:52:00 -07:00
David Norton
26ecd06ef5
Change Wild to Wildcard and move test
2014-11-25 18:23:10 -05:00
David Norton
f8073bf287
Make influxql parse SELECT *
2014-11-25 17:43:22 -05:00