Skip to content
This repository was archived by the owner on Oct 6, 2026. It is now read-only.

Commit a66fa8e

Browse files
committed
v26.1: Document INSPECT as GA replacement for SCRUB
Remove SCRUB from the feature availability page since INSPECT is the generally available replacement. Update the INSPECT page to note that it replaces the deprecated EXPERIMENTAL SCRUB command.
1 parent c8b1b8a commit a66fa8e

3 files changed

Lines changed: 4 additions & 29 deletions

File tree

‎src/current/_includes/v26.1/sql/privileges.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Privilege | Levels | Description
2222
`MODIFYSQLCLUSTERSETTING` | System | Grants the ability to modify SQL [cluster settings]({% link {{ page.version.version }}/cluster-settings.md %}) (cluster settings prefixed with `sql.`).
2323
`NOSQLLOGIN` | System | Prevents roles from connecting to the SQL interface of a cluster.
2424
**Deprecated** `REPLICATION` | System | As of v25.2 `REPLICATION` is **deprecated**. Instead, use the `REPLICATIONSOURCE` and `REPLICATIONDEST` privileges at the table level. Grants the ability to create a [logical data replication]({% link {{ page.version.version }}/logical-data-replication-overview.md %}) or [physical cluster replication]({% link {{ page.version.version }}/physical-cluster-replication-overview.md %}) stream.
25-
<a id="repaircluster"></a>`REPAIRCLUSTER`, `REPAIRCLUSTERMETADATA` | System | Grants the ability to perform cluster debugging and repair operations, including: edit [scheduled jobs]({% link {{ page.version.version }}/show-create-schedule.md %}), edit [external connections]({% link {{ page.version.version }}/show-create-external-connection.md %}), [reset SQL statistics]({% link {{ page.version.version }}/ui-transactions-page.md %}#transaction-statistics), update [zone configurations]({% link {{ page.version.version }}/configure-replication-zones.md %}), [relocate ranges]({% link {{ page.version.version }}/alter-range.md %}#relocate), and check for constraint violations with [`SCRUB`]({% link {{ page.version.version }}/cockroachdb-feature-availability.md %}#check-for-constraint-violations-with-scrub). See also: [`VIEWCLUSTERMETADATA`](#viewclustermetadata).
25+
<a id="repaircluster"></a>`REPAIRCLUSTER`, `REPAIRCLUSTERMETADATA` | System | Grants the ability to perform cluster debugging and repair operations, including: edit [scheduled jobs]({% link {{ page.version.version }}/show-create-schedule.md %}), edit [external connections]({% link {{ page.version.version }}/show-create-external-connection.md %}), [reset SQL statistics]({% link {{ page.version.version }}/ui-transactions-page.md %}#transaction-statistics), update [zone configurations]({% link {{ page.version.version }}/configure-replication-zones.md %}), and [relocate ranges]({% link {{ page.version.version }}/alter-range.md %}#relocate). See also: [`VIEWCLUSTERMETADATA`](#viewclustermetadata).
2626
<a id="replicationdest"></a>`REPLICATIONDEST` | Table | Grants the ability to run logical data replication into an existing table on the destination cluster. For more details, refer to the [Set Up Logical Data Replication]({% link {{ page.version.version }}/set-up-logical-data-replication.md %}) tutorial.
2727
<a id="replicationsource"></a>`REPLICATIONSOURCE` | Table | Grants the ability to run logical data replication from a table on the source cluster. For more details, refer to the [Set Up Logical Data Replication]({% link {{ page.version.version }}/set-up-logical-data-replication.md %}) tutorial.
2828
`RESTORE` | System, Database | Grants the ability to restore [backups]({% link {{ page.version.version }}/backup-and-restore-overview.md %}) at the system or database level. Refer to `RESTORE` [Required privileges]({% link {{ page.version.version }}/restore.md %}#required-privileges) for more details.

‎src/current/v26.1/cockroachdb-feature-availability.md‎

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -200,33 +200,6 @@ Example:
200200
2018-10-18 15:50:20.628383+00:00 | 2 | 2 | 26
201201
~~~
202202

203-
### Check for constraint violations with `SCRUB`
204-
205-
Checks the consistency of [`UNIQUE`]({% link {{ page.version.version }}/unique.md %}) indexes, [`CHECK`]({% link {{ page.version.version }}/check.md %}) constraints, and more. Partially implemented; see [cockroachdb/cockroach#10425](https://github.com/cockroachdb/cockroach/issues/10425) for details.
206-
207-
{{site.data.alerts.callout_info}}
208-
This example uses the `users` table from our open-source, fictional peer-to-peer vehicle-sharing application, [MovR]({% link {{ page.version.version }}/movr.md %}).
209-
{{site.data.alerts.end}}
210-
211-
{% include_cached copy-clipboard.html %}
212-
~~~ sql
213-
> EXPERIMENTAL SCRUB table movr.users;
214-
~~~
215-
216-
~~~
217-
job_uuid | error_type | database | table | primary_key | timestamp | repaired | details
218-
----------+--------------------------+----------+-------+----------------------------------------------------------+---------------------------+----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
219-
| index_key_decoding_error | movr | users | ('boston','0009eeb5-d779-4bf8-b1bd-8566533b105c') | 2018-10-18 16:00:38.65916 | f | {"error_message": "key ordering did not match datum ordering. IndexDescriptor=ASC", "index_name": "primary", "row_data": {"address": "e'06484 Christine Villages\\nGrantport, TN 01572'", "city": "'boston'", "credit_card": "'4634253150884'", "id": "'0009eeb5-d779-4bf8-b1bd-8566533b105c'", "name": "'Jessica Webb'"}}
220-
| index_key_decoding_error | movr | users | ('los angeles','0001252c-fc16-4006-b6dc-c6b1a0fd1f5b') | 2018-10-18 16:00:38.65916 | f | {"error_message": "key ordering did not match datum ordering. IndexDescriptor=ASC", "index_name": "primary", "row_data": {"address": "e'91309 Warner Springs\\nLake Danielmouth, PR 33400'", "city": "'los angeles'", "credit_card": "'3584736360686445'", "id": "'0001252c-fc16-4006-b6dc-c6b1a0fd1f5b'", "name": "'Rebecca Gibson'"}}
221-
| index_key_decoding_error | movr | users | ('new york','000169a5-e337-4441-b664-dae63e682980') | 2018-10-18 16:00:38.65916 | f | {"error_message": "key ordering did not match datum ordering. IndexDescriptor=ASC", "index_name": "primary", "row_data": {"address": "e'0787 Christopher Highway Apt. 363\\nHamptonmouth, TX 91864-2620'", "city": "'new york'", "credit_card": "'4578562547256688'", "id": "'000169a5-e337-4441-b664-dae63e682980'", "name": "'Christopher Johnson'"}}
222-
| index_key_decoding_error | movr | users | ('paris','00089fc4-e5b1-48f6-9f0b-409905f228c4') | 2018-10-18 16:00:38.65916 | f | {"error_message": "key ordering did not match datum ordering. IndexDescriptor=ASC", "index_name": "primary", "row_data": {"address": "e'46735 Martin Summit\\nMichaelview, OH 10906-5889'", "city": "'paris'", "credit_card": "'5102207609888778'", "id": "'00089fc4-e5b1-48f6-9f0b-409905f228c4'", "name": "'Nicole Fuller'"}}
223-
| index_key_decoding_error | movr | users | ('rome','000209fc-69a1-4dd5-8053-3b5e5769876d') | 2018-10-18 16:00:38.65916 | f | {"error_message": "key ordering did not match datum ordering. IndexDescriptor=ASC", "index_name": "primary", "row_data": {"address": "e'473 Barrera Vista Apt. 890\\nYeseniaburgh, CO 78087'", "city": "'rome'", "credit_card": "'3534605564661093'", "id": "'000209fc-69a1-4dd5-8053-3b5e5769876d'", "name": "'Sheryl Shea'"}}
224-
| index_key_decoding_error | movr | users | ('san francisco','00058767-1e83-4e18-999f-13b5a74d7225') | 2018-10-18 16:00:38.65916 | f | {"error_message": "key ordering did not match datum ordering. IndexDescriptor=ASC", "index_name": "primary", "row_data": {"address": "e'5664 Acevedo Drive Suite 829\\nHernandezview, MI 13516'", "city": "'san francisco'", "credit_card": "'376185496850202'", "id": "'00058767-1e83-4e18-999f-13b5a74d7225'", "name": "'Kevin Turner'"}}
225-
| index_key_decoding_error | movr | users | ('seattle','0002e904-1256-4528-8b5f-abad16e695ff') | 2018-10-18 16:00:38.65916 | f | {"error_message": "key ordering did not match datum ordering. IndexDescriptor=ASC", "index_name": "primary", "row_data": {"address": "e'81499 Samuel Crescent Suite 631\\nLake Christopherborough, PR 50401'", "city": "'seattle'", "credit_card": "'38743493725890'", "id": "'0002e904-1256-4528-8b5f-abad16e695ff'", "name": "'Mark Williams'"}}
226-
| index_key_decoding_error | movr | users | ('washington dc','00007caf-2014-4696-85b0-840e7d8b6db9') | 2018-10-18 16:00:38.65916 | f | {"error_message": "key ordering did not match datum ordering. IndexDescriptor=ASC", "index_name": "primary", "row_data": {"address": "e'4578 Holder Trafficway\\nReynoldsside, IL 23520-7418'", "city": "'washington dc'", "credit_card": "'30454993082943'", "id": "'00007caf-2014-4696-85b0-840e7d8b6db9'", "name": "'Marie Miller'"}}
227-
(8 rows)
228-
~~~
229-
230203
### Show range information for a specific row
231204

232205
The [`SHOW RANGE ... FOR ROW`]({% link {{ page.version.version }}/show-range-for-row.md %}) statement shows information about a [range]({% link {{ page.version.version }}/architecture/overview.md %}#architecture-range) for a particular row of data. This information is useful for verifying how SQL data maps to underlying ranges, and where the replicas for a range are located.

‎src/current/v26.1/inspect.md‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ toc: true
55
docs_area: reference.sql
66
---
77

8-
The `INSPECT` [statement]({% link {{ page.version.version }}/sql-statements.md %}) runs a data consistency validation job against a table or database and records any errors it finds. To display errors recorded by an inspection job, use [`SHOW INSPECT ERRORS`]({% link {{ page.version.version }}/show-inspect-errors.md %}).
8+
{% include_cached new-in.html version="v26.1" %} The `INSPECT` [statement]({% link {{ page.version.version }}/sql-statements.md %}) runs a data consistency validation job against a table or database and records any errors it finds. To display errors recorded by an inspection job, use [`SHOW INSPECT ERRORS`]({% link {{ page.version.version }}/show-inspect-errors.md %}).
9+
10+
`INSPECT` is the generally available replacement for the deprecated `EXPERIMENTAL SCRUB` command.
911

1012
{{site.data.alerts.callout_info}}
1113
`INSPECT` is used to verify data integrity. It does not automatically repair errors.

0 commit comments

Comments
 (0)