diff --git a/content/enterprise_influxdb/v1/about-the-project/release-notes.md b/content/enterprise_influxdb/v1/about-the-project/release-notes.md index d7c5a22cc..b0c00e523 100644 --- a/content/enterprise_influxdb/v1/about-the-project/release-notes.md +++ b/content/enterprise_influxdb/v1/about-the-project/release-notes.md @@ -13,6 +13,63 @@ alt_links: +## v1.12.3 {date="2026-01-12"} + +> [!Important] +> #### Upgrade meta nodes first +> +> When upgrading to InfluxDB Enterprise 1.12.1+, upgrade meta nodes before +> upgrading data nodes. + +### Features + +- Add [`https-insecure-certificate` configuration option](/enterprise_influxdb/v1/administration/configure/config-meta-nodes/#https-insecure-certificate) + to meta nodes to skip file permission checking for TLS certificate and private key files. + Also available for data node + [`[cluster]`](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#https-insecure-certificate) + and [`[http]`](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#https-insecure-certificate-1) + sections. +- Add [`advanced-expiration` TLS configuration option](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#advanced-expiration) + to configure how far in advance to log warnings about TLS certificate expiration. +- Add [backup compression options](/enterprise_influxdb/v1/tools/influxd-ctl/backup/#backup-compression) + (`-gzipCompressionLevel`, `-gzipBlockCount`, `-gzipBlockSize`) to + [`influxd-ctl backup`](/enterprise_influxdb/v1/tools/influxd-ctl/backup/). +- Add TLS certificate reloading on `SIGHUP`. +- Add `config` and `cq` (continuous query) diagnostics to the `/debug/vars` endpoint. +- Improve dropped point logging. +- Show user when displaying or logging queries. +- Add `time_format` parameter for the HTTP API. +- Use dynamic logging levels (`zap.AtomicLevel`). +- Report user query bytes. + +### Bug fixes + +- Fix `FUTURE LIMIT` and `PAST LIMIT` + [clause order](/enterprise_influxdb/v1/query_language/manage-database/#future-limit) + in retention policy statements. +- Add locking in `ClearBadShardList`. +- Stop noisy logging about phantom shards that do not belong to a node. +- Resolve `RLock()` leakage in `Store.DeleteSeries()`. +- Fix condition check for optimization of array cursor (tsm1). +- Run `init.sh` `buildtsi` as `influxdb` user. +- Reduce unnecessary purger operations and logging. +- Sort files for adjacency testing. +- Fix operator in host detection (systemd). +- Use correct path in open WAL error message. +- Handle nested low-level files in compaction. +- Correct error logic for writing empty index files. +- Reduce lock contention and races in purger. +- Fix bug with authorizer leakage in `SHOW QUERIES`. +- Rename compact throughput logging keys. +- Fix `https-insecure-certificate` not handled properly in httpd. +- Prevent level regression when compacting mixed-level TSM files. + +### Other + +- Update Go to 1.24.13. + +--- + ## v1.12.2 {date="2025-09-15"} > [!Important] @@ -43,8 +100,8 @@ alt_links: - Add a warning if the TLS certificate is expired. - Add authentication to the Raft portal and add the following related _data_ node configuration options: - - [`[meta].raft-portal-auth-required`](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#raft-portal-auth-required) - - [`[meta].raft-dialer-auth-required`](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#raft-dialer-auth-required) + - [`[meta].raft-portal-auth-required`](/enterprise_influxdb/v1/administration/configure/config-meta-nodes/#raft-portal-auth-required) + - [`[meta].raft-dialer-auth-required`](/enterprise_influxdb/v1/administration/configure/config-meta-nodes/#raft-dialer-auth-required) - Improve error handling. - InfluxQL updates: - Delete series by retention policy. @@ -407,7 +464,7 @@ alt_links: - Add [/api/v2/delete](/enterprise_influxdb/v1/tools/api/#apiv2delete-http-endpoint) support. - Add wildcard support for retention policies in `SHOW MEASUREMENTS`. - Log slow queries even when query logging is not enabled. -- Add `--start` and `--end` [backup options](/enterprise_influxdb/v1/administration/backup-and-restore/#backup-options) to specify the time to include in backup. +- Add `--start` and `--end` [backup flags](/enterprise_influxdb/v1/administration/backup-and-restore/#backup-flags) to specify the time to include in backup. - Add Raft Status output to `inflxud-ctl show`. #### Flux updates @@ -531,7 +588,7 @@ An edge case regression was introduced into this version that may cause a consta - **Log active queries when a process is terminated**: Add the [`termination-query-log`](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#termination-query-log--false) configuration option. When set to `true` all running queries are printed to the log when a data node process receives a `SIGTERM` (for example, a Kubernetes process exceeds the container memory limit or the process is terminated). -- **Log details of HTTP calls to meta nodes**. When [`cluster-tracing`](/enterprise_influxdb/v1/administration/configure/config-meta-nodes/#cluster-tracing--false) is enabled, all API calls to meta nodes are now logged with details providing an audit trail including IP address of caller, specific API being invoked, action being invoked, and more. +- **Log details of HTTP calls to meta nodes**. When [`cluster-tracing`](/enterprise_influxdb/v1/administration/configure/config-meta-nodes/#cluster-tracing) is enabled, all API calls to meta nodes are now logged with details providing an audit trail including IP address of caller, specific API being invoked, action being invoked, and more. ### Maintenance updates @@ -797,14 +854,14 @@ For details on changes incorporated from the InfluxDB OSS release, see #### Hinted handoff improvements -- Allow out-of-order writes. This change adds a configuration option `allow-out-of-order-writes` to the `[cluster]` section of the data node configuration file. This setting defaults to `false` to match the existing behavior. There are some important operational considerations to review before turning this on. But, the result is enabling this option reduces the time required to drain the hinted handoff queue and increase throughput during recovery. See [`allow-out-of-order-writes`](/enterprise_influxdb/v1/administration/config-data-nodes#allow-out-of-order-writes--false) for more detail. -- Make the number of pending writes configurable. This change adds a configuration option in the `[hinted-handoff]` section called `max-pending-writes`, which defaults to `1024`. See [max-pending-writes](/enterprise_influxdb/v1/administration/config-data-nodes#max-pending-writes-1024) for more detail. +- Allow out-of-order writes. This change adds a configuration option `allow-out-of-order-writes` to the `[cluster]` section of the data node configuration file. This setting defaults to `false` to match the existing behavior. There are some important operational considerations to review before turning this on. But, the result is enabling this option reduces the time required to drain the hinted handoff queue and increase throughput during recovery. See [`allow-out-of-order-writes`](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#allow-out-of-order-writes) for more detail. +- Make the number of pending writes configurable. This change adds a configuration option in the `[hinted-handoff]` section called `max-pending-writes`, which defaults to `1024`. See [`max-writes-pending`](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#max-writes-pending) for more detail. - Update the hinted handoff queue to ensure various entries to segment files occur atomically. Prior to this change, entries were written to disk in three separate writes (len, data, offset). If the process stopped in the middle of any of those writes, the hinted handoff segment file was left in an invalid state. - In certain scenarios, the hinted-handoff queue would fail to drain. Upon node startup, the queue segment files are now verified and truncated if any are corrupted. Some additional logging has been added when a node starts writing to the hinted handoff queue as well. #### `influxd-ctl` CLI improvements -- Add a verbose flag to [`influxd-ctl show-shards`](/enterprise_influxdb/v1/administration/cluster-commands/#show-shards). This option provides more information about each shard owner, including the state (hot/cold), last modified date and time, and size on disk. +- Add a verbose flag to [`influxd-ctl show-shards`](/enterprise_influxdb/v1/tools/influxd-ctl/show-shards/). This option provides more information about each shard owner, including the state (hot/cold), last modified date and time, and size on disk. ### Bug fixes @@ -832,7 +889,7 @@ For details on changes incorporated from the InfluxDB OSS release, see > To restore a meta data backup, use the `restore -full` command and specify > your backup manifest: `influxd-ctl restore -full `. -For more information, see [Perform a metastore only backup](/enterprise_influxdb/v1/administration/backup-and-restore/#perform-a-metastore-only-backup). +For more information, see [Perform a metadata only backup](/enterprise_influxdb/v1/administration/backup-and-restore/#perform-a-metadata-only-backup). #### **Incremental and full backups** @@ -900,7 +957,7 @@ For details on changes incorporated from the InfluxDB OSS release, see [InfluxDB - Added logging when data nodes connect to meta service. ### Features -- The Flux Technical Preview has advanced to version [0.36.2](/flux/v0.36/). +- The Flux Technical Preview has advanced to version 0.36.2. --- @@ -1159,7 +1216,7 @@ Please see the [InfluxDB OSS release notes](/influxdb/v1/about_the_project/relea > This release builds off of the 1.5 release of InfluxDB OSS. Please see the [InfluxDB OSS release > notes](/influxdb/v1/about_the_project/release-notes/) for more information about the InfluxDB OSS release. -For highlights of the InfluxDB 1.5 release, see [What's new in InfluxDB 1.5](/influxdb/v1/about_the_project/whats_new/). +For highlights of the InfluxDB 1.5 release, see [InfluxDB 1.5 release notes](/influxdb/v1/about_the_project/release-notes/). ### Breaking changes @@ -1397,7 +1454,7 @@ The following configuration changes may need to changed before [upgrading](/ente We've removed the data node's `shard-writer-timeout` configuration option from the `[cluster]` section. As of version 1.2.2, the system sets `shard-writer-timeout` internally. -The configuration option can be removed from the [data node configuration file](/enterprise_influxdb/v1/administration/configuration/#data-node-configuration). +The configuration option can be removed from the [data node configuration file](/enterprise_influxdb/v1/administration/configure/config-data-nodes/). #### retention-autocreate @@ -1415,8 +1472,8 @@ This change only affects users who have disabled the `retention-autocreate` opti ##### Backup and Restore
-- Prevent the `shard not found` error by making [backups](/enterprise_influxdb/v1/administration/backup-and-restore/#backup) skip empty shards -- Prevent the `shard not found` error by making [restore](/enterprise_influxdb/v1/administration/backup-and-restore/#restore) handle empty shards +- Prevent the `shard not found` error by making [backups](/enterprise_influxdb/v1/tools/influxd-ctl/backup/) skip empty shards +- Prevent the `shard not found` error by making [restore](/enterprise_influxdb/v1/tools/influxd-ctl/restore/) handle empty shards - Ensure that restores from an incremental backup correctly handle file paths - Allow incremental backups with restrictions (for example, they use the `-db` or `rp` flags) to be stores in the same directory - Support restores on meta nodes that are not the raft leader @@ -1436,8 +1493,8 @@ This change only affects users who have disabled the `retention-autocreate` opti - Serialize access to the meta client and meta store to prevent raft log buildup - Remove sysvinit package dependency for RPM packages - Make the default retention policy creation an atomic process instead of a two-step process -- Prevent `influxd-ctl`'s [`join` argument](/enterprise_influxdb/v1/features/cluster-commands/#join) from completing a join when the command also specifies the help flag (`-h`) -- Fix the `influxd-ctl`'s [force removal](/enterprise_influxdb/v1/features/cluster-commands/#remove-meta) of meta nodes +- Prevent `influxd-ctl`'s [`join` argument](/enterprise_influxdb/v1/tools/influxd-ctl/join/) from completing a join when the command also specifies the help flag (`-h`) +- Fix the `influxd-ctl`'s [force removal](/enterprise_influxdb/v1/tools/influxd-ctl/remove-meta/) of meta nodes - Update the meta node and data node sample configuration files --- @@ -1459,7 +1516,7 @@ Please see the OSS [release notes](https://github.com/influxdata/influxdb/blob/1 ### Upgrading -* The `retention-autocreate` configuration option has moved from the meta node configuration file to the [data node configuration file](/enterprise_influxdb/v1/administration/configuration/#retention-autocreate-true). +* The `retention-autocreate` configuration option has moved from the meta node configuration file to the [data node configuration file](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#retention-autocreate). To disable the auto-creation of retention policies, set `retention-autocreate` to `false` in your data node configuration files. * The previously deprecated `influxd-ctl force-leave` command has been removed. The replacement command to remove a meta node which is never coming back online is [`influxd-ctl remove-meta -force`](/enterprise_influxdb/v1/features/cluster-commands/). @@ -1468,7 +1525,7 @@ To disable the auto-creation of retention policies, set `retention-autocreate` t - Improve the meta store: any meta store changes are done via a compare and swap - Add support for [incremental backups](/enterprise_influxdb/v1/administration/backup-and-restore/) - Automatically remove any deleted shard groups from the data store -- Uncomment the section headers in the default [configuration file](/enterprise_influxdb/v1/administration/configuration/) +- Uncomment the section headers in the default [configuration file](/enterprise_influxdb/v1/administration/configure/) - Add InfluxQL support for [subqueries](/influxdb/v1/query_language/data_exploration/#subqueries) #### Cluster-specific Bugfixes @@ -1476,13 +1533,13 @@ To disable the auto-creation of retention policies, set `retention-autocreate` t - Update dependencies with Godeps - Fix a data race in meta client - Ensure that the system removes the relevant [user permissions and roles](/enterprise_influxdb/v1/features/users/) when a database is dropped -- Fix a couple typos in demo [configuration file](/enterprise_influxdb/v1/administration/configuration/) +- Fix a couple typos in demo [configuration file](/enterprise_influxdb/v1/administration/configure/) - Make optional the version protobuf field for the meta store - Remove the override of GOMAXPROCS - Remove an unused configuration option (`dir`) from the backend - Fix a panic around processing remote writes - Return an error if a remote write has a field conflict -- Drop points in the hinted handoff that (1) have field conflict errors (2) have [`max-values-per-tag`](/influxdb/v1/administration/config/#max-values-per-tag-100000) errors +- Drop points in the hinted handoff that (1) have field conflict errors (2) have [`max-values-per-tag`](/influxdb/v1/administration/config/#max-values-per-tag) errors - Remove the deprecated `influxd-ctl force-leave` command - Fix issue where CQs would stop running if the first meta node in the cluster stops - Fix logging in the meta httpd handler service @@ -1572,8 +1629,8 @@ Switches to journald logging for on systemd systems. Logs are no longer sent to - Return an error if getting latest snapshot takes longer than 30 seconds - Remove any expired shards from the `/show-shards` output -- Respect the [`pprof-enabled` configuration setting](/enterprise_influxdb/v1/administration/configuration/#pprof-enabled-true) and enable it by default on meta nodes -- Respect the [`pprof-enabled` configuration setting](/enterprise_influxdb/v1/administration/configuration/#pprof-enabled-true-1) on data nodes +- Respect the [`pprof-enabled` configuration setting](/enterprise_influxdb/v1/administration/configure/config-meta-nodes/#pprof-enabled) and enable it by default on meta nodes +- Respect the [`pprof-enabled` configuration setting](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#pprof-enabled) on data nodes - Use the data reference instead of `Clone()` during read-only operations for performance purposes - Prevent the system from double-collecting cluster statistics - Ensure that the Meta API redirects to the cluster leader when it gets the `ErrNotLeader` error @@ -1589,7 +1646,7 @@ Switches to journald logging for on systemd systems. Logs are no longer sent to #### Cluster-specific bug fixes -- Respect the [Hinted Handoff settings](/enterprise_influxdb/v1/administration/configuration/#hinted-handoff) in the configuration file +- Respect the [Hinted Handoff settings](/enterprise_influxdb/v1/administration/configure/config-data-nodes/#hinted-handoff) in the configuration file - Fix expanding regular expressions when all shards do not exist on node that's handling the request --- diff --git a/content/enterprise_influxdb/v1/administration/configure/config-data-nodes.md b/content/enterprise_influxdb/v1/administration/configure/config-data-nodes.md index 4a6e54d9a..d8fbdaca5 100644 --- a/content/enterprise_influxdb/v1/administration/configure/config-data-nodes.md +++ b/content/enterprise_influxdb/v1/administration/configure/config-data-nodes.md @@ -624,6 +624,14 @@ Use a separate private key location. Environment variable: `INFLUXDB_CLUSTER_HTTPS_PRIVATE_KEY` +#### https-insecure-certificate {metadata="v1.12.3+"} + +Default is `false`. + +Skips file permission checking for `https-certificate` and `https-private-key` when `true`. + +Environment variable: `INFLUXDB_CLUSTER_HTTPS_INSECURE_CERTIFICATE` + #### https-insecure-tls Default is `false`. @@ -1171,6 +1179,14 @@ The location of the separate private key. Environment variable: `INFLUXDB_HTTP_HTTPS_PRIVATE_KEY` +#### https-insecure-certificate {metadata="v1.12.3+"} + +Default is `false`. + +Skips file permission checking for `https-certificate` and `https-private-key` when `true`. + +Environment variable: `INFLUXDB_HTTP_HTTPS_INSECURE_CERTIFICATE` + #### shared-secret Default is `""`. @@ -1692,6 +1708,14 @@ In the preceding example, `max-version = "tls1.3"` specifies the maximum version Environment variable: `INFLUXDB_TLS_MAX_VERSION` +#### advanced-expiration {metadata="v1.12.3+"} + +Default is `5d`. + +Sets how far in advance to log warnings about TLS certificate expiration. + +Environment variable: `INFLUXDB_TLS_ADVANCED_EXPIRATION` + ## Flux query management settings ### [flux-controller] diff --git a/content/enterprise_influxdb/v1/administration/configure/config-meta-nodes.md b/content/enterprise_influxdb/v1/administration/configure/config-meta-nodes.md index 43a42e3de..23ff424dc 100644 --- a/content/enterprise_influxdb/v1/administration/configure/config-meta-nodes.md +++ b/content/enterprise_influxdb/v1/administration/configure/config-meta-nodes.md @@ -170,6 +170,14 @@ Use either: Environment variable: `INFLUXDB_META_HTTPS_PRIVATE_KEY` +#### https-insecure-certificate {metadata="v1.12.3+"} + +Default is `false`. + +Skips file permission checking for `https-certificate` and `https-private-key` when `true`. + +Environment variable: `INFLUXDB_META_HTTPS_INSECURE_CERTIFICATE` + #### https-insecure-tls Default is `false`. diff --git a/content/enterprise_influxdb/v1/query_language/manage-database.md b/content/enterprise_influxdb/v1/query_language/manage-database.md index 105632367..d740f413f 100644 --- a/content/enterprise_influxdb/v1/query_language/manage-database.md +++ b/content/enterprise_influxdb/v1/query_language/manage-database.md @@ -317,10 +317,6 @@ For example, if a write request tries to write data to a retention policy with a `FUTURE LIMIT 6h` and there are points in the request with future timestamps greater than 6 hours from now, those points are rejected. -> [!Important] -> `FUTURE LIMIT` cannot be changed after it is set. -> This will be fixed in a future release. - ##### `PAST LIMIT` {metadata="v1.12.0+"} The `PAST LIMIT` clause defines a time boundary before and relative to _now_ @@ -332,10 +328,6 @@ For example, if a write request tries to write data to a retention policy with a `PAST LIMIT 6h` and there are points in the request with timestamps older than 6 hours, those points are rejected. -> [!Important] -> `PAST LIMIT` cannot be changed after it is set. -> This will be fixed in a future release. - ##### `DEFAULT` Sets the new retention policy as the default retention policy for the database. @@ -371,14 +363,17 @@ See [Create a database with CREATE DATABASE](/enterprise_influxdb/v1/query_langu ### Modify retention policies with ALTER RETENTION POLICY -The `ALTER RETENTION POLICY` query takes the following form, where you must declare at least one of the retention policy attributes `DURATION`, `REPLICATION`, `SHARD DURATION`, or `DEFAULT`: +The `ALTER RETENTION POLICY` query takes the following form, where you must declare at least one of the retention policy attributes `DURATION`, `REPLICATION`, `SHARD DURATION`, `FUTURE LIMIT`, `PAST LIMIT`, or `DEFAULT`: ```sql -ALTER RETENTION POLICY ON [DURATION ] [REPLICATION ] [SHARD DURATION ] [DEFAULT] +ALTER RETENTION POLICY ON [DURATION ] [REPLICATION ] [SHARD DURATION ] [FUTURE LIMIT ] [PAST LIMIT ] [DEFAULT] ``` {{% warn %}} Replication factors do not serve a purpose with single node instances. {{% /warn %}} +For information about the `FUTURE LIMIT` and `PAST LIMIT` clauses, see +[CREATE RETENTION POLICY](#create-retention-policies-with-create-retention-policy). + First, create the retention policy `what_is_time` with a `DURATION` of two days: ```sql > CREATE RETENTION POLICY "what_is_time" ON "NOAA_water_database" DURATION 2d REPLICATION 1 diff --git a/content/enterprise_influxdb/v1/query_language/spec.md b/content/enterprise_influxdb/v1/query_language/spec.md index 58fa4144d..312f3543b 100644 --- a/content/enterprise_influxdb/v1/query_language/spec.md +++ b/content/enterprise_influxdb/v1/query_language/spec.md @@ -302,6 +302,8 @@ alter_retention_policy_stmt = "ALTER RETENTION POLICY" policy_name on_clause retention_policy_option [ retention_policy_option ] [ retention_policy_option ] + [ retention_policy_option ] + [ retention_policy_option ] [ retention_policy_option ] . ``` @@ -314,6 +316,9 @@ ALTER RETENTION POLICY "1h.cpu" ON "mydb" DEFAULT -- Change duration and replication factor. -- REPLICATION (replication factor) not valid for OSS instances. ALTER RETENTION POLICY "policy1" ON "somedb" DURATION 1h REPLICATION 4 + +-- Change future and past limits. +ALTER RETENTION POLICY "policy1" ON "somedb" FUTURE LIMIT 6h PAST LIMIT 6h ``` ### CREATE CONTINUOUS QUERY @@ -1336,6 +1341,8 @@ retention_policy = identifier . retention_policy_option = retention_policy_duration | retention_policy_replication | retention_policy_shard_group_duration | + retention_future_limit | + retention_past_limit | "DEFAULT" . retention_policy_duration = "DURATION" duration_lit . diff --git a/content/enterprise_influxdb/v1/tools/influxd-ctl/backup.md b/content/enterprise_influxdb/v1/tools/influxd-ctl/backup.md index 0c3e06469..bab03a74e 100644 --- a/content/enterprise_influxdb/v1/tools/influxd-ctl/backup.md +++ b/content/enterprise_influxdb/v1/tools/influxd-ctl/backup.md @@ -48,22 +48,49 @@ influxd-ctl backup [flags] ## Flags -| Flag | Description | -| :---------- | :------------------------------------------------------------------ | -| `-db` | Database to backup | -| `-end` | End date for backup _(RFC3339 timestamp)_ | -| `-estimate` | Estimate the size of the requested backup | -| `-from` | Data node TCP address to prefer when backing up | -| `-full` | Perform an full backup _(deprecated in favour of `-strategy full`)_ | -| `-rp` | Retention policy to backup | -| `-shard` | Shard ID to backup | -| `-start` | Start date for backup _(RFC3339 timestamp)_ | -| `-strategy` | Backup strategy to use (`only-meta`, `full`, or `incremental`) | +| Flag | Description | +| :---------------------- | :------------------------------------------------------------------ | +| `-db` | Database to backup | +| `-end` | End date for backup _(RFC3339 timestamp)_ | +| `-estimate` | Estimate the size of the requested backup | +| `-from` | Data node TCP address to prefer when backing up | +| `-full` | Perform a full backup _(deprecated in favor of `-strategy full`)_ | +| `-rp` | Retention policy to backup | +| `-shard` | Shard ID to backup | +| `-start` | Start date for backup _(RFC3339 timestamp)_ | +| `-strategy` | Backup strategy to use (`only-meta`, `full`, or `incremental`) | +| `-gzipCompressionLevel` | Level of compression to use (`default`, `full`, `speedy`, `none`) | +| `-cpuprofile` | Write backup execution to a cpu profile (`true` or `false`) | +| `-gzipBlockCount` | Change the blocks processed concurrently during backup compression | +| `-gzipBlockSize` | Change the size of compressed blocks during backup compression | {{% caption %}} _Also see [`influxd-ctl` global flags](/enterprise_influxdb/v1/tools/influxd-ctl/#influxd-ctl-global-flags)._ {{% /caption %}} +## Backup compression {metadata="v1.12.3+"} + +You can adjust `-gzipCompressionLevel` to allow for faster backups with the tradeoff that data is less compressed. + +| Value | Description | Use Case | +| :------ | :--------------------------------- | :------------------------------------------ | +| default | Standard gzip compression | General purpose, balanced | +| full | Best compression ratio | Minimize storage when time isn't critical | +| speedy | Prioritizes speed over compression | Faster backups with moderate space increase | +| none | No compression | Maximum speed when storage isn't a concern | + +Running backups with different compression settings on ~5.3 GB of data: + +| Compression Level | Backup Time | Size on Disk | Notes | +| :---------------- | :---------: | :----------: | :---------------------------- | +| default | 51s | ~3.0 GB | ~50% compression ratio | +| full | 95s | ~2.7 GB | ~2x slower, ~10% less space | +| speedy | 23s | ~3.3 GB | ~2.2x faster, ~10% more space | +| none | 10s | ~5.3 GB | ~5x faster, ~77% more space | + +We do not recommend changing the values for `-gzipBlockCount` and `-gzipBlockSize`. +These are set to sensible defaults (block size is `1048576` bytes (`1024*1024`)) per the [pgzip library](https://github.com/klauspost/pgzip). + ## Examples - [Perform an incremental backup](#perform-an-incremental-backup) @@ -71,6 +98,7 @@ _Also see [`influxd-ctl` global flags](/enterprise_influxdb/v1/tools/influxd-ctl - [Estimate the size of a backup](#estimate-the-size-of-a-backup) - [Backup data from a specific time range](#backup-data-from-a-specific-time-range) - [Backup a specific shard](#backup-a-specific-shard) +- [Backup data with configured compression](#backup-data-with-configured-compression) ### Perform an incremental backup @@ -104,3 +132,11 @@ influxd-ctl backup \ ```sh influxd-ctl backup -shard 00 /path/to/backup-dir ``` + +### Backup data with configured compression + +The following example uses the fastest possible compression speeds for backup: + +```sh +influxd-ctl backup -strategy full -gzipBlockSize 10485760 -gzipBlockCount 28 -gzipCompressionLevel none . +``` diff --git a/data/products.yml b/data/products.yml index ec212bc84..c4694165e 100644 --- a/data/products.yml +++ b/data/products.yml @@ -349,7 +349,7 @@ enterprise_influxdb: versions: [v1] latest: v1.12 latest_patches: - v1: 1.12.2 + v1: 1.12.3 detector_config: query_languages: InfluxQL: