influxd inspect build-tsi

The influxd inspect build-tsi command rebuilds the TSI index and, if necessary, the series file.


influxd inspect build-tsi [flags]

InfluxDB builds the index by reading all Time-Structured Merge tree (TSM) indexes and Write Ahead Log (WAL) entries in the TSM and WAL data directories. If the series file directory is missing, it rebuilds the series file. If the TSI index directory already exists, the command will fail.

Adjust performance

Use the following options to adjust the performance of the indexing process:


--max-log-file-size determines how much of an index to store in memory before compacting it into memory-mappable index files. If you find the memory requirements of your TSI index are too high, consider decreasing this setting.


--max-cache-size defines the maximum cache size. The indexing process replays WAL files into a tsm1.Cache. If the maximum cache size is too low, the indexing process will fail. Increase --max-cache-size to account for the size of your WAL files.


--batch-size defines the size of the batches written into the index. Altering the batch size can improve performance but may result in significantly higher memory usage.


Flag Description Input Type
--batch-size Size of the batches to write to the index. Defaults to 10000. See above. integer
--bucket-id Bucket ID (required if --shard-id is present). string
--compact-series-file Compact existing series file. Does not rebuilt index.
--concurrency Number of workers to dedicate to shard index building. Defaults to GOMAXPROCS (8 by default). integer
--data-path Path to the TSM data directory. Default is ~/.influxdbv2/engine/data. string
-h --help Help for the build-tsi command.
--max-cache-size Maximum cache size. Defaults to 1073741824. See above. uinteger
--max-log-file-size Maximum log file size. Defaults to 1048576. See above . integer
--shard-id Shard ID (requires a --bucket-id). string
-v --verbose Enable verbose output.
--wal-path Path to the WAL data directory. Defaults to ~/.influxdbv2/engine/wal. string

Was this page helpful?

Thank you for your feedback!

The future of Flux

Flux is going into maintenance mode. You can continue using it as you currently are without any changes to your code.

Flux is going into maintenance mode and will not be supported in InfluxDB 3.0. This was a decision based on the broad demand for SQL and the continued growth and adoption of InfluxQL. We are continuing to support Flux for users in 1.x and 2.x so you can continue using it with no changes to your code. If you are interested in transitioning to InfluxDB 3.0 and want to future-proof your code, we suggest using InfluxQL.

For information about the future of Flux, see the following: