Commit Graph

53 Commits (ea4c08b327efa62f870eb95ee217361e232e56dc)

Author SHA1 Message Date
Jonathan A. Sternberg 5c8318d181
Merge pull request #1080 from influxdata/js-go-generate-with-go-run
refactor: modify tooling to take advantage of go run
2018-10-15 11:27:13 -05:00
Jeff Wendling ce3e1fa90d Remove the fields index
This commit removes the remaining bits of the fields index. In doing
so, the buildCursor method on the engine would need to be updated.
It turns out, that code was statically dead, so delete it and anything
that depended on it. Additionally, delete anything as reported by
the unused tool in the tsdb package.
2018-10-15 10:22:07 -06:00
Jonathan A. Sternberg e9600b1f0b
refactor: modify tooling to take advantage of go run
The generate commands have been modified to take advantage of the new
functionality in Go 1.11 that allows `go run` to execute a package
instead of individual files.

This functionality combined with Go modules allows us to execute a
package directly out of our pinned dependencies rather than accidentally
picking up another binary outside of the build environment.

This also simplifies the Makefile because they no longer have to be
responsible for installing the correct tooling since the Go command
takes care of that logic. It also makes it so that the Makefiles with
file generation can now be invoked from their appropriate subdirectories
so they are contained within the directory itself rather than relying on
values in the top level Makefile.

It is now possible to generate all files within this project by using:

    go generate ./...

Or the Makefile can continue to be used.

This commit also copies over the special copy of `tmpl` that the storage
engine uses within the influxdb repository. It was never copied over so
using `go generate` on these packages did not work.
2018-10-15 11:01:27 -05:00
Jeff Wendling eeb9580bff fix(engine): remove SeriesIDSets check in deletion
We leave in the options and stuff for now as it's tied in with
a lot of the tests/multiple shard stuff that will be removed
eventually, anyway.
2018-10-12 15:25:10 -06:00
Jonathan A. Sternberg 8a67febf35
Merge pull request #1044 from influxdata/js-move-toml-package
refactor(toml): copy the toml utility package from influxdb to platform
2018-10-11 13:03:15 -05:00
Jonathan A. Sternberg 8dee884038
refactor(toml): copy the toml utility package from influxdb to platform 2018-10-11 12:08:43 -05:00
Edd Robinson 590967c092 Add skeleton buildtsi 2018-10-11 17:45:47 +01:00
Leonardo Di Donato 21475c22cd feature(tsdb): decode name back into IDs
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com>
2018-10-11 09:54:19 -05:00
Chris Goller 919aae41c8 refactor(id): update storage, read, and flux from to use IDs 2018-10-11 09:54:19 -05:00
Chris Goller 639a245fa9 fix(tsdb): encode org/bucket bytes 2018-10-11 09:54:18 -05:00
Jonathan A. Sternberg e7e17d6972
refactor: move the logger package from influxdb to platform
We are moving the necessary code for 2.0 from the influxdb 1.X
repository to the platform 2.0 repository. The logger is an unnecessary
dependency on the old influxdb that is making life more complicated.
2018-10-10 15:49:07 -05:00
Jeff Wendling 0af8de9a3c
Merge pull request #1001 from influxdata/jmw-refactor-storage-reads
Refactor storage reads
2018-10-09 10:54:12 -06:00
Ben Johnson 4d58c7df8c
Merge pull request #1000 from influxdata/bj-fix-series-index-tombstone
fix(tsdb): Fix series file tombstoning.
2018-10-09 10:41:18 -06:00
Jeff Wendling 810833f33f chore: refactor reads service and make it consumable externally
This pulls in the code that allows doing reads with flux into the
platform repo, and removes extra.go.

The reusable portion is under storage/reads, where the concrete
implementation for one of the platform's engines is in
storage/readservice.

In order to make this more reusable, the cursors had to move into
their own package, decoupling it from all of the other code in the
tsdb package. tsdb/cursors is this new package, and type/function
aliases have been added to the tsdb package to point at it.

The models package already is very light on transitive dependencies
and so it was allowed to be depended on in a concrete way in the
cursors package.

Finally, the protobuf definitions for issuing GRPC reads has been
moved into its own package for two reasons:
    1. It's a clean separation, and helps keep it that way.
    2. Many/most consumers will not be using GRPC. We just
       use the datatypes to express the API which helps making
       a GRPC server easier.
It is left up to future refactorings (specifically ones that involve
GPRC) to determine if these types should remain, or if there is a
cleaner way.

