Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

opt: ANALYZE returns "ERROR: no columns" with inverted expression index #76867

Closed
mgartner opened this issue Feb 21, 2022 · 0 comments · Fixed by #77507
Closed

opt: ANALYZE returns "ERROR: no columns" with inverted expression index #76867

mgartner opened this issue Feb 21, 2022 · 0 comments · Fixed by #77507
Assignees
Labels
C-bug Code not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior. T-sql-queries SQL Queries Team

Comments

@mgartner
Copy link
Collaborator

mgartner commented Feb 21, 2022

ANALYZE returns an error when run on a table with an inverted expression index:

defaultdb> CREATE TABLE t (a INT, j JSON, INVERTED INDEX ((a +
1), (j->'a')));
CREATE TABLE

defaultdb> INSERT INTO t VALUES (1, '{"a":"b"}');
INSERT 1

defaultdb> ANALYZE t;
ERROR: no columns

Jira issue: CRDB-13306

@mgartner mgartner added the C-bug Code not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior. label Feb 21, 2022
@blathers-crl blathers-crl bot added the T-sql-queries SQL Queries Team label Feb 21, 2022
@mgartner mgartner self-assigned this Feb 22, 2022
craig bot pushed a commit that referenced this issue Mar 9, 2022
76671: importccl: test EXPORT PARQUET on randomly generated tables r=stevendanna a=msbutler

Release note: None

Release justification: bug fixes and low-risk updates to new functionality

76930: sql: set hash-sharded index column type to INT8 r=mgartner a=mgartner

Shard columns of hash-sharded indexes are computed columns with an
expression in the form `mod(fnv32(crdb_internal.datums_to_bytes(...)))`.
The `mod()` builtin returns a value of type `INT8`, while the shard
column's type was previously `INT4`. Because these types did not match,
`mod` expressions were wrapped in the assignment cast function,
`crdb_internal.assignment_cast`, in mutation query plans.

This commit changes the type of newly created shard columns to `INT8`,
eliminating the need for an assignment cast. Because all integers are
encoded as varints in keys and values, this will not increase the amount
of space on disk required for these columns.

Release justification: This is a minor change to hash-sharded indexes,
which are a newly un-experimentalized feature in the upcoming release.

Release note (sql change): The type of shard columns created for
hash-sharded indexes have changed from `INT4` to `INT8`. This should
have no effect on behavior or performance.

77215: ui: Statement Details page using new details endpoint r=maryliag a=maryliag

Previously, the Statement Details page was being populated
by the value saved on cache, where we would filter the
existing statement and retrieve the correct one.
With a new endpoint `_status/stmtdetails/{fingerprint_id}`
we can collect more information about the statement.
This first commit changes the source of information of
the Statement Details page to the value retrieved from
the new endpoint. No changes are noticeable from the user's
perspective.
Following commits will add the new information based on the
extra information retrieved by the endpoint.

Partially addresses #72129

NoteFor Reviewers: Cluster-ui selector are still being addressed

Release note: None
Release Justification: Low risk, high benefit change

77372: jobs: Set a timeout when executing schedules. r=miretskiy a=miretskiy

Improve jobs system resilience to misbehaving schedules, which take
unreasonable time to execute.

Job scheduler now sets a timeout when executing each schedule.
Scheduled jobs must ensure that they complete their execution within
specified timeout.  This does not imply that you cannot have long running
scheduled jobs.

Failed execution due to timeout are handled based on schedule policy.
The timeout is controlled via the `jobs.scheduler.schedule_execution.timeout` setting,
and can be disabled by setting timeout value to 0.

Release Notes: Improve jobs system resilience to scheduled jobs that
may lock up jobs/scheduled job table for long periods of time.  Each schedule
now has a limited amount of time to complete its execution.  The timeout
is controlled via  `jobs.scheduler.schedule_execution.timeout` setting.

Release Justification: System stability improvement.

77502: sql/contention/txnidcache: avoid recording nil txnID r=maryliag a=Azhng

Resolves #77371

Previously, there are edge cases where the txnID in the resolvedTxnID
emitted from connExecutor will be nil, (e.g. when the connExecutor closes
while a transaction is still active). Writing invalid txnID into the
writer can potentially cause data loss, since the TxnID cache stops
processing the input batch when it encounters the first invalid txnID.
This commit prevents invalid txnID from being written into TxnID Cache.

Release justification: bug fix to existing functionality
Release note: None

77507: sql: do no collect multi-column stats for indexes with only virtual columns r=mgartner a=mgartner

Fixes #76867

Release justification: This is a low-risk fix for a minor bug.

Release note (bug fix): A bug has been fixed that caused errors when
attempting to create table statistics (with CREATE STATISTICS or
ANALYZE) for a table containing an index which indexed only virtual
computed columns. This bug has been present since version 21.1.0.

Co-authored-by: Michael Butler <[email protected]>
Co-authored-by: Marcus Gartner <[email protected]>
Co-authored-by: Marylia Gutierrez <[email protected]>
Co-authored-by: Yevgeniy Miretskiy <[email protected]>
Co-authored-by: Azhng <[email protected]>
@craig craig bot closed this as completed in 2b28fd4 Mar 9, 2022
mgartner added a commit to mgartner/cockroach that referenced this issue Mar 9, 2022
…olumns

Fixes cockroachdb#76867

Release justification: This is a low-risk fix for a minor bug.

Release note (bug fix): A bug has been fixed that caused errors when
attempting to create table statistics (with CREATE STATISTICS or
ANALYZE) for a table containing an index which indexed only virtual
computed columns. This bug has been present since version 21.1.0.
mgartner added a commit that referenced this issue Mar 9, 2022
…olumns

Fixes #76867

Release justification: This is a low-risk fix for a minor bug.

Release note (bug fix): A bug has been fixed that caused errors when
attempting to create table statistics (with CREATE STATISTICS or
ANALYZE) for a table containing an index which indexed only virtual
computed columns. This bug has been present since version 21.1.0.
@mgartner mgartner moved this to Done in SQL Queries Jul 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Code not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior. T-sql-queries SQL Queries Team
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

1 participant