@@ -3156,7 +3156,10 @@ CREATE TABLE IF NOT EXISTS omicron.public.support_bundle (
31563156 -- and later managing its storage.
31573157 assigned_nexus UUID,
31583158
3159- user_comment TEXT
3159+ user_comment TEXT ,
3160+
3161+ -- If this bundle was requested by an FM case, the case UUID.
3162+ fm_case_id UUID
31603163
31613164);
31623165
@@ -7440,6 +7443,72 @@ CREATE INDEX IF NOT EXISTS
74407443 lookup_fm_alert_requests_for_case
74417444ON omicron .public .fm_alert_request (sitrep_id, case_id);
74427445
7446+ CREATE TABLE IF NOT EXISTS omicron .public .fm_support_bundle_request (
7447+ -- Requested support bundle UUID.
7448+ id UUID NOT NULL ,
7449+ -- UUID of the current sitrep that this request record is part of.
7450+ --
7451+ -- Note that this is *not* the sitrep in which the bundle was requested.
7452+ sitrep_id UUID NOT NULL ,
7453+ -- UUID of the original sitrep in which the bundle was first requested.
7454+ requested_sitrep_id UUID NOT NULL ,
7455+ -- UUID of the case to which this request belongs.
7456+ case_id UUID NOT NULL ,
7457+ -- Human-readable reason for requesting the bundle.
7458+ reason TEXT NOT NULL ,
7459+
7460+ PRIMARY KEY (sitrep_id, id)
7461+ );
7462+
7463+ CREATE INDEX IF NOT EXISTS
7464+ lookup_fm_support_bundle_requests_for_case
7465+ ON omicron .public .fm_support_bundle_request (sitrep_id, case_id);
7466+
7467+ -- Per-variant data selection tables for fm_support_bundle_request.
7468+ -- Row existence = "include this category in the bundle."
7469+ -- No rows in any variant table = "collect everything."
7470+
7471+ CREATE TABLE IF NOT EXISTS omicron .public .fm_sb_req_reconfigurator (
7472+ sitrep_id UUID NOT NULL ,
7473+ request_id UUID NOT NULL ,
7474+
7475+ PRIMARY KEY (sitrep_id, request_id)
7476+ );
7477+
7478+ CREATE TABLE IF NOT EXISTS omicron .public .fm_sb_req_sled_cubby_info (
7479+ sitrep_id UUID NOT NULL ,
7480+ request_id UUID NOT NULL ,
7481+
7482+ PRIMARY KEY (sitrep_id, request_id)
7483+ );
7484+
7485+ CREATE TABLE IF NOT EXISTS omicron .public .fm_sb_req_sp_dumps (
7486+ sitrep_id UUID NOT NULL ,
7487+ request_id UUID NOT NULL ,
7488+
7489+ PRIMARY KEY (sitrep_id, request_id)
7490+ );
7491+
7492+ CREATE TABLE IF NOT EXISTS omicron .public .fm_sb_req_host_info (
7493+ sitrep_id UUID NOT NULL ,
7494+ request_id UUID NOT NULL ,
7495+ all_sleds BOOL NOT NULL ,
7496+ sled_ids UUID[] NOT NULL DEFAULT ARRAY[],
7497+
7498+ PRIMARY KEY (sitrep_id, request_id)
7499+ );
7500+
7501+ CREATE TABLE IF NOT EXISTS omicron .public .fm_sb_req_ereports (
7502+ sitrep_id UUID NOT NULL ,
7503+ request_id UUID NOT NULL ,
7504+ start_time TIMESTAMPTZ ,
7505+ end_time TIMESTAMPTZ ,
7506+ only_serials TEXT [] NOT NULL DEFAULT ARRAY[],
7507+ only_classes TEXT [] NOT NULL DEFAULT ARRAY[],
7508+
7509+ PRIMARY KEY (sitrep_id, request_id)
7510+ );
7511+
74437512/*
74447513 * List of datasets available to be sliced up and passed to VMMs for encrypted
74457514 * instance local storage.
@@ -8270,7 +8339,7 @@ INSERT INTO omicron.public.db_metadata (
82708339 version,
82718340 target_version
82728341) VALUES
8273- (TRUE, NOW(), NOW(), ' 240 .0.0' , NULL )
8342+ (TRUE, NOW(), NOW(), ' 241 .0.0' , NULL )
82748343ON CONFLICT DO NOTHING;
82758344
82768345COMMIT ;
0 commit comments