From 797e8648c87aafc5c611108999441cbb4dea78d9 Mon Sep 17 00:00:00 2001 From: ryan Date: Fri, 31 Oct 2025 12:46:33 -0400 Subject: [PATCH 1/2] update vector indexing release note --- .../releases/v25.4/v25.4.0-beta.2.md | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/current/_includes/releases/v25.4/v25.4.0-beta.2.md b/src/current/_includes/releases/v25.4/v25.4.0-beta.2.md index c12039d534c..8566a8dbaaa 100644 --- a/src/current/_includes/releases/v25.4/v25.4.0-beta.2.md +++ b/src/current/_includes/releases/v25.4/v25.4.0-beta.2.md @@ -13,18 +13,18 @@ Release Date: October 10, 2025 - Added the `SHOW INSPECT ERRORS` command. This command can be used to view issues that are identified by running the `INSPECT` command to validate tables and indexes. [#154337][#154337] - Added the `sql.catalog.allow_leased_descriptors.enabled` cluster setting, which is false by default. When set to true, queries that access the `pg_catalog` or `information_schema` can use cached leased descriptors to populate the data in those tables, with the tradeoff that some of the data could be stale. [#154491][#154491] -- We now support index acceleration for a subset of jsonb_path_exists filters. Given the `jsonb_path_exists(json_obj, json_path_expression)`, we only support inverted index for json_path_expression that matches one of the following patterns: - - The json_path_expression must NOT be in STRICT mode. - - keychain mode: $.[key|wildcard].[key|wildcard]... - - For this mode, we will generate a prefix span for the inverted expression. - - filter with end value mode, with equality check: $.[key|wildcard]? (@.[key|wildcard].[key|wildcard]... == [string|number|null|boolean]) - - For this mode, since the end value is fixed, we will generate a single value span. - - Specifically, we don't support the following edge case: - - $ - - $[*] - - $.a.b.c == 12 or $.a.b.c > 12 or $.a.b.c < 12 (operation expression) - - $.a.b ? (@.a > 10) (filter, with inequality check) - - Note that the cases we support is to use `jsonb_path_exists` in filters, as in, when they are used in the WHERE clause. [#154631][#154631] +- CockroachDB now supports index acceleration for a subset of `jsonb_path_exists` filters used in `WHERE` clauses. Given `jsonb_path_exists(json_obj, json_path_expression)`, an inverted index is supported only when `json_path_expression` matches one of the following patterns: + - The `json_path_expression` must **not** be in STRICT mode. + - Keychain mode: `$.[key|wildcard].[key|wildcard]...` + - In this mode, a prefix span is generated for the inverted expression. + - Filter with end value mode (equality check): `$.[key|wildcard]? (@.[key|wildcard].[key|wildcard]... == [string|number|null|boolean])` + - In this mode, since the end value is fixed, a single value span is generated. + - The following edge cases are **not** supported: + - `$` + - `$[*]` + - `$.a.b.c == 12`, `$.a.b.c > 12`, or `$.a.b.c < 12` (operation expressions) + - `$.a.b ? (@.a > 10)` (filter with inequality check) + [#154631][#154631] - The optimizer can now use table statistics that merge the latest full statistic with all newer partial statistics, including those over arbitrary constraints over a single span. [#154755][#154755]

Operational changes

From cfcfc7a643294a5d35cf2b5e73ed31e953d4c308 Mon Sep 17 00:00:00 2001 From: Ryan Kuo <8740013+taroface@users.noreply.github.com> Date: Fri, 31 Oct 2025 13:32:12 -0400 Subject: [PATCH 2/2] Apply suggestions from code review Co-authored-by: Mike Lewis <76072290+mikeCRL@users.noreply.github.com> --- src/current/_includes/releases/v25.4/v25.4.0-beta.2.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/current/_includes/releases/v25.4/v25.4.0-beta.2.md b/src/current/_includes/releases/v25.4/v25.4.0-beta.2.md index 8566a8dbaaa..58336d8738a 100644 --- a/src/current/_includes/releases/v25.4/v25.4.0-beta.2.md +++ b/src/current/_includes/releases/v25.4/v25.4.0-beta.2.md @@ -13,8 +13,8 @@ Release Date: October 10, 2025 - Added the `SHOW INSPECT ERRORS` command. This command can be used to view issues that are identified by running the `INSPECT` command to validate tables and indexes. [#154337][#154337] - Added the `sql.catalog.allow_leased_descriptors.enabled` cluster setting, which is false by default. When set to true, queries that access the `pg_catalog` or `information_schema` can use cached leased descriptors to populate the data in those tables, with the tradeoff that some of the data could be stale. [#154491][#154491] -- CockroachDB now supports index acceleration for a subset of `jsonb_path_exists` filters used in `WHERE` clauses. Given `jsonb_path_exists(json_obj, json_path_expression)`, an inverted index is supported only when `json_path_expression` matches one of the following patterns: - - The `json_path_expression` must **not** be in STRICT mode. +- CockroachDB now supports index acceleration for certain `jsonb_path_exists` filters used in `WHERE` clauses. Given `jsonb_path_exists(json_obj, json_path_expression)`, an inverted index is supported only when `json_path_expression` matches one of the following patterns: + - The `json_path_expression` must **not** be in `strict` mode. - Keychain mode: `$.[key|wildcard].[key|wildcard]...` - In this mode, a prefix span is generated for the inverted expression. - Filter with end value mode (equality check): `$.[key|wildcard]? (@.[key|wildcard].[key|wildcard]... == [string|number|null|boolean])`