Merge pull request #6191 from influxdata/feat-core-ent-release-3-2-1

feat(influxdb3): v3.2.1 release notes
pull/6189/head^2
Jason Stirnaman 2025-07-06 17:01:45 -05:00 committed by GitHub
commit 905db7506d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 46 additions and 77 deletions

View File

@ -1239,8 +1239,7 @@ paths:
db: mydb
plugin_filename: request.py
trigger_name: hello_world_trigger
# trigger_specification: "request:hello-world" - For 3.2.1 (issue#6171)
trigger_specification: {"request_path": {"path": "hello-world"}}
trigger_specification: request:hello-world
cron_friday_afternoon:
summary: Cron trigger for Friday afternoons
description: |
@ -1478,17 +1477,14 @@ paths:
For example, if you define a trigger with the following:
```json
trigger_specification: {"request_path": {"path": "hello-world"}}
trigger_specification: "request:hello-world"
```
then, the HTTP API exposes the following plugin endpoint:
```
<INFLUXDB3_HOST>/api/v3/engine/hello-world
```
***Note:*** Currently, due to a bug in InfluxDB 3 Enterprise, the request trigger specification is different from Core.
in: path
required: true
schema:
@ -2094,25 +2090,12 @@ components:
- `table:TABLE_NAME` - Triggers on write events to a specific table
### On-demand triggers
Format: `{"request_path": {"path": "REQUEST_PATH"}}`
Format: `request:REQUEST_PATH`
Creates an HTTP endpoint `/api/v3/engine/REQUEST_PATH` for manual invocation:
- `{"request_path": {"path": "hello-world"}}` - Creates endpoint `/api/v3/engine/hello-world`
- `{"request_path": {"path": "data-export"}}` - Creates endpoint `/api/v3/engine/data-export`
***Note:*** Currently, due to a bug in InfluxDB 3 Enterprise, the request trigger specification is different from Core. Use the JSON object format shown above.
oneOf:
- type: string
pattern: ^(cron:[0-9 *,/-]+|every:[0-9]+[smhd]|all_tables|table:[a-zA-Z_][a-zA-Z0-9_]*)$
- type: object
properties:
request_path:
type: object
properties:
path:
type: string
pattern: ^[a-zA-Z0-9_-]+$
- `request:hello-world` - Creates endpoint `/api/v3/engine/hello-world`
- `request:data-export` - Creates endpoint `/api/v3/engine/data-export`
pattern: ^(cron:[0-9 *,/-]+|every:[0-9]+[smhd]|all_tables|table:[a-zA-Z_][a-zA-Z0-9_]*|request:[a-zA-Z0-9_-]+)$
example: cron:0 0 6 * * 1-5
trigger_arguments:
type: object

View File

