Commit Graph

1978 Commits (db/6263/compaction-debug-logging)

Author SHA1 Message Date
Edd Robinson cd0294ea70 Enable concurrent index building 2018-07-09 11:51:48 +01:00
Edd Robinson ac0f125db9 Provide an API for re-using tags 2018-07-09 11:51:48 +01:00
Edd Robinson 9c2e7635d5 Avoid allocating a string for measurment names 2018-07-09 11:51:48 +01:00
Edd Robinson 3cf20823e9 Allow LogFile buffer size to be changed
When adding many series using offline tooling, it's likely that every
series involves an entry being appended to a LogFile. Typically an entry
is 11 or 12 bytes, but the default bufio.Writer buffer size is only 4K.

This means by default a write of 10,000 new series would involve ~30
buffer flushes.

This commit makes the buffer configurable, and sets the value in
`buildtsi` such that it reflects the number of series being written to
the LogFile.
2018-07-09 11:51:48 +01:00
Edd Robinson 4a90d142a7 Batch series being created 2018-07-09 11:51:15 +01:00
Edd Robinson 32ed165d9e Don't flush/sync when building index 2018-07-09 11:51:15 +01:00
Edd Robinson 2124b5e48e Logging format 2018-07-09 11:49:26 +01:00
Edd Robinson af88db51c1 Add profiling 2018-07-09 11:49:26 +01:00
Edd Robinson ef4e525546
Merge pull request #10032 from influxdata/er-reporttsi
Add new TSI index cardinality report to influx_inspect
2018-07-04 11:40:05 +01:00
Edd Robinson 08c3800a8a Address PR feedback 2018-07-04 10:57:40 +01:00
Edd Robinson cef4c399c5 Sort shard results 2018-07-03 14:20:10 +01:00
Edd Robinson e959fd49a9 Fix build 2018-07-03 14:15:32 +01:00
Edd Robinson 07ca0378bf Implementing -tag-keys is a TODO 2018-07-03 13:52:04 +01:00
Edd Robinson 89b1a49d38 Fine tune limit for when to use bitmap 2018-07-03 13:39:33 +01:00
Edd Robinson 5bce912a39 Fix panic when no series for measurement: 2018-07-03 12:39:20 +01:00
Edd Robinson 593d530525 Add total cardinality 2018-07-03 12:13:05 +01:00
Edd Robinson 33a60dfd85 Support for cardinality by measurement 2018-07-03 11:57:08 +01:00
Stuart Carnie e832514355 pr(influx_tools): PR feedback 2018-07-02 09:45:37 -07:00
Stuart Carnie 8c2ff02ede fix(influx-tools): Reimplement compact-shard using tsm1.Compactor
* utilizes `tsm1.Compactor#CompactFull` to fully compact the specified
  shard
* the WAL is unmodified
* added `-verbose` option to show progress as TSM files are opened
2018-07-02 09:45:37 -07:00
Stuart Carnie 0887b38a65 chore(influx_tools): Rename command influx-tools → influx_tools 2018-07-02 09:45:37 -07:00
Jonathan A. Sternberg 88b81941ac Modify the storage service to expose a grpc interface instead of yarpc 2018-06-28 14:03:09 -05:00
Edd Robinson 13fd17166b gofmt 2018-06-19 16:09:59 +01:00
Edd Robinson ab293e813d
Merge pull request #9856 from pliu/backup_restore_parallel_compression
Parallelize compression/decompression during backup and restore
2018-06-15 14:30:25 +01:00
Jacob Marble 0dc5393441 tsm/cache: Remove unused function parameter 2018-06-13 15:22:37 -07:00
Ben Johnson e918e2f011
Merge pull request #9969 from influxdata/bj-cli-retention-policy
Add retention policy flag to CLI queries.
2018-06-13 14:06:07 -06:00
Stuart Carnie 88cd9f3fcf pr(influx-tools): Improvements per PR review 2018-06-13 10:29:59 -07:00
Stuart Carnie 832863c099 feat(influx-tools): Add compact-shard command for offline compactions
`influx-tools compact-shard` allows a user to fully compact a shard
when the `influxd` process is offline.

Fixes #9958
2018-06-13 10:29:59 -07:00
Stuart Carnie 0f1917fc6b fix(influx-tools): Exporter disables monitor and compactions
This should not have caused correctness issues, but is an unintended
side effect that exporting data may cause compactions to run. It is
possible that a compaction would not run to completion, leaving .tmp
files around after an export.
2018-06-13 10:29:59 -07:00
Stuart Carnie 278ca32f1f refactor(influx-tools): Move shard writer to be usable by other packages
Default behavior has not changed, however, additional options
permit writing `.tsm.tmp` files and adjusting the starting generation
and sequence.
2018-06-13 10:29:59 -07:00
Ben Johnson dae59cce7a
Add retention policy flag to CLI queries. 2018-06-13 09:10:39 -06:00
Edd Robinson b314c316a9 Add regex support to storage service 2018-06-12 15:54:18 +01:00
Edd Robinson 524f400836 Make testing of handler easier 2018-06-12 15:54:18 +01:00
Paul Dix 4f7b93342c Update Prometheus read/write to use new storage query layer.
* Update Prometheus remote write to use metric name as measurement name and value as the field name.
* Update Prometheus remote read to use the storage.Read method to bypass the InfluxQL query engine.
2018-06-12 15:54:18 +01:00
Stuart Carnie d42abde836 refactor(services/storage): Enhanced group support for Read RPC 2018-05-30 11:32:20 -07:00
Jonathan A. Sternberg 4e1228fce3
Merge pull request #9855 from influxdata/js-megacheck-importer
Remove an unused variable caught by megacheck in the importer
2018-05-29 08:44:06 -05:00
Ben Johnson 8b44e3142c
Add optional pprof http endpoint immediately on startup.
This commit adds `debug-pprof-enabled` which will start the default
`net/http/pprof` endpoint and bind against `localhost:6060`. This
will help to debug startup performance issues.
2018-05-23 14:32:15 -06:00
Ben Johnson 1fc403337e
Add -series-file flag to dumptsi command help. 2018-05-22 10:36:00 -06:00
Jeff Wendling 6409b0a441 dumptsmwal: fix minor vet error 2018-05-18 18:21:19 -06:00
Jacob Marble 3f2ff742c0 Remove unused 'database' field 2018-05-18 09:22:43 -07:00
Jonathan A. Sternberg c36e75ad17 Remove an unused variable caught by megacheck in the importer 2018-05-16 13:22:15 -05:00
Peng Liu 2e3ef6c9d7 Parallel compression
Drop-in of pgzip for gzip
2018-05-16 11:19:57 -07:00
Ben Johnson 22ffb6acda
Add dumptsmwal command to influx_inspect. 2018-05-15 11:21:35 -06:00
Jacob Marble 3cfbc33c0e Implement SHOW STATS FOR 'indexes' 2018-05-10 11:33:52 -07:00
Jacob Marble 87d73d405c tsdb/SeriesFile: remove unused function param 2018-05-04 11:22:12 -07:00
Tanya Gordeeva b4417fc7fc influx-tools: export/import fixes
- Expose io for testing
- Initialize logging only when present
- Fix nil cases when replacing retention policies
- Use meta client when getting shard groups
- Disallow updating retention policies
- Delete shard files, not shard groups, when replacing shards
- Add duration and replication options for retention policy
2018-05-03 17:06:17 -07:00
Jeff Wendling cf81a3e66e
Merge pull request #9770 from influxdata/jmw-inspect-series-file
Add verify-seriesfile to influx_inspect
2018-05-02 11:27:53 -06:00
Ben Johnson 2e470974ec
Merge pull request #9793 from influxdata/bj-delete-nonprintable-unicode
Add key sanitization to deletetsm
2018-04-30 15:38:08 -06:00
Ben Johnson 4cb36d5301
Add key sanitization to deletetsm
This commit adds the `-sanitize` flag to `influx_inspect deletetsm`
which will delete all keys that contain invalid, non-printable, or
replacement character unicode.

Usage:

```sh
$ influx_inspect deletetsm -sanitize PATH
```
2018-04-30 13:06:33 -06:00
Ben Johnson 108fa09439
Rename corrupt tsm files on load. 2018-04-27 14:27:44 -06:00
Jeff Wendling 02b90d195e verify-seriesfile: update verbose logging 2018-04-26 12:54:32 -06:00
Jeff Wendling bc2801c3fc verify-seriesfile: some style and renaming fixes 2018-04-26 12:11:02 -06:00
Jeff Wendling c38108eb8a fix some megacheck errors 2018-04-25 18:14:25 -06:00
Jeff Wendling 388a664acc verify-seriesfile: verify partitions in parallel 2018-04-25 18:10:27 -06:00
Jeff Wendling 696ab40ddb verify-seriesfile: reduce compaction threshold in tests
helps it run faster, and hopefully not OOM in teeny environments.
2018-04-25 18:10:23 -06:00
Jeff Wendling adeec62c0d reorganize the verify commands into a folder 2018-04-25 18:10:22 -06:00
Jeff Wendling 3e7a01b1db refactor verify_seriesfile
- some style changes
- export and make usable the verify functions
- make smaller functions for verification
- change the flags to be more intuitive
2018-04-25 18:10:20 -06:00
Jeff Wendling 9f09a3c1c2 add tests for verify_seriesfile
does some basic sanity checks. it's hard to be more exhaustive without
either taking a crazy amount of time, or being non-deterministic,
but at least this makes sure we barf in some cases.
2018-04-25 18:10:19 -06:00
Jeff Wendling e771040a7d Add verify-seriesfile to influx_inspect
Fixes #9767
2018-04-25 18:10:17 -06:00
Tanya Gordeeva 0badc89b11 influx-tools/importer: Clean up shards with errors 2018-04-25 09:33:43 -07:00
Tanya Gordeeva 1ea9397353 influx-tools/importer: Binary format import command
Import command using the binary format reader to directly write TSM data,
optionally replacing existing retention policies and shards.
2018-04-25 09:33:43 -07:00
Tanya Gordeeva 15b46c8ebe influx-tools/importer: Binary format reader unit tests 2018-04-25 09:33:43 -07:00
Tanya Gordeeva 6f99a3cfad influx-tools/importer: Binary format reader
Binary format reader for output from `import-tools export -format binary`.
2018-04-25 09:33:43 -07:00
Adam b3cd949c3f
Update backup flags to have long/short versions (#9713)
Updated flags, help text, removed documentation for deprecated legacy options.  Updated documentation to describe the  syntax and options for the newer -portable format. Legacy support remains, but is only referenced in the online documentation.
2018-04-25 10:49:46 -04:00
Jonathan A. Sternberg dff34939f8
Merge pull request #9028 from cbushko/lint-the-c-dirs
Fix linting on cmd files
2018-04-23 10:41:05 -05:00
Ben Johnson 9a58835b82
Merge pull request #9743 from influxdata/bj-delete-tsm
Add 'influx_inspect deletetsm'
2018-04-20 07:41:25 -06:00
Stuart Carnie 14dcc5d6e7 PR feedback 2018-04-19 18:05:55 -07:00
Stuart Carnie 29ce031fc2 influx-tools/export: driver for reshaping and exporting data
The only file require in Enterprise is a reimplementation of main.go,
the server.Interface and server.MetaClient interfaces.
2018-04-19 18:05:55 -07:00
Stuart Carnie 9e79b5cbaf influx-tools/format: implementation of various series and value writers
A format.Writer is an abstraction for reading data from
storage.ResultSet and writing to various formats. Those included are

* binary: efficient binary format using protocol buffers. This is the
  expected format for the import tooling. The data is written in the
  desired shard group shape so that it can be read and streams to
  TSM files without further transformation.

* line: line protocol use for exporting field type conflicts or as an
  alternative, lossless export format

* text: two debugging modes for outputting series or series and values
  in a more efficient format that line protocol.

* discard: reads and discards the source data. This can be useful for
  benchmarking and profiling the read and decode performance.
2018-04-19 18:05:55 -07:00
Stuart Carnie 338d6b463d influx-tools/server: abstractions to simplify usage in Enterprise
This package is the only component that must be implemented to
use the influx-tools in the Enterprise edition.
2018-04-19 18:05:55 -07:00
Stuart Carnie a8f3c8ed5b import-tools: minimal storage API to read shard data efficiently
* this implementation produces a cursor per shard to permit the export
  tool to distinguish field type conflicts
2018-04-19 18:05:55 -07:00
Ben Johnson 8c9d179a94
Add 'influx_inspect deletetsm' 2018-04-19 10:36:08 -06:00
Adam a00e4dc70b
Changed file download retry rate to have exponential wait times (#9706)
* Changed file download retry rate to have exponential wait times

* Fixes from PR review
2018-04-12 15:21:02 -04:00
Ben Johnson fd491b28a6
Check for root user when running buildtsi.
This commit also adds the `max-log-file-size` flag.
2018-04-04 09:58:02 -06:00
Mark Rushakoff b3c2d9290f Log error encountered when reading WAL files
Inspired by #9657.
2018-03-30 09:40:58 -07:00
Ben Johnson eb6215acbf
Fix buildtsi partition key. 2018-03-29 14:27:28 -06:00
Adam ca9f2510b8
check for failure case where backup dir has no manifest files (#9634) 2018-03-27 12:05:29 -04:00
Stuart Carnie ee3e2ad67f rename Tenant -> OrgID 2018-03-23 12:26:55 -07:00
Stuart Carnie f69681c7c2 store command: add support for multi-tenant queries; fix validation 2018-03-23 12:26:55 -07:00
Stuart Carnie aa61359cc7 Storage RPC API improvements. See PR for details
* reduce # allocations (115M -> 22M)
* reduce size allocations (53GB -> 1.3GB)
* reduce RPC query time (45s -> 12.9s)
2018-03-21 13:46:09 -07:00
Mark Rushakoff fbddcf7cad Move ApplyEnvOverrides to toml package
This code has been duplicated to other projects and its implementations
have grown out of sync. Now the code can live as a package-level
function rather than a method coupled with particular structs.
2018-03-14 15:23:46 -07:00
Adam b213b31cd4
Bugfix for shard collisions resulting from attempted _internal import (#9569) 2018-03-14 11:51:57 -04:00
Jonathan A. Sternberg 9cafd4b1f5
Merge pull request #9429 from influxdata/js-9297-support-http-proxy-in-clients
Support proxy environment variables in the influx client
2018-03-12 11:40:09 -05:00
Jonathan A. Sternberg 5d8d460034 Support setting the log level through the environment variable 2018-03-12 11:10:32 -05:00
Jonathan A. Sternberg ed27a00255
Merge pull request #9524 from influxdata/js-remove-query-prefix
Rename some of the structs and interfaces in the query package
2018-03-07 18:00:37 -06:00
Stuart Carnie 044ca2ac89 ensure ENV overrides are applied when configuring logging
Additionally, the config file is only parsed once.
2018-03-03 07:38:15 -07:00
Jonathan A. Sternberg de4390ae83 Rename some of the structs and interfaces in the query package
Remove the `Query` prefix from some structs and interfaces. They were
there so when the query engine was in the same package as influxql,
these would be differentiated. Now that the package name is query, the
extra prefix seems redundant.
2018-03-02 09:44:12 -06:00
Ben Johnson b3fcc63a78
Add dumptsi path error handling. 2018-02-27 08:30:12 -07:00
Stuart Carnie d135aecf02 Generate trace logs for a number of significant influx operations
* tsdb Store.Open traces all events related to opening files
    * op.name : tsdb.open
* retention policy shard deletions
    * op.name : retention.delete_check
* all TSM compaction strategies
    * op.name : tsm1.compact_group
* series file compactions
    * op.name : series_partition.compaction
* continuous query execution (if logging enabled)
    * op.name : continuous_querier.execute
* TSI log file compaction
    * op_name: index.tsi.compact_log_file
* TSI level compaction
    * op.name: index.tsi.compact_to_level
2018-02-21 15:08:49 -07:00
Jonathan A. Sternberg 2bbd96768d Update logging calls to take advantage of structured logging
Includes a style guide that details the basics of how to log.
2018-02-20 10:04:19 -06:00
Stuart Carnie 1303030184 Suppress the InfluxDB banner if the log output is not a TTY 2018-02-14 15:23:58 -07:00
Jonathan A. Sternberg 2bb5b68833 Add an auto choice that will choose the most appropriate logger
This restricts the logging format options so console cannot be chosen.
This way, logs written to a non-TTY will never be the console format.
2018-02-14 11:56:29 -05:00
Jonathan A. Sternberg 2efc9ddbac Add an option to suppress the initial logo
For any systems that want to read the log file in the specific format,
the logo being printed on restart may not be good for those parsers
since the log parser would have to be aware of the logos existance or
capable of just ignoring lines it couldn't parse.

This gives an option to disable the printed logo if required.

Like other logging options, this will fail if the configuration file
itself is invalid.
2018-02-14 10:11:02 -05:00
Jonathan A. Sternberg ccf2e549b8 Add logging configuration to the main configuration file
Make logfmt the default log output format with json and a more user
friendly console into possible options.
2018-02-14 10:11:02 -05:00
Jonathan A. Sternberg c67a0548a0 Support proxy environment variables in the influx client
This also adds support for both the v1 and v2 APIs to set the Proxy
function on the underlying http.Transport.

The functionality for proxy environment variables is provided by the
[http.ProxyFromEnvironment](https://godoc.org/net/http#ProxyFromEnvironment).
2018-02-11 21:51:58 -06:00
Stuart Carnie 41dc96ca91 restore `MetaClient`, which is needed by store
* Switch from an anonymous type to avoid false positives with
  `megacheck`
2018-02-08 12:13:13 -07:00
Ben Johnson 0af6fb8e10
Merge pull request #9412 from influxdata/er-series-sketches
Sketches, Cont'd
2018-02-08 11:41:39 -07:00
kun 7bc52b7a81 Fix windows history file location 2018-02-09 00:20:52 +08:00
Edd Robinson 7a55735562
Add option to set LogFile compaction size 2018-02-07 14:52:13 -07:00
Adam 43fdb866dd
update to logs to print start/end values when relevant (#9388) 2018-02-02 13:32:43 -05:00
Adam f11d6fcd29
Removed tabs from help text (#9382) 2018-01-31 09:28:15 -05:00
Ben Johnson b42245acbe
Refactoring 'buildtsi' command. 2018-01-30 11:01:35 -07:00
Edd Robinson 13a1505ba2 Cleanup cmd package 2018-01-21 12:08:25 -08:00
Edd Robinson 6a66b5faf0 Cleanup services package 2018-01-21 10:52:37 -08:00
Adam 28f3912491
Renamed references for "enterprise" backup/restore mode to "portable" (#9346) 2018-01-19 16:53:43 -05:00
Adam 938db68198
Update restore functionality to run in online mode, consume Enterprise backup files. (#9207)
* Live Restore + Enterprise data format compatability

* Extended ImportData to import all DB's if no db name given

* Added a new enterprise data test, and backup command now prints the backup file paths at conclusion

* Added whole-system backup test

* Update to use protobuf in all enterprise data cases

* Update to test to do cross-testing with enterprise version

* incremental enterprise backup format support
2018-01-10 13:59:18 -05:00
Ben Johnson 98486a284a
Merge pull request #9265 from benbjohnson/series-file-compaction
Sequential series file id & series file segmentation
2018-01-03 10:05:59 -07:00
Edd Robinson 5efeed4ccc Add import 2018-01-03 16:50:44 +00:00
Ben Johnson 52630e69d7
Integrate SeriesFileCompactor 2018-01-02 12:20:03 -07:00
Jonathan A. Sternberg af23897940 Allow setting the node id in the influx cli program
The string `node <n>` can be used to specify which data node the data
should be retrieved from. This uses the `node_id=X` query parameter that
is supported, but wasn't exposed anywhere in the client library.

We use this feature enough internally when attempting to find
inconsistencies or network errors that it is easier if this is just
supported. Otherwise, I continue having to recompile the CLI program
every time I need to do this.

To clear a previously set node, you can use `node 0` or `node clear`.
2018-01-02 11:15:19 -06:00
Ben Johnson d8b1d208c0
rebase 2017-12-20 15:13:34 -07:00
Edd Robinson 289d1f8d44 Allow iterators to return if shard is closing 2017-12-15 00:46:43 +00:00
Ben Johnson 288c5217e8
Fix tsi1 tools. 2017-12-08 16:12:33 -07:00
Edd Robinson 7d13bf3262 merge master 2017-12-08 17:21:58 +00:00
Edd Robinson f6835632e7 Merge master into branch 2017-12-08 17:11:07 +00:00
Adam a0b2195d6b
Pulled in backup-relevant code for review (#9193)
for issue #8879
2017-12-07 11:35:20 -05:00
Jonathan A. Sternberg 95e1e3b332
Merge pull request #8015 from influxdata/js-code-coverage
Expand code coverage for undercovered packages
2017-11-29 19:30:47 -06:00
Andrew Hare 28ec02a7c1
Merge branch 'master' into amh-8789 2017-11-28 17:05:42 -07:00
Jonathan A. Sternberg b775ad3d5d Expand unit test code coverage in services that were undercovered
This expands code coverage for the following packages:
* monitor (3.5% -> 86.9%)
* services/precreator (31.6% -> 83.8%)
* services/retention (83.0% -> 84.9%)
* services/snapshotter (0.0% -> 82.1%)
* tcp (48.7% -> 60.0%)
2017-11-28 15:44:35 -06:00
Jonathan A. Sternberg 00ab411a6c Group the "strings" import with the other stdlib imports 2017-11-27 17:10:28 -06:00
Ben Johnson fc966a1b67
Add series file backup/restore. 2017-11-22 08:55:54 -07:00
Andrew Hare 9ac37ca459 A non-regex solution 2017-11-20 16:30:27 -07:00
Andrew Hare 89589adea5 Fix CLI to allow quoted database names
Change the CLI to support quoted database names in `use` statements.
This also allows for all database names to be specified, including names
that contain spaces.
2017-11-20 16:30:27 -07:00
wyc c0d184ee93 Influx CLI: More Connection Warnings
If we don't detect a server version, then there's a good chance that
we're not speaking to an InfluxDB server. We should warn the user about
this to make it easier for them to debug.
2017-11-16 11:59:29 -05:00
Ben Johnson ba4c9e0317
Merge remote-tracking branch 'upstream/master' into er-tsi-index-part 2017-11-14 16:14:13 -07:00
Jason Wilder 48e21e6fc8
Merge pull request #9084 from influxdata/jw-delete-time
Handle high cardinality deletes in TSM engine
2017-11-13 14:39:54 -07:00
Stuart Carnie 40ffa49a62 rename config section to ifql
Renaming for discoverability for the initial release of ifql
2017-11-13 11:05:02 -08:00
e-wave 75e142c41a use of flag.Args instead of flag.NArg 2017-11-13 18:07:00 +02:00
Jason Wilder ca4998f29e Fix pid test to ignore local data
If you have lots of data stored locally, this test takes a while to
complete since it loads it all up from the users home dir.
2017-11-13 08:50:07 -07:00
e-wave 1c256e1441 shell shows error and usage when given extra parameters 2017-11-13 17:06:58 +02:00
Jonathan A. Sternberg 0b7c56bcd8 Update the zap logger dependency
The previous sha was taken from a revision on a devel branch that I
thought would continue staying in the tree after it was merged. That
revision was rebased away and the API was changed for the logger.

This updates the usage of the logger and adds a simple package for
constructing the base logger.

The 1.0 version of zap changed the format of the default console logger
so this change moves over to this new logger instead of attempting to
retain backwards compatibility with the old format.
2017-11-10 16:27:16 -06:00
Ben Johnson 919f99f34d
Fixing tests. 2017-11-09 09:30:19 -07:00
Edd Robinson bf132004a3
Implement basic partition layout 2017-11-09 09:28:37 -07:00
Edd Robinson 7aa9de508d
Initial refactor of tsi1.Index
This commit carries out the initial refactor of the tsi1.Index into
tsi1.Partition. We then create a new tsi1.Index that will be an
abstraction over a collection of Partitions.
2017-11-09 09:27:56 -07:00
Ben Johnson f223153078
Initial working version of series file. 2017-11-09 09:18:33 -07:00
Ben Johnson e05d4fdeeb
intermediate 2017-11-09 09:18:33 -07:00
Jonathan A. Sternberg e13ad18160 Use the isolated temp dir for the test pid server 2017-11-07 10:40:46 -06:00
Jonathan A. Sternberg 0b5178ca73
Merge pull request #9074 from influxdata/js-fix-cmd-integration-test
Use the appropriate environment variable for the wal directory
2017-11-07 10:30:02 -06:00
Jonathan A. Sternberg 0a73dcec96 Use the appropriate environment variable for the wal directory
The integration test was intended to use the temporary directory for the
files that were created, but `INFLUXDB_WAL_DIR` is supposed to be
`INFLUXDB_DATA_WAL_DIR`.
2017-11-07 10:07:33 -06:00
Edd Robinson 3e0bf925f8 Use random port in PID file test 2017-11-06 19:35:17 +00:00
Stuart Carnie cf2227def1 add expected data type to series frame 2017-11-06 11:12:27 -07:00
Jonathan A. Sternberg fade2ba9a8
Merge pull request #9043 from influxdata/js-8965-handle-utf16-bom
Handle utf16 files when reading the configuration file
2017-10-31 14:16:09 -05:00
Jonathan A. Sternberg 9dc60962c7 Handle utf16 files when reading the configuration file
Windows computers may produce a utf16 file from the command line that
contains a byte-order-mark. Along with handling the utf8
byte-order-mark, this also handles the utf16 for better Windows
compatibility.
2017-10-30 22:48:44 -05:00
Stuart Carnie f3d45ba301 influxdata/influxdb/influxql -> influxdata/influxql 2017-10-30 14:40:26 -07:00
Stuart Carnie 9e836aefb2 add additional frame types to store tool; count total points processed 2017-10-30 09:24:15 -07:00
Curt Bushko 37c38326a4 fix linting on cmd 2017-10-26 21:15:27 -04:00
Ben Johnson 49c1fca036
Handle nil MeasurementIterator. 2017-10-26 11:25:46 -06:00
Stuart Carnie dc04eaa8f3 Amendments based on feedback
* Fprint* functions
* No nakedness
* clarify panic messages
* spacing between case statements
* remove break in favor of return
* remove goto in favor of for { continue }
2017-10-25 13:38:07 -07:00
Stuart Carnie b8a6ee7c12 store command to query storage RPC APIs 2017-10-25 13:38:07 -07:00
Stuart Carnie 415ed14c53 storage service
* storage service is disabled by default
* default port 8082
* RPC interface generated using yarpc via service.proto
2017-10-25 13:38:07 -07:00
Ben Johnson 1f4e070b3a
Switch to use tsm1.CacheLoader. 2017-10-20 15:14:17 -06:00
Ben Johnson ea43660a55
Streaming inmem2tsi conversion.
Changes the `influx_inspect inmem2tsi` tool to stream each TSM/WAL
file and convert to a TSI index instead of loading the entire shard's
in-memory index first.
2017-10-20 15:14:17 -06:00
Jonathan A. Sternberg 75b8d9cd4f Code cleanup for removing the pid file 2017-10-20 09:17:16 -05:00
Jonathan A. Sternberg 2005a8c8e5 Remove the pidfile after the server has exited 2017-10-19 16:33:59 -05:00
Mark Rushakoff 4ed2e6f21e Minor cleanup 2017-10-13 17:28:24 -07:00
Mark Rushakoff f3f1cc1064 Initial integration tests for config settings 2017-10-11 17:16:42 -07:00
Jason Wilder c1b17114f5 Add time range summary 2017-10-09 14:35:30 -06:00
Jason Wilder 742c871302 Add exact counting
This adds a new flag -exact that will return exact counts instead of
estimates.  The default is to return estimates since exact counting
on a problem shard could consume a lot of memory.
2017-10-09 14:01:57 -06:00
Jason Wilder 2abd7bd1d8 Report shards in sorted shard ID order 2017-10-09 13:50:37 -06:00
Jason Wilder c69ad0978c Update influx_inspect to report total cardinalities
This updates the report command to be able to report cardinalities across
all dbs and shards
2017-10-06 16:00:20 -06:00
Jonathan A. Sternberg abf2649d3a Update influx inspect to support unsigned types 2017-10-05 10:26:14 -05:00
Joe LeGasse 1525069213 Merge pull request #8892 from influxdata/jl-tag-values
auth: add series auth to 'show tag values'
2017-10-03 08:47:39 -04:00
Mark Rushakoff 8c70cfd74b Merge pull request #8808 from liketic/feature/issues/8590
Influx CLI: Make cli case insensitive
2017-09-28 09:13:19 -07:00
Joe LeGasse 1443b22379 auth: add series auth to 'show tag values' 2017-09-27 20:01:18 -04:00
nwante e995bba24e simple typo fix
just a simple wording fix when I was reading the docs.
2017-09-25 08:16:57 -04:00
liketic 1dfdc30377 Influx CLI: Make cli case insensitive 2017-09-08 23:20:54 +08:00
emluque fa681edcb9 6563 Support Ctrl+C to cancel a running query in the Influx CLI
Solved the issue by using context on the http request on the client.
2017-09-01 08:02:27 -05:00
Joe LeGasse 732a0c2eaa Merge pull request #8769 from influxdata/jl-map-cleanup
cleanup: remove poor usage of ',ok' with maps
2017-08-31 09:18:42 -04:00
David Norton 2aa446bf24 fix #8638: inspect shouldn't err on missing file
influx_inspect walks the data and wal directories building a list of
files to export. It then opens, reads, and exports each. If the file was
deleted between the time it was added to the list and the time the
inspect tool attempts to read it, the file is now skipped without
emitting an error.
2017-08-30 09:59:03 -04:00
Joe LeGasse a95647b720 cleanup: remove poor usage of ',ok' with maps
There are several places in the code where comma-ok map retrieval was
being used poorly. Some were benign, like checking existence before
issuing an unconditional delete with no cleanup. Others were potentially
far more serious: assuming that if 'ok' was true, then the resulting
pointer retrieved from the map would be non-nil. `nil` is a perfectly
valid value to store in a map of pointers, and the comma-ok syntax is
meant for when membership is distinct from having a non-zero value.
There was only one or two cases that I saw that being used correctly for
maps of pointers.
2017-08-30 09:49:31 -04:00
Jonathan A. Sternberg 9a2357c2c0 Separate the query engine into a separate package
This change provides a clear separation between the query engine
mechanics and the query language so that the language can be parsed and
dealt with separate from the query engine itself.
2017-08-16 13:38:43 -05:00
Ben Johnson 06bc3b6fbf
TSI Index Migration 2017-08-15 11:40:24 -06:00
Edd Robinson 442581d299 Merge pull request #8592 from influxdata/er-mutex-profile
Adds mutex profile
2017-08-14 22:09:19 +01:00
Edd Robinson 81c06b58fa Merge pull request #8462 from xginn8/backup_stdout
backup output should go to stdout not stderr
2017-08-14 22:08:25 +01:00
Edd Robinson 8934aacebb Adds mutex profile
Mutex profiles are now available via the:

  - /debug/pprof/mutex
  - /debug/pprof/all

endpoints.
2017-08-04 14:36:39 +01:00
Jason Wilder 778000435a Conver all keys from string to []byte in TSM engine
This switches all the interfaces that take string series key to
take a []byte.  This eliminates many small allocations where we
convert between to two repeatedly.  Eventually, this change should
propogate futher up the stack.
2017-07-28 11:00:50 -06:00
xginn8 faec9625bc Merge branch 'master' into backup_stdout 2017-07-13 18:10:54 -04:00
Edd Robinson d2ce7060c5 Merge branch 'master' into backup_stdout 2017-07-07 16:27:39 +01:00
Adam 2259ada8c3 adds a new header key/value X-Influxdb-Build that has value OSS if called from open-source build, and ENT if called from enterprise. This commit sets the value for the OSS case, and also creates the proper flag 2017-07-07 10:59:26 -04:00
Jason Wilder 5512c97dac Merge pull request #8515 from influxdata/jw-subscriber
Append subscribers service after it's open
2017-06-21 12:32:52 -06:00
Jason Wilder ba8649a6d5 Merge pull request #8503 from eheydrick/backup-docs
Add a timezone component to the example backup command to make it RFC3339 compliant
2017-06-21 09:40:05 -06:00
Jason Wilder 72eeacaed4 Append subscribers service after it's open
The Points channel is nil until after the subscriber service is opened.
If it is append before it's opened, the PointsWriter holds onto the
old reference.
2017-06-21 09:28:59 -06:00
Ben Johnson 431b947149
Add dumptsi command to help command. 2017-06-19 09:49:59 -06:00
Eric Heydrick 810c183963 Add a timezone component to the example backup command to make it
RFC3339 compliant
2017-06-16 15:43:33 -07:00
Matthew McGinn 4159fd693e break out backup logging into 2 loggers, one for Stdout and one for Stderr 2017-06-14 15:20:58 -04:00
Stuart Carnie 932edd90b2 Merge branch 'master' into sgc-8188 2017-06-14 10:55:06 +10:00
Jason Wilder 206fd857c3 Merge pull request #8481 from influxdata/jw-subscriber
Decouple Subscriber from PointsWriter
2017-06-13 15:55:43 -06:00
Jason Wilder 71579fcbe9 Remove direct Subscriber dependency from PointsWriter 2017-06-13 12:51:02 -06:00
lrita 20e6b820bb remove duplicated assignment in cmd/influxd/run/server 2017-06-12 15:58:52 +08:00
Stuart Carnie 2de52834f0 CQ statistics written to monitor database, addresses #8188
* off by default, enabled by `query-stats-enabled`
* writes to cq_query measurement of configured monitor database
* see CHANGELOG for schema of individual points
2017-06-10 09:20:38 +08:00
Matthew McGinn d9f984a886 backup output should go to stdout not stderr 2017-06-07 13:11:58 -04:00
Joe LeGasse 815f740f4c initial fga work
wip

wip

fix tests / build
2017-05-26 13:16:27 -07:00
Ben Johnson c744e2f562
TSI pull request fixes. 2017-05-23 09:01:05 -06:00
Mark Rushakoff c4f11afc90 Default RPC bind to localhost
Prior to this change, the default configuration would listen on all
interfaces, potentially exposing the RPC to the public internet.
2017-05-12 17:02:51 -07:00
Jason Wilder 2cac46ebbc Convert usage of strings to []byte
Measurement name and field were converted between []byte and string
repetively causing lots of garbage.  This switches the code to use
[]byte in the write path.
2017-05-12 14:05:19 -06:00
Jason Wilder b150a6293c Merge pull request #8380 from influxdata/jw-wal-buffer
Use buffer writer for wal segments
2017-05-11 08:34:44 -06:00
Jason Wilder e102fcca9c Use buffer writer for wal segments 2017-05-10 11:42:32 -06:00
Sebastian Borza 6bb85f809a
sort influx_inspect detailed report results 2017-05-08 23:30:40 -05:00
Ben Johnson 489c89bea4
Add tsi support tooling. 2017-05-08 11:00:15 -06:00
Jonathan A. Sternberg 1300f4cc6c Remove the admin UI 2017-04-25 16:58:24 -05:00
Ben Johnson 9c97cd8601
Merge remote-tracking branch 'upstream/master' into tsi 2017-04-04 12:46:09 -06:00