There's still some dependencies on both github.com/influxdata/influxql
and github.com/influxdata/influxdb/logger that we can hopefully remove
in future refactorings.
2018-10-09 09:51:13 -06:00
Jeff Wendling 555c454cd8 Remove the radix tree series type conflict stuff 2018-10-09 09:05:20 -06:00
Chris Goller 90494a5309 chore(fmt): fix and simplify go formatting 2018-10-08 17:23:54 -05:00
Ben Johnson 3ce51e7f02
fix(tsdb): Fix series file tombstoning.
This commit fixes an issue with the series file compaction
process where tombstones are lost after compaction and series
existence checks are not correct. This commit also fixes some
smaller flushing issues within the series file that mainly
related to testing.
2018-10-08 14:16:11 -06:00
Ben Johnson cf3c70a1a0
Merge pull request #927 from influxdata/bj-tsm1-stats
feat(tsdb/tsm1): Add TSM1 measurement stats.
2018-10-08 13:44:02 -06:00
Jeff Wendling 0360fc418c Remove empty index package for tsi1 2018-10-08 13:18:30 -06:00
Jeff Wendling 260ed3eb13 chore: don't depend on details of what platform.ID is
It may become a uint64 in the future, for example. This does mean
that we have to call Decode on some data that we just Encoded, but
we can fix that later.
2018-10-08 12:31:39 -06:00
Ben Johnson 68450681ef
Add TSM1 measurement stats.
This commit generates an additional `.tss` stats file alongside each
TSM file when it is written that contains size stats for all measurements
within the TSM file. These files can be combined to generate stats for
all measurements across all TSM files.
2018-10-08 10:43:53 -06:00
Jeff Wendling 6408640836 fix: dont conflict on metrics namespace and mod tidy 2018-10-05 16:25:59 -06:00
Edd Robinson 512a015add Address PR feedback 2018-10-05 18:01:59 +01:00
Edd Robinson 6b23165146 Add Engine tests 2018-10-05 15:04:09 +01:00
Edd Robinson 81e0fbabeb Integrate WAL into engine 2018-10-05 12:44:27 +01:00
Edd Robinson e85999ed45 Enable the WAL 2018-10-05 12:44:26 +01:00
Edd Robinson 69015d55ef Address PR feedback 2018-10-04 18:18:55 +01:00
Edd Robinson 41aba8b539 Tidy up tag keys 2018-10-04 10:52:36 +01:00
Edd Robinson cfb3df203a Working storage engine 2018-10-04 10:24:43 +01:00
Edd Robinson 981b2cdbea Skeleton storage engine 2018-10-04 10:24:43 +01:00
Jeff Wendling d18814267e Add very basic write support 2018-10-04 10:21:22 +01:00
Jeff Wendling 6a0fc9237c Read/write points with the appropriate measurement 2018-10-03 17:39:30 -06:00
Jeff Wendling c659c24f9a Add very basic write support 2018-10-03 17:39:30 -06:00
Edd Robinson ea02772fc5 Pull in more pkg packages 2018-10-01 12:08:37 +01:00
Edd Robinson ed81da6600 Update roaring dependency 2018-10-01 12:08:37 +01:00
Edd Robinson 6e57211d36 Fix tests 2018-10-01 12:08:37 +01:00
Edd Robinson 7de29bfe01 Update tsi1 package from OSS 2018-10-01 12:08:37 +01:00
Edd Robinson 3385f389f7 Update tsdb package from OSS 2018-10-01 12:08:37 +01:00
Edd Robinson 074f263e08 Initial import of tsm1.Engine 2018-10-01 12:08:37 +01:00
Edd Robinson 1280f4ac5e Initial import of tsm1 package 2018-10-01 12:08:37 +01:00
Edd Robinson aa433a723a Removed some inmem references 2018-10-01 12:08:37 +01:00
Edd Robinson e4cca868f4 Get TSI tests passing 2018-10-01 12:08:37 +01:00
Edd Robinson 6d3c74ecd9 Update imports 2018-10-01 12:08:37 +01:00
Edd Robinson a7e23519b9 Initial import of tsi1 package 2018-10-01 12:08:33 +01:00
Edd Robinson 53f38073cc Change import 2018-10-01 12:03:20 +01:00
Edd Robinson fb0db04bc1 Initial import pkg package 2018-10-01 12:03:20 +01:00
Edd Robinson f0ba72f227 Remove FGA auth hooks 2018-10-01 12:03:19 +01:00
Edd Robinson 04818c7859 Initial import of models package 2018-10-01 12:03:19 +01:00
Jeff Wendling d44b583c4d remove code as reported by the unused tool 2018-10-01 12:03:19 +01:00
Jeff Wendling b0a317a34c remove and document some things 2018-10-01 12:03:19 +01:00