@ -113,15 +113,3 @@ influxdb3 create trigger \
Creating a trigger in a disabled state prevents it from running immediately. You can enable it later when you're ready to activate it.
{{% /code-placeholders %}}
{{% show-in "enterprise" %}}
> [!Warning]
> #### Request trigger specification format differs between CLI and API
>
> Due to a bug in InfluxDB 3 Enterprise, the request trigger specification format differs:
>
> - **CLI**: `request:<REQUEST_PATH>` (same as Core CLI and API)
> - **Enterprise API**: `{"request_path": {"path": "<REQUEST_PATH>"}}`
>
> See the [API reference](/influxdb3/enterprise/api/#operation/PostConfigureProcessingEngineTrigger) for examples. Use `influxdb3 show summary` to verify the actual trigger specification.
{{% /show-in %}}

View File

@ -41,18 +41,6 @@ specifications:
The plugin receives the HTTP request headers and content, and can parse,
process, and send the data into the database or to third-party services.
{{% show-in "enterprise" %}}
> [!Warning]
> #### Request trigger specification format differs between CLI and API
>
> Due to a bug in InfluxDB 3 Enterprise, the request trigger specification format differs:
>
> - **CLI**: `request:<REQUEST_PATH>` (same as Core CLI and API)
> - **Enterprise API**: `{"request_path": {"path": "<REQUEST_PATH>"}}`
>
> See the [API reference](/influxdb3/enterprise/api/#operation/PostConfigureProcessingEngineTrigger) for examples. Use `influxdb3 show summary` to verify the actual trigger specification.
{{% /show-in %}}
## Activate the processing engine
To activate the processing engine, include the `--plugin-dir <PLUGIN_DIR>` option

View File

@ -5,6 +5,36 @@
> All updates to Core are automatically included in Enterprise.
> The Enterprise sections below only list updates exclusive to Enterprise.
## v3.2.1 {date="2025-07-03"}
### Core
#### Features
- **Enhanced database lifecycle management**:
- Allow updating the hard deletion date for already-deleted databases and tables, providing flexibility in managing data retention and compliance requirements
- Include `hard_deletion_date` column in `_internal` system tables (`databases` and `tables`) for better visibility into data lifecycle and audit trails
#### Bug Fixes
- **CLI improvements**:
- Added help text for the new `update` subcommand for database and table update features ([#26569](https://github.com/influxdata/influxdb/pull/26569))
- `--object-store` and storage configuration parameters are required for the `serve` command ([#26575](https://github.com/influxdata/influxdb/pull/26575))
- **Query processing**: Fixed V1-compatible `/query` HTTP API endpoint to correctly default to nanosecond precision (`ns`) for CSV output, ensuring backward compatibility with InfluxDB 1.x clients and preventing data precision loss ([#26577](https://github.com/influxdata/influxdb/pull/26577))
- **Database reliability**: Fixed issue preventing hard deletion of soft-deleted databases and tables, enabling complete data removal for compliance and storage management needs ([#26574](https://github.com/influxdata/influxdb/pull/26574))
### Enterprise
All Core updates are included in Enterprise. Additional Enterprise-specific features and fixes:
#### Features
- **License management improvements**: New `influxdb3 show license` command displays detailed license information including type, expiration date, and resource limits, making it easier to monitor license status and compliance
#### Bug Fixes
- **API stability**: Fixed HTTP API trigger specification to use the correct `"request:REQUEST_PATH"` syntax, ensuring proper request-based trigger configuration for processing engine workflows
## v3.2.0 {date="2025-06-25"}
**Core**: revision 1ca3168bee

View File

@ -26,7 +26,9 @@ Once you have all the prerequisites in place, follow these steps to implement th
- [Add a Processing Engine plugin](#add-a-processing-engine-plugin)
- [Set up a trigger](#set-up-a-trigger)
- [Advanced trigger configuration](#advanced-trigger-configuration)
{{% show-in "enterprise" %}}
- [Distributed cluster considerations](#distributed-cluster-considerations)
{{% /show-in %}}
## Set up the Processing Engine
@ -66,7 +68,9 @@ When running {{% product-name %}} in a distributed setup, follow these steps to
>
> Configure your plugin directory on the same system as the nodes that run the triggers and plugins.
{{% show-in "enterprise" %}}
For more information about configuring distributed environments, see the [Distributed cluster considerations](#distributed-cluster-considerations) section.
{{% /show-in %}}
## Add a Processing Engine plugin
@ -224,7 +228,7 @@ def process_scheduled_call(influxdb3_local, call_time, args=None):
#### Create an HTTP request plugin
HTTP request plugins respond to API calls using [`request:`](#trigger-on-http-requests) trigger specifications{{% show-in "enterprise" %}} (CLI) or `{"request_path": {"path": "..."}}` (HTTP API){{% /show-in %}}. Use them for:
HTTP request plugins respond to API calls using [`request:`](#trigger-on-http-requests) trigger specifications. Use them for:
- Creating custom API endpoints
- Webhooks for external integrations
@ -263,7 +267,7 @@ After writing your plugin:
|------------|----------------------|-----------------|
| Data write | `table:<TABLE_NAME>` or `all_tables` | When data is written to tables |
| Scheduled | `every:<DURATION>` or `cron:<EXPRESSION>` | At specified time intervals |
| HTTP request | `request:<REQUEST_PATH>`{{% show-in "enterprise" %}} (CLI) or `{"request_path": {"path": "<REQUEST_PATH>"}}` (HTTP API){{% /show-in %}} | When HTTP requests are received |
| HTTP request | `request:<REQUEST_PATH>` | When HTTP requests are received |
### Use the create trigger command
@ -367,18 +371,6 @@ To view triggers associated with a database, use the `influxdb3 show summary` co
influxdb3 show summary --database my_database --token AUTH_TOKEN
```
{{% show-in "enterprise" %}}
> [!Warning]
> #### Request trigger specification format differs between CLI and API
>
> Due to a bug in InfluxDB 3 Enterprise, the request trigger specification format differs:
>
> - **CLI**: `request:<REQUEST_PATH>` (same as Core CLI and API)
> - **Enterprise API**: `{"request_path": {"path": "<REQUEST_PATH>"}}`
>
> See the [API reference](/influxdb3/enterprise/api/#operation/PostConfigureProcessingEngineTrigger) for examples. Use `influxdb3 show summary` to verify the actual trigger specification.
{{% /show-in %}}
### Pass arguments to plugins
Use trigger arguments to pass configuration from a trigger to the plugin it runs. You can use this for:
@ -600,19 +592,7 @@ Each plugin must run on a node that supports its trigger type:
|--------------------|--------------------------|-----------------------------|
| Data write | `table:` or `all_tables` | Ingester nodes |
| Scheduled | `every:` or `cron:` | Any node with scheduler |
| HTTP request | `request:`{{% show-in "enterprise" %}} (CLI) or `{"request_path": {"path": "..."}}` (HTTP API){{% /show-in %}} | Nodes that serve API traffic|
{{% show-in "enterprise" %}}
> [!Note]
> #### Request trigger specification format differs between CLI and API
>
> Due to a bug in InfluxDB 3 Enterprise, the request trigger specification format differs:
>
> - **CLI**: `request:<REQUEST_PATH>` (same as Core CLI and API)
> - **Enterprise API**: `{"request_path": {"path": "<REQUEST_PATH>"}}`
>
> See the [API reference](/influxdb3/enterprise/api/#operation/PostConfigureProcessingEngineTrigger) for examples.
{{% /show-in %}}
| HTTP request | `request:` | Nodes that serve API traffic|
For example:
- Run write-ahead log (WAL) plugins on ingester nodes.

View File

@ -6,7 +6,7 @@ influxdb3_core:
versions: [core]
list_order: 2
latest: core
latest_patch: 3.2.0
latest_patch: 3.2.1
placeholder_host: localhost:8181
ai_sample_questions:
- How do I install and run InfluxDB 3 Core?
@ -21,7 +21,7 @@ influxdb3_enterprise:
versions: [enterprise]
list_order: 2
latest: enterprise
latest_patch: 3.2.0
latest_patch: 3.2.1
placeholder_host: localhost:8181
ai_sample_questions:
- How do I install and run InfluxDB 3 Enterprise?