Commit Graph

37 Commits (5ec039034e52f78570e53cd89f1ab2a9318c97b8)

Author SHA1 Message Date
Jason Wilder 90e3059a8b Fix processRawQuery from returning duplicate data 2015-04-21 13:39:58 -06:00
Jason Wilder 9268ddfefc Pass series IDs for shards in DQ instead of all series IDs 2015-04-21 13:39:58 -06:00
Jason Wilder d5bd804993 Handle distributed queries when shards != data nodes
Fixes #2272

There was previously a explict panic put in the query engine to prevent
queries where the number of shards was not equal to the number of data nodes
in the cluster.  This was waiting for the distributed queries branch to land
but was not removed when that landed.
2015-04-20 09:23:35 -06:00
David Norton a1790f2d0c fix #2337: panic if tag key isn't double quoted 2015-04-18 13:05:41 -04:00
Jason Wilder c52dfce897 Load balance distributed queries across data nodes
Adds a Balancer interface to allow RemoteMappers to send data node
requests to multiple nodes.  It also provides the ability to failed
requests to mark the data node as offline using exponential
backoff with a 5 min max wait time.

Fixes #2242
2015-04-17 11:28:47 -06:00
Philip O'Toole 9282a8ae6d Fix compilation errors after parser merge 2015-04-10 16:11:34 -07:00
Paul Dix 37d4f2a265 Fixes based on feedback. 2015-04-10 16:11:34 -07:00
Philip O'Toole bf1a8aa1e4 Use uint64 for Series IDs
Fixes issue #1649
2015-04-10 16:11:34 -07:00
Paul Dix 7661546a47 Finish up distributed queries. 2015-04-10 16:11:34 -07:00
Paul Dix d41b85a715 Remove the interval setting from NextInterval to make remote mappers work. 2015-04-10 16:11:34 -07:00
Paul Dix 6e8ea9ae91 Fix errors on limits and chunked raw queries. 2015-04-10 16:11:34 -07:00
Paul Dix 113995032e WIP: Initial implementation of remote mapper for distributed queries. 2015-04-10 16:11:34 -07:00
David Norton 25cea58635 refactor scanning & parsing of identifiers 2015-04-09 13:21:13 -04:00
Philip O'Toole 501b4ceedb Don't panic if presented with a field of unknown type
This can happen, though is very unlikely. If this node receives encoded
data, to be written to disk, and is queried for that data before its
metastore is updated, there will be no field mapping for the data during
decode. All this can happen because data is encoded by the node that first
received the write request, not the node that actually writes the data to
disk. So if this happens, skip the data.
2015-04-04 10:33:56 -07:00
Paul Dix 6c46a5c83b Add chunked responses and streaming of raw queries.
Refactored query engine to have different processing pipeline for raw queries. This enables queries that have a large offset to not keep everything in memory. It also makes it so that queries against raw data that have a limit will only p
rocess up to that limit and then bail out.

Raw data queries will only read up to a certain point in the map phase before yielding to the engine for further processing.

Fixes #2029 and fixes #2030
2015-04-02 15:22:27 -07:00
Julius Volz 690f6f16c0 Fix all "golint" warnings in top-level package.
This fixes all "golint" warnings in the top-level "influxdb" package:

    database.go:316:2: can probably use "var tagStrings []string" instead
    database.go:1077:6: exported type RetentionPolicies should have comment or be unexported
    server.go:337:1: exported method Server.StartSelfMonitoring should have comment or be unexported
    server.go:345:3: can probably use "var points []Point" instead
    server.go:433:2: can probably use "var groups []group" instead
    server.go:498:2: can probably use "var groups []group" instead
    server.go:1417:1: comment on exported method Server.CreateRetentionPolicyIfNotExists should be of the form "CreateRetentionPolicyIfNotExists ..."
    server.go:1899:1: exported method Server.DropMeasurement should have comment or be unexported
    server.go:2153:10: if block ends with a return statement, so drop this else and outdent its block
    server.go:2695:2: can probably use "var rows []*influxql.Row" instead
    server.go:2876:11: if block ends with a return statement, so drop this else and outdent its block
    server.go:3804:1: exported method Server.StartReportingLoop should have comment or be unexported
    tx.go:133:4: can probably use "var mappers []influxql.Mapper" instead
    tx.go:231:1: exported method LocalMapper.Open should have comment or be unexported
    tx.go:254:1: exported method LocalMapper.Close should have comment or be unexported
    tx.go:348:1: exported method LocalMapper.Next should have comment or be unexported
2015-03-31 02:22:45 +02:00
Cory LaNou 09097c7d68 remove warning 2015-03-24 20:14:05 -06:00
Cory Lanou 7be574534c Fixing intervals for group by. Fixing bad PR 2015-03-24 20:13:05 -06:00
Jonathan Nutzmann 42a8db8ae5 fixing bucket alignment 2015-03-19 09:36:31 -05:00
David Norton 62ae32b0ce wire up regex in FROM clause 2015-03-16 19:40:59 -04:00
Paul Dix 08ecaabc16 Fix decodes on multiple fields. Remove debug info. Update tests to match new query engine output. 2015-03-09 11:17:36 -07:00
Paul Dix eca4af5514 Wire ip limits, fix server_test, remove warns 2015-03-07 16:30:42 -08:00
Paul Dix 0b98d6e1d2 WIP: wired up math processing on queries 2015-03-07 15:29:57 -08:00
Paul Dix df3c0099e1 WIP: wire up raw queries 2015-03-06 11:23:58 -08:00
Paul Dix 74e6f1f4db WIP: query language refactoring compiles. mores soon 2015-03-01 22:37:09 -08:00
Paul Dix 89b80dcd66 WIP: insane refactor of engine. Must come back later. 2015-02-23 18:07:01 -05:00
Philip O'Toole ae81dff9f6 Use Field codec in debug code 2015-02-16 16:43:35 -08:00
Philip O'Toole 571fde8d3a Use dedicated decoded in cursor 2015-02-16 16:39:11 -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
Paul Dix 4e68828c58 WIP: update signature of iterator in tx.go 2015-02-14 10:24:35 -05:00
Philip O'Toole e9880a4d8b Cursor now requires a Field decoder 2015-02-12 16:07:25 -08:00
Paul Dix 3c26a3e91b Fix panic if a point doesn't have a value for a field.
Fixes #1530. Ensures that the series iterator doesn't yield points that don't have a value for the field that is being aggregated.
2015-02-09 03:39:42 -05:00
Philip O'Toole a0e02406f9 Ensure measurement exists when querying 2015-01-28 16:22:21 -08:00
Paul Dix f2419caeb5 Wire up field expression evaluation 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
Ben Johnson 385687b8b4 Add multishard iteration. 2015-01-27 20:26:32 -05:00
Ben Johnson 1eda0ffcb9 Refactoring query engine. 2015-01-27 20:26:31 -05:00