Skip to content

Commit 9964fac

Browse files
committed
sql: add transaction diagnostic bundle tables
This commit contains a schema change and an upgrade migration to begin adding support for transaction diagnostic bundles. The new functionality will maintain diagnostic bundle requests and record completed diagnostics very similar to statement diagnostics. We have a `transaction_diagnostic_requests` table which holds pending requests and marks them as completed. Future PRs will poll this table to update the in-memory registry of pending requests to match against incoming SQL. We also have a `transaction_diagnostics` table which holds rows for completed diagnostics requests. Notable details: - Transaction diagnostic bundle requests store fingerprint IDs for transactions and statements which can be resolved to fingerprints via the SQL Activity tables. - Completed transaction diagnostics reference chunks that contain the trace (and any other metadata) for the entire transaction. - Statement diagnostic bundles will now potentially point to a "parent" transaction diagnostic bundle Also fixed up some whitespace in the diagnostic bundle system schema. Resolves: CRDB-53545 Epic: CRDB-53541 Release note: None
1 parent 3fa36dc commit 9964fac

File tree

97 files changed

+996
-401
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

97 files changed

+996
-401
lines changed

docs/generated/settings/settings-for-tenants.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -421,4 +421,4 @@ trace.zipkin.collector string the address of a Zipkin instance to receive trace
421421
ui.database_locality_metadata.enabled boolean true if enabled shows extended locality data about databases and tables in DB Console which can be expensive to compute application
422422
ui.default_timezone string the default timezone used to format timestamps in the ui application
423423
ui.display_timezone enumeration etc/utc the timezone used to format timestamps in the ui. This setting is deprecatedand will be removed in a future version. Use the 'ui.default_timezone' setting instead. 'ui.default_timezone' takes precedence over this setting. [etc/utc = 0, america/new_york = 1] application
424-
version version 1000025.3-upgrading-to-1000025.4-step-008 set the active cluster version in the format '<major>.<minor>' application
424+
version version 1000025.3-upgrading-to-1000025.4-step-010 set the active cluster version in the format '<major>.<minor>' application

docs/generated/settings/settings.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -379,6 +379,6 @@
379379
<tr><td><div id="setting-ui-database-locality-metadata-enabled" class="anchored"><code>ui.database_locality_metadata.enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>if enabled shows extended locality data about databases and tables in DB Console which can be expensive to compute</td><td>Basic/Standard/Advanced/Self-Hosted</td></tr>
380380
<tr><td><div id="setting-ui-default-timezone" class="anchored"><code>ui.default_timezone</code></div></td><td>string</td><td><code></code></td><td>the default timezone used to format timestamps in the ui</td><td>Basic/Standard/Advanced/Self-Hosted</td></tr>
381381
<tr><td><div id="setting-ui-display-timezone" class="anchored"><code>ui.display_timezone</code></div></td><td>enumeration</td><td><code>etc/utc</code></td><td>the timezone used to format timestamps in the ui. This setting is deprecatedand will be removed in a future version. Use the &#39;ui.default_timezone&#39; setting instead. &#39;ui.default_timezone&#39; takes precedence over this setting. [etc/utc = 0, america/new_york = 1]</td><td>Basic/Standard/Advanced/Self-Hosted</td></tr>
382-
<tr><td><div id="setting-version" class="anchored"><code>version</code></div></td><td>version</td><td><code>1000025.3-upgrading-to-1000025.4-step-008</code></td><td>set the active cluster version in the format &#39;&lt;major&gt;.&lt;minor&gt;&#39;</td><td>Basic/Standard/Advanced/Self-Hosted</td></tr>
382+
<tr><td><div id="setting-version" class="anchored"><code>version</code></div></td><td>version</td><td><code>1000025.3-upgrading-to-1000025.4-step-010</code></td><td>set the active cluster version in the format &#39;&lt;major&gt;.&lt;minor&gt;&#39;</td><td>Basic/Standard/Advanced/Self-Hosted</td></tr>
383383
</tbody>
384384
</table>

pkg/backup/system_schema.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -866,6 +866,12 @@ var systemTableBackupConfiguration = map[string]systemBackupConfiguration{
866866
systemschema.InspectErrorsTable.GetName(): {
867867
shouldIncludeInClusterBackup: optOutOfClusterBackup,
868868
},
869+
systemschema.TransactionDiagnosticsRequestsTable.GetName(): {
870+
shouldIncludeInClusterBackup: optOutOfClusterBackup,
871+
},
872+
systemschema.TransactionDiagnosticsTable.GetName(): {
873+
shouldIncludeInClusterBackup: optOutOfClusterBackup,
874+
},
869875
}
870876

