1use proptest_derive::Arbitrary;
11use serde::{Deserialize, Serialize};
12use serde_repr::{Deserialize_repr, Serialize_repr};
13
14#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
15pub struct ConfigKey {
16 pub key: String,
17}
18
19#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
20pub struct ConfigValue {
21 pub value: u64,
22}
23
24#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
25pub struct SettingKey {
26 pub name: String,
27}
28
29#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
30pub struct SettingValue {
31 pub value: String,
32}
33
34#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
35pub struct IdAllocKey {
36 pub name: String,
37}
38
39#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
40pub struct IdAllocValue {
41 pub next_id: u64,
42}
43
44#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
45pub struct GidMappingKey {
46 pub schema_name: String,
47 pub object_type: CatalogItemType,
48 pub object_name: String,
49}
50
51#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
52pub struct GidMappingValue {
53 pub catalog_id: SystemCatalogItemId,
54 pub global_id: SystemGlobalId,
55 pub fingerprint: String,
56}
57
58#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
59pub struct ClusterKey {
60 pub id: ClusterId,
61}
62
63#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
64pub struct ClusterValue {
65 pub name: String,
66 pub owner_id: RoleId,
67 pub privileges: Vec<MzAclItem>,
68 pub config: ClusterConfig,
69}
70
71#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
72pub struct ClusterIntrospectionSourceIndexKey {
73 pub cluster_id: ClusterId,
74 pub name: String,
75}
76
77#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
78pub struct ClusterIntrospectionSourceIndexValue {
79 pub catalog_id: IntrospectionSourceIndexCatalogItemId,
80 pub global_id: IntrospectionSourceIndexGlobalId,
81 pub oid: u32,
82}
83
84#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
85pub struct ClusterReplicaKey {
86 pub id: ReplicaId,
87}
88
89#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
90pub struct ClusterReplicaValue {
91 pub cluster_id: ClusterId,
92 pub name: String,
93 pub config: ReplicaConfig,
94 pub owner_id: RoleId,
95}
96
97#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
98pub struct DatabaseKey {
99 pub id: DatabaseId,
100}
101
102#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
103pub struct DatabaseValue {
104 pub name: String,
105 pub owner_id: RoleId,
106 pub privileges: Vec<MzAclItem>,
107 pub oid: u32,
108}
109
110#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
111pub struct SchemaKey {
112 pub id: SchemaId,
113}
114
115#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
116pub struct SchemaValue {
117 pub database_id: Option<DatabaseId>,
118 pub name: String,
119 pub owner_id: RoleId,
120 pub privileges: Vec<MzAclItem>,
121 pub oid: u32,
122}
123
124#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
125pub struct ItemKey {
126 pub gid: CatalogItemId,
127}
128
129#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
130pub struct ItemValue {
131 pub schema_id: SchemaId,
132 pub name: String,
133 pub definition: CatalogItem,
134 pub owner_id: RoleId,
135 pub privileges: Vec<MzAclItem>,
136 pub oid: u32,
137 pub global_id: GlobalId,
138 pub extra_versions: Vec<ItemVersion>,
139}
140
141#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
142pub struct ItemVersion {
143 pub global_id: GlobalId,
144 pub version: Version,
145}
146
147#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
148pub struct RoleKey {
149 pub id: RoleId,
150}
151
152#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
153pub struct RoleValue {
154 pub name: String,
155 pub attributes: RoleAttributes,
156 pub membership: RoleMembership,
157 pub vars: RoleVars,
158 pub oid: u32,
159}
160
161#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
162pub struct RoleAuthKey {
163 pub id: RoleId,
164}
165
166#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
167pub struct RoleAuthValue {
168 pub password_hash: Option<String>,
169 pub updated_at: EpochMillis,
170}
171
172#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
173pub struct NetworkPolicyKey {
174 pub id: NetworkPolicyId,
175}
176
177#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
178pub struct NetworkPolicyValue {
179 pub name: String,
180 pub rules: Vec<NetworkPolicyRule>,
181 pub owner_id: RoleId,
182 pub privileges: Vec<MzAclItem>,
183 pub oid: u32,
184}
185
186#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
187pub struct ServerConfigurationKey {
188 pub name: String,
189}
190
191#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
192pub struct ServerConfigurationValue {
193 pub value: String,
194}
195
196#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
197pub struct AuditLogKey {
198 pub event: AuditLogEvent,
199}
200
201#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
202pub enum AuditLogEvent {
203 V1(AuditLogEventV1),
204}
205
206#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
207pub struct CommentKey {
208 pub object: CommentObject,
209 pub sub_component: Option<CommentSubComponent>,
210}
211
212#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
213pub enum CommentObject {
214 Table(CatalogItemId),
215 View(CatalogItemId),
216 MaterializedView(CatalogItemId),
217 Source(CatalogItemId),
218 Sink(CatalogItemId),
219 Index(CatalogItemId),
220 Func(CatalogItemId),
221 Connection(CatalogItemId),
222 Type(CatalogItemId),
223 Secret(CatalogItemId),
224 ContinualTask(CatalogItemId),
225 Role(RoleId),
226 Database(DatabaseId),
227 Schema(ResolvedSchema),
228 Cluster(ClusterId),
229 ClusterReplica(ClusterReplicaId),
230 NetworkPolicy(NetworkPolicyId),
231}
232
233#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
234pub enum CommentSubComponent {
235 ColumnPos(u64),
236}
237
238#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
239pub struct CommentValue {
240 pub comment: String,
241}
242
243#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
244pub struct SourceReferencesKey {
245 pub source: CatalogItemId,
246}
247
248#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
249pub struct SourceReferencesValue {
250 pub references: Vec<SourceReference>,
251 pub updated_at: EpochMillis,
252}
253
254#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
255pub struct SourceReference {
256 pub name: String,
257 pub namespace: Option<String>,
258 pub columns: Vec<String>,
259}
260
261#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
262pub struct StorageCollectionMetadataKey {
263 pub id: GlobalId,
264}
265
266#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
267pub struct StorageCollectionMetadataValue {
268 pub shard: String,
269}
270
271#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
272pub struct UnfinalizedShardKey {
273 pub shard: String,
274}
275
276#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
277pub struct TxnWalShardValue {
278 pub shard: String,
279}
280
281#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
282pub struct Empty {}
283
284#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
285pub struct StringWrapper {
286 pub inner: String,
287}
288
289#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
290pub struct Duration {
291 pub secs: u64,
292 pub nanos: u32,
293}
294
295#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
296pub struct EpochMillis {
297 pub millis: u64,
298}
299
300#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
301pub struct Version {
302 pub value: u64,
303}
304
305#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
306pub enum CatalogItem {
307 V1(CatalogItemV1),
308}
309
310#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
311pub struct CatalogItemV1 {
312 pub create_sql: String,
313}
314
315#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
316pub enum CatalogItemId {
317 System(u64),
318 User(u64),
319 Transient(u64),
320 IntrospectionSourceIndex(u64),
321}
322
323#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
324pub struct SystemCatalogItemId(pub u64);
325
326#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
327pub struct IntrospectionSourceIndexCatalogItemId(pub u64);
328
329#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
330pub enum GlobalId {
331 System(u64),
332 User(u64),
333 Transient(u64),
334 Explain,
335 IntrospectionSourceIndex(u64),
336}
337
338#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
339pub struct SystemGlobalId(pub u64);
340
341#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
342pub struct IntrospectionSourceIndexGlobalId(pub u64);
343
344#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
345pub enum ClusterId {
346 System(u64),
347 User(u64),
348}
349
350#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
351pub enum DatabaseId {
352 System(u64),
353 User(u64),
354}
355
356#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
357pub enum ResolvedDatabaseSpecifier {
358 Ambient,
359 Id(DatabaseId),
360}
361
362#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
363pub enum SchemaId {
364 System(u64),
365 User(u64),
366}
367
368#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
369pub enum SchemaSpecifier {
370 Temporary,
371 Id(SchemaId),
372}
373
374#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
375pub struct ResolvedSchema {
376 pub database: ResolvedDatabaseSpecifier,
377 pub schema: SchemaSpecifier,
378}
379
380#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
381pub enum ReplicaId {
382 System(u64),
383 User(u64),
384}
385
386#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
387pub struct ClusterReplicaId {
388 pub cluster_id: ClusterId,
389 pub replica_id: ReplicaId,
390}
391
392#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
393pub enum NetworkPolicyId {
394 System(u64),
395 User(u64),
396}
397
398#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
399pub struct ReplicaLogging {
400 pub log_logging: bool,
401 pub interval: Option<Duration>,
402}
403
404#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
405pub struct OptimizerFeatureOverride {
406 pub name: String,
407 pub value: String,
408}
409
410#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
411pub struct ClusterScheduleRefreshOptions {
412 pub rehydration_time_estimate: Duration,
413}
414
415#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
416pub enum ClusterSchedule {
417 Manual,
418 Refresh(ClusterScheduleRefreshOptions),
419}
420
421#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
422pub struct ClusterConfig {
423 pub workload_class: Option<String>,
424 pub variant: ClusterVariant,
425}
426
427#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
428pub enum ClusterVariant {
429 Unmanaged,
430 Managed(ManagedCluster),
431}
432
433#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
434pub struct ManagedCluster {
435 pub size: String,
436 pub replication_factor: u32,
437 pub availability_zones: Vec<String>,
438 pub logging: ReplicaLogging,
439 pub optimizer_feature_overrides: Vec<OptimizerFeatureOverride>,
440 pub schedule: ClusterSchedule,
441}
442
443#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
444pub struct ReplicaConfig {
445 pub logging: ReplicaLogging,
446 pub location: ReplicaLocation,
447}
448
449#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
450pub struct UnmanagedLocation {
451 pub storagectl_addrs: Vec<String>,
452 pub computectl_addrs: Vec<String>,
453}
454
455#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
456pub struct ManagedLocation {
457 pub size: String,
458 pub availability_zone: Option<String>,
459 pub internal: bool,
460 pub billed_as: Option<String>,
461 pub pending: bool,
462}
463
464#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
465pub enum ReplicaLocation {
466 Unmanaged(UnmanagedLocation),
467 Managed(ManagedLocation),
468}
469
470#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
471pub enum RoleId {
472 System(u64),
473 User(u64),
474 Public,
475 Predefined(u64),
476}
477
478#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
479pub struct RoleAttributes {
480 pub inherit: bool,
481 pub superuser: Option<bool>,
482 pub login: Option<bool>,
483}
484
485#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
486pub struct RoleMembership {
487 pub map: Vec<RoleMembershipEntry>,
488}
489
490#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
491pub struct RoleMembershipEntry {
492 pub key: RoleId,
493 pub value: RoleId,
494}
495
496#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
497pub struct RoleVars {
498 pub entries: Vec<RoleVarsEntry>,
499}
500
501#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
502pub struct RoleVarsEntry {
503 pub key: String,
504 pub val: RoleVar,
505}
506
507#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
508pub enum RoleVar {
509 Flat(String),
510 SqlSet(Vec<String>),
511}
512
513#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
514pub struct NetworkPolicyRule {
515 pub name: String,
516 pub address: String,
517 pub action: NetworkPolicyRuleAction,
518 pub direction: NetworkPolicyRuleDirection,
519}
520
521#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
522pub enum NetworkPolicyRuleAction {
523 Allow,
524}
525
526#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
527pub enum NetworkPolicyRuleDirection {
528 Ingress,
529}
530
531#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
532pub struct AclMode {
533 pub bitflags: u64,
534}
535
536#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
537pub struct MzAclItem {
538 pub grantee: RoleId,
539 pub grantor: RoleId,
540 pub acl_mode: AclMode,
541}
542
543#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
544pub struct DefaultPrivilegesKey {
545 pub role_id: RoleId,
546 pub database_id: Option<DatabaseId>,
547 pub schema_id: Option<SchemaId>,
548 pub object_type: ObjectType,
549 pub grantee: RoleId,
550}
551
552#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
553pub struct DefaultPrivilegesValue {
554 pub privileges: AclMode,
555}
556
557#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
558pub struct SystemPrivilegesKey {
559 pub grantee: RoleId,
560 pub grantor: RoleId,
561}
562
563#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
564pub struct SystemPrivilegesValue {
565 pub acl_mode: AclMode,
566}
567
568#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
569pub struct AuditLogEventV1 {
570 pub id: u64,
571 pub event_type: audit_log_event_v1::EventType,
572 pub object_type: audit_log_event_v1::ObjectType,
573 pub user: Option<StringWrapper>,
574 pub occurred_at: EpochMillis,
575 pub details: audit_log_event_v1::Details,
576}
577
578pub mod audit_log_event_v1 {
579 use super::*;
580
581 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
582 pub struct IdFullNameV1 {
583 pub id: String,
584 pub name: FullNameV1,
585 }
586
587 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
588 pub struct FullNameV1 {
589 pub database: String,
590 pub schema: String,
591 pub item: String,
592 }
593
594 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
595 pub struct IdNameV1 {
596 pub id: String,
597 pub name: String,
598 }
599
600 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
601 pub struct RenameClusterV1 {
602 pub id: String,
603 pub old_name: String,
604 pub new_name: String,
605 }
606
607 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
608 pub struct RenameClusterReplicaV1 {
609 pub cluster_id: String,
610 pub replica_id: String,
611 pub old_name: String,
612 pub new_name: String,
613 }
614
615 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
616 pub struct RenameItemV1 {
617 pub id: String,
618 pub old_name: FullNameV1,
619 pub new_name: FullNameV1,
620 }
621
622 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
623 pub struct CreateClusterReplicaV1 {
624 pub cluster_id: String,
625 pub cluster_name: String,
626 pub replica_id: Option<StringWrapper>,
627 pub replica_name: String,
628 pub logical_size: String,
629 pub disk: bool,
630 pub billed_as: Option<String>,
631 pub internal: bool,
632 }
633
634 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
635 pub struct CreateClusterReplicaV2 {
636 pub cluster_id: String,
637 pub cluster_name: String,
638 pub replica_id: Option<StringWrapper>,
639 pub replica_name: String,
640 pub logical_size: String,
641 pub disk: bool,
642 pub billed_as: Option<String>,
643 pub internal: bool,
644 pub reason: CreateOrDropClusterReplicaReasonV1,
645 pub scheduling_policies: Option<SchedulingDecisionsWithReasonsV1>,
646 }
647
648 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
649 pub struct CreateClusterReplicaV3 {
650 pub cluster_id: String,
651 pub cluster_name: String,
652 pub replica_id: Option<StringWrapper>,
653 pub replica_name: String,
654 pub logical_size: String,
655 pub disk: bool,
656 pub billed_as: Option<String>,
657 pub internal: bool,
658 pub reason: CreateOrDropClusterReplicaReasonV1,
659 pub scheduling_policies: Option<SchedulingDecisionsWithReasonsV2>,
660 }
661
662 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
663 pub struct CreateClusterReplicaV4 {
664 pub cluster_id: String,
665 pub cluster_name: String,
666 pub replica_id: Option<StringWrapper>,
667 pub replica_name: String,
668 pub logical_size: String,
669 pub billed_as: Option<String>,
670 pub internal: bool,
671 pub reason: CreateOrDropClusterReplicaReasonV1,
672 pub scheduling_policies: Option<SchedulingDecisionsWithReasonsV2>,
673 }
674
675 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
676 pub struct DropClusterReplicaV1 {
677 pub cluster_id: String,
678 pub cluster_name: String,
679 pub replica_id: Option<StringWrapper>,
680 pub replica_name: String,
681 }
682
683 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
684 pub struct DropClusterReplicaV2 {
685 pub cluster_id: String,
686 pub cluster_name: String,
687 pub replica_id: Option<StringWrapper>,
688 pub replica_name: String,
689 pub reason: CreateOrDropClusterReplicaReasonV1,
690 pub scheduling_policies: Option<SchedulingDecisionsWithReasonsV1>,
691 }
692
693 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
694 pub struct DropClusterReplicaV3 {
695 pub cluster_id: String,
696 pub cluster_name: String,
697 pub replica_id: Option<StringWrapper>,
698 pub replica_name: String,
699 pub reason: CreateOrDropClusterReplicaReasonV1,
700 pub scheduling_policies: Option<SchedulingDecisionsWithReasonsV2>,
701 }
702
703 #[derive(
704 Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary,
705 )]
706 pub struct CreateOrDropClusterReplicaReasonV1 {
707 pub reason: CreateOrDropClusterReplicaReasonV1Reason,
708 }
709
710 #[derive(
711 Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary,
712 )]
713 pub enum CreateOrDropClusterReplicaReasonV1Reason {
714 Manual(Empty),
715 Schedule(Empty),
716 System(Empty),
717 }
718
719 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
720 pub struct SchedulingDecisionsWithReasonsV1 {
721 pub on_refresh: RefreshDecisionWithReasonV1,
722 }
723
724 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
725 pub struct SchedulingDecisionsWithReasonsV2 {
726 pub on_refresh: RefreshDecisionWithReasonV2,
727 }
728
729 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
730 pub enum RefreshDecision {
731 On(Empty),
732 Off(Empty),
733 }
734
735 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
736 pub struct RefreshDecisionWithReasonV1 {
737 pub objects_needing_refresh: Vec<String>,
738 pub rehydration_time_estimate: String,
739 pub decision: RefreshDecision,
740 }
741
742 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
743 pub struct RefreshDecisionWithReasonV2 {
744 pub objects_needing_refresh: Vec<String>,
745 pub objects_needing_compaction: Vec<String>,
746 pub rehydration_time_estimate: String,
747 pub decision: RefreshDecision,
748 }
749
750 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
751 pub struct CreateSourceSinkV1 {
752 pub id: String,
753 pub name: FullNameV1,
754 pub size: Option<StringWrapper>,
755 }
756
757 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
758 pub struct CreateSourceSinkV2 {
759 pub id: String,
760 pub name: FullNameV1,
761 pub size: Option<StringWrapper>,
762 pub external_type: String,
763 }
764
765 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
766 pub struct CreateSourceSinkV3 {
767 pub id: String,
768 pub name: FullNameV1,
769 pub external_type: String,
770 }
771
772 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
773 pub struct CreateSourceSinkV4 {
774 pub id: String,
775 pub cluster_id: Option<StringWrapper>,
776 pub name: FullNameV1,
777 pub external_type: String,
778 }
779
780 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
781 pub struct CreateIndexV1 {
782 pub id: String,
783 pub cluster_id: String,
784 pub name: FullNameV1,
785 }
786
787 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
788 pub struct CreateMaterializedViewV1 {
789 pub id: String,
790 pub cluster_id: String,
791 pub name: FullNameV1,
792 }
793
794 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
795 pub struct AlterSourceSinkV1 {
796 pub id: String,
797 pub name: FullNameV1,
798 pub old_size: Option<StringWrapper>,
799 pub new_size: Option<StringWrapper>,
800 }
801
802 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
803 pub struct AlterSetClusterV1 {
804 pub id: String,
805 pub name: FullNameV1,
806 pub old_cluster: Option<StringWrapper>,
807 pub new_cluster: Option<StringWrapper>,
808 }
809
810 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
811 pub struct GrantRoleV1 {
812 pub role_id: String,
813 pub member_id: String,
814 pub grantor_id: String,
815 }
816
817 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
818 pub struct GrantRoleV2 {
819 pub role_id: String,
820 pub member_id: String,
821 pub grantor_id: String,
822 pub executed_by: String,
823 }
824
825 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
826 pub struct RevokeRoleV1 {
827 pub role_id: String,
828 pub member_id: String,
829 }
830
831 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
832 pub struct RevokeRoleV2 {
833 pub role_id: String,
834 pub member_id: String,
835 pub grantor_id: String,
836 pub executed_by: String,
837 }
838
839 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
840 pub struct UpdatePrivilegeV1 {
841 pub object_id: String,
842 pub grantee_id: String,
843 pub grantor_id: String,
844 pub privileges: String,
845 }
846
847 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
848 pub struct AlterDefaultPrivilegeV1 {
849 pub role_id: String,
850 pub database_id: Option<StringWrapper>,
851 pub schema_id: Option<StringWrapper>,
852 pub grantee_id: String,
853 pub privileges: String,
854 }
855
856 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
857 pub struct UpdateOwnerV1 {
858 pub object_id: String,
859 pub old_owner_id: String,
860 pub new_owner_id: String,
861 }
862
863 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
864 pub struct SchemaV1 {
865 pub id: String,
866 pub name: String,
867 pub database_name: String,
868 }
869
870 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
871 pub struct SchemaV2 {
872 pub id: String,
873 pub name: String,
874 pub database_name: Option<StringWrapper>,
875 }
876
877 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
878 pub struct RenameSchemaV1 {
879 pub id: String,
880 pub database_name: Option<String>,
881 pub old_name: String,
882 pub new_name: String,
883 }
884
885 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
886 pub struct UpdateItemV1 {
887 pub id: String,
888 pub name: FullNameV1,
889 }
890
891 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
892 pub struct AlterRetainHistoryV1 {
893 pub id: String,
894 pub old_history: Option<String>,
895 pub new_history: Option<String>,
896 }
897
898 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
899 pub struct ToNewIdV1 {
900 pub id: String,
901 pub new_id: String,
902 }
903
904 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
905 pub struct FromPreviousIdV1 {
906 pub id: String,
907 pub previous_id: String,
908 }
909
910 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
911 pub struct SetV1 {
912 pub name: String,
913 pub value: Option<String>,
914 }
915
916 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
917 pub struct RotateKeysV1 {
918 pub id: String,
919 pub name: String,
920 }
921
922 #[derive(
923 Clone,
924 Copy,
925 Debug,
926 PartialEq,
927 Eq,
928 Hash,
929 PartialOrd,
930 Ord,
931 Serialize_repr,
932 Deserialize_repr,
933 Arbitrary,
934 )]
935 #[repr(u8)]
936 pub enum EventType {
937 Unknown = 0,
938 Create = 1,
939 Drop = 2,
940 Alter = 3,
941 Grant = 4,
942 Revoke = 5,
943 Comment = 6,
944 }
945
946 #[derive(
947 Clone,
948 Copy,
949 Debug,
950 PartialEq,
951 Eq,
952 Hash,
953 PartialOrd,
954 Ord,
955 Serialize_repr,
956 Deserialize_repr,
957 Arbitrary,
958 )]
959 #[repr(u8)]
960 pub enum ObjectType {
961 Unknown = 0,
962 Cluster = 1,
963 ClusterReplica = 2,
964 Connection = 3,
965 Database = 4,
966 Func = 5,
967 Index = 6,
968 MaterializedView = 7,
969 Role = 8,
970 Secret = 9,
971 Schema = 10,
972 Sink = 11,
973 Source = 12,
974 Table = 13,
975 Type = 14,
976 View = 15,
977 System = 16,
978 ContinualTask = 17,
979 NetworkPolicy = 18,
980 }
981
982 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
983 pub enum Details {
984 CreateClusterReplicaV1(CreateClusterReplicaV1),
985 CreateClusterReplicaV2(CreateClusterReplicaV2),
986 CreateClusterReplicaV3(CreateClusterReplicaV3),
987 CreateClusterReplicaV4(CreateClusterReplicaV4),
988 DropClusterReplicaV1(DropClusterReplicaV1),
989 DropClusterReplicaV2(DropClusterReplicaV2),
990 DropClusterReplicaV3(DropClusterReplicaV3),
991 CreateSourceSinkV1(CreateSourceSinkV1),
992 CreateSourceSinkV2(CreateSourceSinkV2),
993 AlterSourceSinkV1(AlterSourceSinkV1),
994 AlterSetClusterV1(AlterSetClusterV1),
995 GrantRoleV1(GrantRoleV1),
996 GrantRoleV2(GrantRoleV2),
997 RevokeRoleV1(RevokeRoleV1),
998 RevokeRoleV2(RevokeRoleV2),
999 UpdatePrivilegeV1(UpdatePrivilegeV1),
1000 AlterDefaultPrivilegeV1(AlterDefaultPrivilegeV1),
1001 UpdateOwnerV1(UpdateOwnerV1),
1002 IdFullNameV1(IdFullNameV1),
1003 RenameClusterV1(RenameClusterV1),
1004 RenameClusterReplicaV1(RenameClusterReplicaV1),
1005 RenameItemV1(RenameItemV1),
1006 IdNameV1(IdNameV1),
1007 SchemaV1(SchemaV1),
1008 SchemaV2(SchemaV2),
1009 RenameSchemaV1(RenameSchemaV1),
1010 UpdateItemV1(UpdateItemV1),
1011 CreateSourceSinkV3(CreateSourceSinkV3),
1012 AlterRetainHistoryV1(AlterRetainHistoryV1),
1013 ToNewIdV1(ToNewIdV1),
1014 FromPreviousIdV1(FromPreviousIdV1),
1015 SetV1(SetV1),
1016 ResetAllV1(Empty),
1017 RotateKeysV1(RotateKeysV1),
1018 CreateSourceSinkV4(CreateSourceSinkV4),
1019 CreateIndexV1(CreateIndexV1),
1020 CreateMaterializedViewV1(CreateMaterializedViewV1),
1021 }
1022}
1023
1024#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1026#[serde(tag = "kind")]
1029pub enum StateUpdateKind {
1030 AuditLog(AuditLog),
1031 Cluster(Cluster),
1032 ClusterIntrospectionSourceIndex(ClusterIntrospectionSourceIndex),
1033 ClusterReplica(ClusterReplica),
1034 Comment(Comment),
1035 Config(Config),
1036 Database(Database),
1037 DefaultPrivileges(DefaultPrivileges),
1038 FenceToken(FenceToken),
1039 GidMapping(GidMapping),
1040 IdAlloc(IdAlloc),
1041 Item(Item),
1042 NetworkPolicy(NetworkPolicy),
1043 Role(Role),
1044 RoleAuth(RoleAuth),
1045 Schema(Schema),
1046 ServerConfiguration(ServerConfiguration),
1047 Setting(Setting),
1048 SourceReferences(SourceReferences),
1049 StorageCollectionMetadata(StorageCollectionMetadata),
1050 SystemPrivileges(SystemPrivileges),
1051 TxnWalShard(TxnWalShard),
1052 UnfinalizedShard(UnfinalizedShard),
1053}
1054
1055#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1056pub struct AuditLog {
1057 pub key: AuditLogKey,
1058}
1059
1060#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1061pub struct Cluster {
1062 pub key: ClusterKey,
1063 pub value: ClusterValue,
1064}
1065
1066#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1067pub struct ClusterReplica {
1068 pub key: ClusterReplicaKey,
1069 pub value: ClusterReplicaValue,
1070}
1071
1072#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1073pub struct Comment {
1074 pub key: CommentKey,
1075 pub value: CommentValue,
1076}
1077
1078#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1079pub struct Config {
1080 pub key: ConfigKey,
1081 pub value: ConfigValue,
1082}
1083
1084#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1085pub struct Database {
1086 pub key: DatabaseKey,
1087 pub value: DatabaseValue,
1088}
1089
1090#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1091pub struct DefaultPrivileges {
1092 pub key: DefaultPrivilegesKey,
1093 pub value: DefaultPrivilegesValue,
1094}
1095
1096#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1097pub struct FenceToken {
1098 pub deploy_generation: u64,
1099 pub epoch: i64,
1100}
1101
1102#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1103pub struct IdAlloc {
1104 pub key: IdAllocKey,
1105 pub value: IdAllocValue,
1106}
1107
1108#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1109pub struct ClusterIntrospectionSourceIndex {
1110 pub key: ClusterIntrospectionSourceIndexKey,
1111 pub value: ClusterIntrospectionSourceIndexValue,
1112}
1113
1114#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1115pub struct Item {
1116 pub key: ItemKey,
1117 pub value: ItemValue,
1118}
1119
1120#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1121pub struct Role {
1122 pub key: RoleKey,
1123 pub value: RoleValue,
1124}
1125
1126#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1127pub struct RoleAuth {
1128 pub key: RoleAuthKey,
1129 pub value: RoleAuthValue,
1130}
1131
1132#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1133pub struct NetworkPolicy {
1134 pub key: NetworkPolicyKey,
1135 pub value: NetworkPolicyValue,
1136}
1137
1138#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1139pub struct Schema {
1140 pub key: SchemaKey,
1141 pub value: SchemaValue,
1142}
1143
1144#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1145pub struct Setting {
1146 pub key: SettingKey,
1147 pub value: SettingValue,
1148}
1149
1150#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1151pub struct ServerConfiguration {
1152 pub key: ServerConfigurationKey,
1153 pub value: ServerConfigurationValue,
1154}
1155
1156#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1157pub struct SourceReferences {
1158 pub key: SourceReferencesKey,
1159 pub value: SourceReferencesValue,
1160}
1161
1162#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1163pub struct GidMapping {
1164 pub key: GidMappingKey,
1165 pub value: GidMappingValue,
1166}
1167
1168#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1169pub struct SystemPrivileges {
1170 pub key: SystemPrivilegesKey,
1171 pub value: SystemPrivilegesValue,
1172}
1173
1174#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1175pub struct StorageCollectionMetadata {
1176 pub key: StorageCollectionMetadataKey,
1177 pub value: StorageCollectionMetadataValue,
1178}
1179
1180#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1181pub struct UnfinalizedShard {
1182 pub key: UnfinalizedShardKey,
1183}
1184
1185#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize, Arbitrary)]
1186pub struct TxnWalShard {
1187 pub value: TxnWalShardValue,
1188}
1189
1190#[derive(
1191 Clone,
1192 Copy,
1193 Debug,
1194 PartialEq,
1195 Eq,
1196 Hash,
1197 PartialOrd,
1198 Ord,
1199 Serialize_repr,
1200 Deserialize_repr,
1201 Arbitrary,
1202)]
1203#[repr(u8)]
1204pub enum CatalogItemType {
1205 Unknown = 0,
1206 Table = 1,
1207 Source = 2,
1208 Sink = 3,
1209 View = 4,
1210 MaterializedView = 5,
1211 Index = 6,
1212 Type = 7,
1213 Func = 8,
1214 Secret = 9,
1215 Connection = 10,
1216 ContinualTask = 11,
1217}
1218
1219#[derive(
1220 Clone,
1221 Copy,
1222 Debug,
1223 PartialEq,
1224 Eq,
1225 Hash,
1226 PartialOrd,
1227 Ord,
1228 Serialize_repr,
1229 Deserialize_repr,
1230 Arbitrary,
1231)]
1232#[repr(u8)]
1233pub enum ObjectType {
1234 Unknown = 0,
1235 Table = 1,
1236 View = 2,
1237 MaterializedView = 3,
1238 Source = 4,
1239 Sink = 5,
1240 Index = 6,
1241 Type = 7,
1242 Role = 8,
1243 Cluster = 9,
1244 ClusterReplica = 10,
1245 Secret = 11,
1246 Connection = 12,
1247 Database = 13,
1248 Schema = 14,
1249 Func = 15,
1250 ContinualTask = 16,
1251 NetworkPolicy = 17,
1252}