Commit Graph

289 Commits (5ec039034e52f78570e53cd89f1ab2a9318c97b8)

Author SHA1 Message Date
Cory LaNou 2aa155c428 wip 2015-02-25 12:42:23 -07:00
Matthias Endler 30fa2b7c3a typo in word "dimension" 2015-02-25 09:42:45 +01:00
Philip O'Toole 3867a1933c Parse Series IDs are 32-bit unsigned integers 2015-02-24 12:43:50 -08:00
Paul Dix 036859c191 Fix limit and offset, add more tests.
Also updated the Clone and Substatement methods to copy the offset.
2015-02-24 01:42:11 -05:00
Paul Dix a8a0b9f24e Fix raw data query where some values are null
I also removed the engine test for the raw planner. It's getting tested elsewhere and it would have been too difficult to make it work. Besides, that's getting replaced soon anyway.
2015-02-24 00:36:07 -05:00
Paul Dix b69597f376 Fix queries that return raw data without aggregates. 2015-02-24 00:36:07 -05:00
Philip O'Toole 4d896fa96b Correct comment in wildcard unit test 2015-02-23 19:09:55 -08:00
Philip O'Toole 41ad49f1c1 Add wildcard detection method to SelectStatement 2015-02-23 19:09:55 -08:00
Philip O'Toole 5f71aed8bd Fix previously failing GROUP BY * unit tests
GROUP BY * functionality is now in place.
2015-02-23 19:09:55 -08:00
Philip O'Toole 84de4ad56c Add wildcard rewrite functionality for SELECT
This code, when given a SELECT statement, returns another SELECT
statement such that all "query" and GROUP BY wildcards have been
replaced with all Measurement fields and tag keys respectively.
2015-02-23 19:09:55 -08:00
Philip O'Toole bf3aa528b0 Allow parsing of * for GROUP BY 2015-02-23 19:07:01 -08:00
Paul Dix 89b80dcd66 WIP: insane refactor of engine. Must come back later. 2015-02-23 18:07:01 -05:00
Cory LaNou 7d74ccac6a addressing nit 2015-02-21 17:21:27 -07:00
Cory LaNou 27d7f45729 support drop series without from but with where 2015-02-21 17:05:08 -07:00
Cory LaNou 918c5c8ce9 one more err test condition for drop series 2015-02-21 17:05:08 -07:00
Cory LaNou fd9c19ad9c wire up drop series parsing 2015-02-21 17:05:08 -07:00
David Norton 9bff9cdeee issue #1431: wire up regex queries 2015-02-21 15:38:35 -05:00
David Norton 12bed3e74f issue #1430: add where regex to influxql 2015-02-21 15:37:52 -05:00
Paul Dix 6ed70ebbe3 WIP: fix for ordering of queries of raw values 2015-02-17 21:40:53 -05:00
Paul Dix 8fee14fbf8 Fixes based on PR feedback.
* Pull out magic numbers for running CQs in the broker
* Typo fixes in comments
* Update the process_continuous_queries endpoint to not have gzip
* Remove previous implementation of MeasurementNames in favor of new simpler one
2015-02-17 21:02:53 -05:00
Paul Dix 8d9bcdbc97 Finish wiring up basic version of CQs 2015-02-17 21:02:52 -05:00
Paul Dix fec6764b09 WIP: wire up continuous queries
* Fix run to work with CQ broker
* Fix CQ handler
* Fix SetTimeRange to use RFC3339Nano
* Fix the time range tests
* Fix the parser to parse for RFC3339Nano literals in addition to the other format
* Add logic for running CQs
* Remove duplicate WriteBufferSize default setting from config
2015-02-17 21:02:18 -05:00
Paul Dix b0d4b6da55 WIP: fix cq query times 2015-02-17 21:01:21 -05:00
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