871877
func rekeySystemTable(

pkg/ccl/logictestccl/testdata/logic_test/crdb_internal_tenant

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -251,12 +251,12 @@ txn_id txn_fingerprint_id query implicit_txn session_id start_time end_tim
251251
query ITTI
252252
SELECT range_id, start_pretty, end_pretty, lease_holder FROM crdb_internal.ranges
253253
----
254-
76 /Tenant/10 /Tenant/11 1
254+
78 /Tenant/10 /Tenant/11 1
255255

256256
query ITT
257257
SELECT range_id, start_pretty, end_pretty FROM crdb_internal.ranges_no_leases
258258
----
259-
76 /Tenant/10 /Tenant/11
259+
78 /Tenant/10 /Tenant/11
260260

261261
query IT
262262
SELECT zone_id, target FROM crdb_internal.zones ORDER BY 1

pkg/ccl/logictestccl/testdata/logic_test/multi_region_remote_access_error

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -471,7 +471,7 @@ skipif config multiregion-9node-3region-3azs-vec-off
471471
query I retry
472472
SELECT DISTINCT range_id FROM [SHOW RANGES FROM TABLE messages_rbr]
473473
----
474-
81
474+
83
475475

476476
# Update does not fail when accessing all rows in messages_rbr because lookup
477477
# join does not error out the lookup table in phase 1.

pkg/ccl/logictestccl/testdata/logic_test/regional_by_row_insert_fast_path

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ query T rowsort
200200
SELECT message FROM [SHOW KV TRACE FOR SESSION]
201201
WHERE message LIKE '%batch%' AND message LIKE '%Scan%'
202202
----
203-
r75: sending batch 4 Scan to (n1,s1):1
203+
r77: sending batch 4 Scan to (n1,s1):1
204204

205205
# Regression test for #115377.
206206
statement ok

pkg/ccl/logictestccl/testdata/logic_test/regional_by_row_query_behavior

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,7 +266,7 @@ ap-southeast-2 23
266266
query TT
267267
SELECT start_key, end_key FROM [SHOW RANGE FROM TABLE regional_by_row_table FOR ROW ('ap-southeast-2', 1)]
268268
----
269-
<before:/Table/73> …
269+
<before:/Table/75> …
270270

271271
query TIIII
272272
SELECT crdb_region, pk, pk2, a, b FROM regional_by_row_table
@@ -404,7 +404,7 @@ SELECT start_key, end_key, replicas, lease_holder FROM [SHOW RANGES FROM INDEX r
404404
ORDER BY 1
405405
----
406406
start_key end_key replicas lease_holder
407-
<before:/Table/73> …/"\x80"/0 {1} 1
407+
<before:/Table/75> …/"\x80"/0 {1} 1
408408
…/"\x80"/0 …/"\xc0"/0 {4} 4
409409
…/"\xc0"/0 <after:/Table/110/5> {7} 7
410410

pkg/ccl/spanconfigccl/spanconfigreconcilerccl/testdata/basic

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ upsert /Table/7{0-1} database system (host)
8181
upsert /Table/7{1-2} database system (host)
8282
upsert /Table/7{2-3} database system (host)
8383
upsert /Table/7{3-4} database system (host)
84+
upsert /Table/7{4-5} database system (host)
85+
upsert /Table/7{5-6} database system (host)
8486

8587
exec-sql
8688
CREATE DATABASE db;
@@ -144,6 +146,8 @@ state offset=47
144146
/Table/7{1-2} database system (host)
145147
/Table/7{2-3} database system (host)
146148
/Table/7{3-4} database system (host)
149+
/Table/7{4-5} database system (host)
150+
/Table/7{5-6} database system (host)
147151
/Table/10{6-7} num_replicas=7 num_voters=5
148152
/Table/10{7-8} num_replicas=7
149153
/Table/11{2-3} num_replicas=7
@@ -275,6 +279,10 @@ delete /Table/7{2-3}
275279
upsert /Table/7{2-3} ttl_seconds=100 ignore_strict_gc=true num_replicas=5 rangefeed_enabled=true
276280
delete /Table/7{3-4}
277281
upsert /Table/7{3-4} ttl_seconds=100 ignore_strict_gc=true num_replicas=5 rangefeed_enabled=true
282+
delete /Table/7{4-5}
283+
upsert /Table/7{4-5} ttl_seconds=100 ignore_strict_gc=true num_replicas=5 rangefeed_enabled=true
284+
delete /Table/7{5-6}
285+
upsert /Table/7{5-6} ttl_seconds=100 ignore_strict_gc=true num_replicas=5 rangefeed_enabled=true
278286

279287
state offset=5 limit=42
280288
----

pkg/ccl/spanconfigccl/spanconfigreconcilerccl/testdata/indexes

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@ state offset=47
4848
/Table/7{1-2} database system (host)
4949
/Table/7{2-3} database system (host)
5050
/Table/7{3-4} database system (host)
51+
/Table/7{4-5} database system (host)
52+
/Table/7{5-6} database system (host)
5153
/Table/10{6-7} range default
5254

5355
exec-sql
@@ -96,6 +98,8 @@ state offset=47
9698
/Table/7{1-2} database system (host)
9799
/Table/7{2-3} database system (host)
98100
/Table/7{3-4} database system (host)
101+
/Table/7{4-5} database system (host)
102+
/Table/7{5-6} database system (host)
99103
/Table/106{-/2} num_replicas=7
100104
/Table/106/{2-3} num_replicas=7 num_voters=5
101105
/Table/10{6/3-7} num_replicas=7
@@ -146,6 +150,8 @@ state offset=47
146150
/Table/7{1-2} database system (host)
147151
/Table/7{2-3} database system (host)
148152
/Table/7{3-4} database system (host)
153+
/Table/7{4-5} database system (host)
154+
/Table/7{5-6} database system (host)
149155
/Table/106{-/2} ttl_seconds=3600 num_replicas=7
150156
/Table/106/{2-3} ttl_seconds=25 num_replicas=7 num_voters=5
151157
/Table/10{6/3-7} ttl_seconds=3600 num_replicas=7
@@ -186,6 +192,8 @@ state offset=47
186192
/Table/7{1-2} database system (host)
187193
/Table/7{2-3} database system (host)
188194
/Table/7{3-4} database system (host)
195+
/Table/7{4-5} database system (host)
196+
/Table/7{5-6} database system (host)
189197
/Table/106{-/2} ttl_seconds=3600 num_replicas=9
190198
/Table/106/{2-3} ttl_seconds=25 num_replicas=9 num_voters=5
191199
/Table/10{6/3-7} ttl_seconds=3600 num_replicas=9
@@ -240,3 +248,5 @@ state offset=46
240248
/Table/7{1-2} database system (host)
241249
/Table/7{2-3} database system (host)
242250
/Table/7{3-4} database system (host)
251+
/Table/7{4-5} database system (host)
252+
/Table/7{5-6} database system (host)

pkg/ccl/spanconfigccl/spanconfigreconcilerccl/testdata/multitenant/basic

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,8 @@ state offset=47
4949
/Table/7{1-2} database system (host)
5050
/Table/7{2-3} database system (host)
5151
/Table/7{3-4} database system (host)
52+
/Table/7{4-5} database system (host)
53+
/Table/7{5-6} database system (host)
5254
/Tenant/10{-\x00} database system (tenant)
5355
/Tenant/11{-\x00} database system (tenant)
5456
/Tenant/12{-\x00} database system (tenant)
@@ -123,6 +125,8 @@ upsert /Tenant/10/Table/7{0-1} database system (tenant)
123125
upsert /Tenant/10/Table/7{1-2} database system (tenant)
124126
upsert /Tenant/10/Table/7{2-3} database system (tenant)
125127
upsert /Tenant/10/Table/7{3-4} database system (tenant)
128+
upsert /Tenant/10/Table/7{4-5} database system (tenant)
129+
upsert /Tenant/10/Table/7{5-6} database system (tenant)
126130

127131
state offset=47
128132
----
@@ -154,6 +158,8 @@ state offset=47
154158
/Table/7{1-2} database system (host)
155159
/Table/7{2-3} database system (host)
156160
/Table/7{3-4} database system (host)
161+
/Table/7{4-5} database system (host)
162+
/Table/7{5-6} database system (host)
157163
/Tenant/10{-/Table/4} database system (tenant)
158164
/Tenant/10/Table/{4-5} database system (tenant)
159165
/Tenant/10/Table/{5-6} database system (tenant)
@@ -217,6 +223,8 @@ state offset=47
217223
/Tenant/10/Table/7{1-2} database system (tenant)
218224
/Tenant/10/Table/7{2-3} database system (tenant)
219225
/Tenant/10/Table/7{3-4} database system (tenant)
226+
/Tenant/10/Table/7{4-5} database system (tenant)
227+
/Tenant/10/Table/7{5-6} database system (tenant)
220228
/Tenant/11{-\x00} database system (tenant)
221229
/Tenant/12{-\x00} database system (tenant)
222230

@@ -241,6 +249,8 @@ upsert /Tenant/10/Table/11{3-4} rangefeed_enabled=true
241249
state offset=81
242250
----
243251
...
252+
/Tenant/10/Table/{8-9} database system (tenant)
253+
/Tenant/10/Table/{9-10} database system (tenant)
244254
/Tenant/10/Table/1{1-2} ignore_strict_gc=true rangefeed_enabled=true exclude_data_from_backup=true
245255
/Tenant/10/Table/1{2-3} database system (tenant)
246256
/Tenant/10/Table/1{3-4} database system (tenant)
@@ -297,6 +307,8 @@ state offset=81
297307
/Tenant/10/Table/7{1-2} database system (tenant)
298308
/Tenant/10/Table/7{2-3} database system (tenant)
299309
/Tenant/10/Table/7{3-4} database system (tenant)
310+
/Tenant/10/Table/7{4-5} database system (tenant)
311+
/Tenant/10/Table/7{5-6} database system (tenant)
300312
/Tenant/10/Table/10{6-7} rangefeed_enabled=true
301313
/Tenant/10/Table/10{7-8} rangefeed_enabled=true
302314
/Tenant/10/Table/11{2-3} rangefeed_enabled=true

0 commit comments

Comments
 (0)