risingwave_pb/
ddl_service.rs

1// This file is @generated by prost-build.
2#[derive(prost_helpers::AnyPB)]
3#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
4pub struct WaitVersion {
5    #[prost(uint64, tag = "1")]
6    pub catalog_version: u64,
7    #[prost(uint64, tag = "2", wrapper = "crate::id::HummockVersionId")]
8    pub hummock_version_id: crate::id::HummockVersionId,
9}
10#[derive(prost_helpers::AnyPB)]
11#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
12pub struct CreateDatabaseRequest {
13    #[prost(message, optional, tag = "1")]
14    pub db: ::core::option::Option<super::catalog::Database>,
15}
16#[derive(prost_helpers::AnyPB)]
17#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
18pub struct CreateDatabaseResponse {
19    #[prost(message, optional, tag = "1")]
20    pub status: ::core::option::Option<super::common::Status>,
21    #[prost(message, optional, tag = "2")]
22    pub version: ::core::option::Option<WaitVersion>,
23}
24#[derive(prost_helpers::AnyPB)]
25#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
26pub struct DropDatabaseRequest {
27    #[prost(uint32, tag = "1", wrapper = "crate::id::DatabaseId")]
28    pub database_id: crate::id::DatabaseId,
29}
30#[derive(prost_helpers::AnyPB)]
31#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
32pub struct DropDatabaseResponse {
33    #[prost(message, optional, tag = "1")]
34    pub status: ::core::option::Option<super::common::Status>,
35    #[prost(message, optional, tag = "2")]
36    pub version: ::core::option::Option<WaitVersion>,
37}
38#[derive(prost_helpers::AnyPB)]
39#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
40pub struct CreateSchemaRequest {
41    #[prost(message, optional, tag = "1")]
42    pub schema: ::core::option::Option<super::catalog::Schema>,
43}
44#[derive(prost_helpers::AnyPB)]
45#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
46pub struct CreateSchemaResponse {
47    #[prost(message, optional, tag = "1")]
48    pub status: ::core::option::Option<super::common::Status>,
49    #[prost(message, optional, tag = "2")]
50    pub version: ::core::option::Option<WaitVersion>,
51}
52#[derive(prost_helpers::AnyPB)]
53#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
54pub struct DropSchemaRequest {
55    #[prost(uint32, tag = "1", wrapper = "crate::id::SchemaId")]
56    pub schema_id: crate::id::SchemaId,
57    #[prost(bool, tag = "2")]
58    pub cascade: bool,
59}
60#[derive(prost_helpers::AnyPB)]
61#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
62pub struct DropSchemaResponse {
63    #[prost(message, optional, tag = "1")]
64    pub status: ::core::option::Option<super::common::Status>,
65    #[prost(message, optional, tag = "2")]
66    pub version: ::core::option::Option<WaitVersion>,
67}
68#[derive(prost_helpers::AnyPB)]
69#[derive(Clone, PartialEq, ::prost::Message)]
70pub struct CreateSourceRequest {
71    #[prost(message, optional, tag = "1")]
72    pub source: ::core::option::Option<super::catalog::Source>,
73    #[prost(message, optional, tag = "2")]
74    pub fragment_graph: ::core::option::Option<super::stream_plan::StreamFragmentGraph>,
75    #[prost(bool, tag = "3")]
76    pub if_not_exists: bool,
77}
78#[derive(prost_helpers::AnyPB)]
79#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
80pub struct CreateSourceResponse {
81    #[prost(message, optional, tag = "1")]
82    pub status: ::core::option::Option<super::common::Status>,
83    #[prost(message, optional, tag = "2")]
84    pub version: ::core::option::Option<WaitVersion>,
85}
86#[derive(prost_helpers::AnyPB)]
87#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
88pub struct DropSourceRequest {
89    #[prost(uint32, tag = "1", wrapper = "crate::id::SourceId")]
90    pub source_id: crate::id::SourceId,
91    #[prost(bool, tag = "2")]
92    pub cascade: bool,
93}
94#[derive(prost_helpers::AnyPB)]
95#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
96pub struct DropSourceResponse {
97    #[prost(message, optional, tag = "1")]
98    pub status: ::core::option::Option<super::common::Status>,
99    #[prost(message, optional, tag = "2")]
100    pub version: ::core::option::Option<WaitVersion>,
101}
102/// Only for non-shared source
103#[derive(prost_helpers::AnyPB)]
104#[derive(Clone, PartialEq, ::prost::Message)]
105pub struct AlterSourceRequest {
106    #[prost(message, optional, tag = "1")]
107    pub source: ::core::option::Option<super::catalog::Source>,
108}
109/// Only for non-shared source
110#[derive(prost_helpers::AnyPB)]
111#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
112pub struct AlterSourceResponse {
113    #[prost(message, optional, tag = "1")]
114    pub status: ::core::option::Option<super::common::Status>,
115    #[prost(message, optional, tag = "2")]
116    pub version: ::core::option::Option<WaitVersion>,
117}
118/// Reset CDC source offset to latest (for handling expired binlog/oplog)
119#[derive(prost_helpers::AnyPB)]
120#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
121pub struct ResetSourceRequest {
122    #[prost(uint32, tag = "1", wrapper = "crate::id::SourceId")]
123    pub source_id: crate::id::SourceId,
124}
125#[derive(prost_helpers::AnyPB)]
126#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
127pub struct ResetSourceResponse {
128    #[prost(message, optional, tag = "1")]
129    pub status: ::core::option::Option<super::common::Status>,
130    #[prost(message, optional, tag = "2")]
131    pub version: ::core::option::Option<WaitVersion>,
132}
133#[derive(prost_helpers::AnyPB)]
134#[derive(Clone, PartialEq, ::prost::Message)]
135pub struct CreateSinkRequest {
136    #[prost(message, optional, tag = "1")]
137    pub sink: ::core::option::Option<super::catalog::Sink>,
138    #[prost(message, optional, tag = "2")]
139    pub fragment_graph: ::core::option::Option<super::stream_plan::StreamFragmentGraph>,
140    /// The list of object IDs that this sink depends on.
141    #[prost(uint32, repeated, tag = "4", wrapper = "crate::id::ObjectId")]
142    pub dependencies: ::prost::alloc::vec::Vec<crate::id::ObjectId>,
143    #[prost(bool, tag = "5")]
144    pub if_not_exists: bool,
145}
146#[derive(prost_helpers::AnyPB)]
147#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
148pub struct CreateSinkResponse {
149    #[prost(message, optional, tag = "1")]
150    pub status: ::core::option::Option<super::common::Status>,
151    #[prost(message, optional, tag = "2")]
152    pub version: ::core::option::Option<WaitVersion>,
153}
154#[derive(prost_helpers::AnyPB)]
155#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
156pub struct DropSinkRequest {
157    #[prost(uint32, tag = "1", wrapper = "crate::id::SinkId")]
158    pub sink_id: crate::id::SinkId,
159    #[prost(bool, tag = "2")]
160    pub cascade: bool,
161}
162#[derive(prost_helpers::AnyPB)]
163#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
164pub struct DropSinkResponse {
165    #[prost(message, optional, tag = "1")]
166    pub status: ::core::option::Option<super::common::Status>,
167    #[prost(message, optional, tag = "2")]
168    pub version: ::core::option::Option<WaitVersion>,
169}
170#[derive(prost_helpers::AnyPB)]
171#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
172pub struct CreateSubscriptionRequest {
173    #[prost(message, optional, tag = "1")]
174    pub subscription: ::core::option::Option<super::catalog::Subscription>,
175}
176#[derive(prost_helpers::AnyPB)]
177#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
178pub struct CreateSubscriptionResponse {
179    #[prost(message, optional, tag = "1")]
180    pub status: ::core::option::Option<super::common::Status>,
181    #[prost(message, optional, tag = "2")]
182    pub version: ::core::option::Option<WaitVersion>,
183}
184#[derive(prost_helpers::AnyPB)]
185#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
186pub struct DropSubscriptionRequest {
187    #[prost(uint32, tag = "1", wrapper = "crate::id::SubscriptionId")]
188    pub subscription_id: crate::id::SubscriptionId,
189    #[prost(bool, tag = "2")]
190    pub cascade: bool,
191}
192#[derive(prost_helpers::AnyPB)]
193#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
194pub struct DropSubscriptionResponse {
195    #[prost(message, optional, tag = "1")]
196    pub status: ::core::option::Option<super::common::Status>,
197    #[prost(message, optional, tag = "2")]
198    pub version: ::core::option::Option<WaitVersion>,
199}
200/// If SERVERLESS, the materialized view should be created using serverless backfill
201/// For that the controller will create a new compute node, which does backfilling and then is deleted.
202/// May alleviate pressure on the cluster during backfill process.
203#[derive(prost_helpers::AnyPB)]
204#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
205pub struct StreamingJobResourceType {
206    #[prost(oneof = "streaming_job_resource_type::ResourceType", tags = "1, 2, 3")]
207    pub resource_type: ::core::option::Option<streaming_job_resource_type::ResourceType>,
208}
209/// Nested message and enum types in `StreamingJobResourceType`.
210pub mod streaming_job_resource_type {
211    #[derive(prost_helpers::AnyPB)]
212    #[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
213    pub enum ResourceType {
214        #[prost(bool, tag = "1")]
215        Regular(bool),
216        /// The specific resource group to use for the streaming job. If not set, the database resource group is used.
217        #[prost(string, tag = "2")]
218        SpecificResourceGroup(::prost::alloc::string::String),
219        #[prost(string, tag = "3")]
220        ServerlessBackfillResourceGroup(::prost::alloc::string::String),
221    }
222}
223#[derive(prost_helpers::AnyPB)]
224#[derive(Clone, PartialEq, ::prost::Message)]
225pub struct CreateMaterializedViewRequest {
226    #[prost(message, optional, tag = "1")]
227    pub materialized_view: ::core::option::Option<super::catalog::Table>,
228    #[prost(message, optional, tag = "2")]
229    pub fragment_graph: ::core::option::Option<super::stream_plan::StreamFragmentGraph>,
230    #[prost(message, optional, tag = "3")]
231    pub resource_type: ::core::option::Option<StreamingJobResourceType>,
232    /// The list of object IDs that this materialized view depends on.
233    #[prost(uint32, repeated, tag = "4", wrapper = "crate::id::ObjectId")]
234    pub dependencies: ::prost::alloc::vec::Vec<crate::id::ObjectId>,
235    #[prost(bool, tag = "6")]
236    pub if_not_exists: bool,
237    #[prost(uint64, optional, tag = "7")]
238    pub refresh_interval_sec: ::core::option::Option<u64>,
239}
240#[derive(prost_helpers::AnyPB)]
241#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
242pub struct CreateMaterializedViewResponse {
243    #[prost(message, optional, tag = "1")]
244    pub status: ::core::option::Option<super::common::Status>,
245    #[prost(message, optional, tag = "2")]
246    pub version: ::core::option::Option<WaitVersion>,
247}
248#[derive(prost_helpers::AnyPB)]
249#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
250pub struct DropMaterializedViewRequest {
251    #[prost(uint32, tag = "1", wrapper = "crate::id::TableId")]
252    pub table_id: crate::id::TableId,
253    #[prost(bool, tag = "2")]
254    pub cascade: bool,
255}
256#[derive(prost_helpers::AnyPB)]
257#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
258pub struct DropMaterializedViewResponse {
259    #[prost(message, optional, tag = "1")]
260    pub status: ::core::option::Option<super::common::Status>,
261    #[prost(message, optional, tag = "2")]
262    pub version: ::core::option::Option<WaitVersion>,
263}
264#[derive(prost_helpers::AnyPB)]
265#[derive(Clone, PartialEq, ::prost::Message)]
266pub struct CreateViewRequest {
267    #[prost(message, optional, tag = "1")]
268    pub view: ::core::option::Option<super::catalog::View>,
269    /// The list of object IDs that this view depends on.
270    #[prost(uint32, repeated, tag = "2", wrapper = "crate::id::ObjectId")]
271    pub dependencies: ::prost::alloc::vec::Vec<crate::id::ObjectId>,
272}
273#[derive(prost_helpers::AnyPB)]
274#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
275pub struct CreateViewResponse {
276    #[prost(message, optional, tag = "1")]
277    pub status: ::core::option::Option<super::common::Status>,
278    #[prost(message, optional, tag = "2")]
279    pub version: ::core::option::Option<WaitVersion>,
280}
281#[derive(prost_helpers::AnyPB)]
282#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
283pub struct DropViewRequest {
284    #[prost(uint32, tag = "1", wrapper = "crate::id::ViewId")]
285    pub view_id: crate::id::ViewId,
286    #[prost(bool, tag = "2")]
287    pub cascade: bool,
288}
289#[derive(prost_helpers::AnyPB)]
290#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
291pub struct DropViewResponse {
292    #[prost(message, optional, tag = "1")]
293    pub status: ::core::option::Option<super::common::Status>,
294    #[prost(message, optional, tag = "2")]
295    pub version: ::core::option::Option<WaitVersion>,
296}
297#[derive(prost_helpers::AnyPB)]
298#[derive(Clone, PartialEq, ::prost::Message)]
299pub struct CreateTableRequest {
300    /// An optional field and will be `Some` for tables with an external connector. If so, the table
301    /// will subscribe to the changes of the external connector and materialize the data.
302    #[prost(message, optional, tag = "1")]
303    pub source: ::core::option::Option<super::catalog::Source>,
304    #[prost(message, optional, tag = "2")]
305    pub materialized_view: ::core::option::Option<super::catalog::Table>,
306    #[prost(message, optional, tag = "3")]
307    pub fragment_graph: ::core::option::Option<super::stream_plan::StreamFragmentGraph>,
308    #[prost(enumeration = "TableJobType", tag = "4")]
309    pub job_type: i32,
310    #[prost(bool, tag = "5")]
311    pub if_not_exists: bool,
312    /// The list of object IDs that this table depends on, currently only used for `SHARED_CDC_SOURCE`.
313    #[prost(uint32, repeated, tag = "6", wrapper = "crate::id::ObjectId")]
314    pub dependencies: ::prost::alloc::vec::Vec<crate::id::ObjectId>,
315}
316#[derive(prost_helpers::AnyPB)]
317#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
318pub struct CreateTableResponse {
319    #[prost(message, optional, tag = "1")]
320    pub status: ::core::option::Option<super::common::Status>,
321    #[prost(message, optional, tag = "2")]
322    pub version: ::core::option::Option<WaitVersion>,
323}
324#[derive(prost_helpers::AnyPB)]
325#[derive(Clone, PartialEq, ::prost::Message)]
326pub struct CreateIcebergTableRequest {
327    #[prost(message, optional, tag = "1")]
328    pub table_info: ::core::option::Option<create_iceberg_table_request::TableJobInfo>,
329    #[prost(message, optional, tag = "2")]
330    pub sink_info: ::core::option::Option<create_iceberg_table_request::SinkJobInfo>,
331    #[prost(message, optional, tag = "3")]
332    pub iceberg_source: ::core::option::Option<super::catalog::Source>,
333    #[prost(bool, tag = "5")]
334    pub if_not_exists: bool,
335}
336/// Nested message and enum types in `CreateIcebergTableRequest`.
337pub mod create_iceberg_table_request {
338    #[derive(prost_helpers::AnyPB)]
339    #[derive(Clone, PartialEq, ::prost::Message)]
340    pub struct TableJobInfo {
341        #[prost(message, optional, tag = "1")]
342        pub source: ::core::option::Option<super::super::catalog::Source>,
343        #[prost(message, optional, tag = "2")]
344        pub table: ::core::option::Option<super::super::catalog::Table>,
345        #[prost(message, optional, tag = "3")]
346        pub fragment_graph: ::core::option::Option<
347            super::super::stream_plan::StreamFragmentGraph,
348        >,
349        #[prost(enumeration = "super::TableJobType", tag = "4")]
350        pub job_type: i32,
351    }
352    #[derive(prost_helpers::AnyPB)]
353    #[derive(Clone, PartialEq, ::prost::Message)]
354    pub struct SinkJobInfo {
355        #[prost(message, optional, tag = "1")]
356        pub sink: ::core::option::Option<super::super::catalog::Sink>,
357        #[prost(message, optional, tag = "2")]
358        pub fragment_graph: ::core::option::Option<
359            super::super::stream_plan::StreamFragmentGraph,
360        >,
361    }
362}
363#[derive(prost_helpers::AnyPB)]
364#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
365pub struct CreateIcebergTableResponse {
366    #[prost(message, optional, tag = "1")]
367    pub status: ::core::option::Option<super::common::Status>,
368    #[prost(message, optional, tag = "2")]
369    pub version: ::core::option::Option<WaitVersion>,
370}
371#[derive(prost_helpers::AnyPB)]
372#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
373pub struct AlterNameRequest {
374    #[prost(string, tag = "20")]
375    pub new_name: ::prost::alloc::string::String,
376    #[prost(oneof = "alter_name_request::Object", tags = "1, 2, 3, 4, 5, 6, 7, 8")]
377    pub object: ::core::option::Option<alter_name_request::Object>,
378}
379/// Nested message and enum types in `AlterNameRequest`.
380pub mod alter_name_request {
381    #[derive(prost_helpers::AnyPB)]
382    #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Oneof)]
383    pub enum Object {
384        #[prost(uint32, tag = "1", wrapper = "crate::id::TableId")]
385        TableId(crate::id::TableId),
386        #[prost(uint32, tag = "2", wrapper = "crate::id::ViewId")]
387        ViewId(crate::id::ViewId),
388        #[prost(uint32, tag = "3", wrapper = "crate::id::IndexId")]
389        IndexId(crate::id::IndexId),
390        #[prost(uint32, tag = "4", wrapper = "crate::id::SinkId")]
391        SinkId(crate::id::SinkId),
392        #[prost(uint32, tag = "5", wrapper = "crate::id::SourceId")]
393        SourceId(crate::id::SourceId),
394        #[prost(uint32, tag = "6", wrapper = "crate::id::SchemaId")]
395        SchemaId(crate::id::SchemaId),
396        #[prost(uint32, tag = "7", wrapper = "crate::id::DatabaseId")]
397        DatabaseId(crate::id::DatabaseId),
398        #[prost(uint32, tag = "8", wrapper = "crate::id::SubscriptionId")]
399        SubscriptionId(crate::id::SubscriptionId),
400    }
401}
402#[derive(prost_helpers::AnyPB)]
403#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
404pub struct AlterNameResponse {
405    #[prost(message, optional, tag = "1")]
406    pub status: ::core::option::Option<super::common::Status>,
407    #[prost(message, optional, tag = "2")]
408    pub version: ::core::option::Option<WaitVersion>,
409}
410#[derive(prost_helpers::AnyPB)]
411#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
412pub struct AlterOwnerRequest {
413    #[prost(uint32, tag = "20", wrapper = "crate::id::UserId")]
414    pub owner_id: crate::id::UserId,
415    #[prost(
416        oneof = "alter_owner_request::Object",
417        tags = "1, 2, 3, 4, 5, 6, 7, 8, 9, 10"
418    )]
419    pub object: ::core::option::Option<alter_owner_request::Object>,
420}
421/// Nested message and enum types in `AlterOwnerRequest`.
422pub mod alter_owner_request {
423    #[derive(prost_helpers::AnyPB)]
424    #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Oneof)]
425    pub enum Object {
426        #[prost(uint32, tag = "1", wrapper = "crate::id::TableId")]
427        TableId(crate::id::TableId),
428        #[prost(uint32, tag = "2", wrapper = "crate::id::ViewId")]
429        ViewId(crate::id::ViewId),
430        #[prost(uint32, tag = "3", wrapper = "crate::id::SourceId")]
431        SourceId(crate::id::SourceId),
432        #[prost(uint32, tag = "4", wrapper = "crate::id::SinkId")]
433        SinkId(crate::id::SinkId),
434        #[prost(uint32, tag = "5", wrapper = "crate::id::SchemaId")]
435        SchemaId(crate::id::SchemaId),
436        #[prost(uint32, tag = "6", wrapper = "crate::id::DatabaseId")]
437        DatabaseId(crate::id::DatabaseId),
438        #[prost(uint32, tag = "7", wrapper = "crate::id::SubscriptionId")]
439        SubscriptionId(crate::id::SubscriptionId),
440        #[prost(uint32, tag = "8", wrapper = "crate::id::ConnectionId")]
441        ConnectionId(crate::id::ConnectionId),
442        #[prost(uint32, tag = "9", wrapper = "crate::id::SecretId")]
443        SecretId(crate::id::SecretId),
444        #[prost(uint32, tag = "10", wrapper = "crate::id::FunctionId")]
445        FunctionId(crate::id::FunctionId),
446    }
447}
448#[derive(prost_helpers::AnyPB)]
449#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
450pub struct AlterSetSchemaRequest {
451    #[prost(uint32, tag = "20", wrapper = "crate::id::SchemaId")]
452    pub new_schema_id: crate::id::SchemaId,
453    #[prost(oneof = "alter_set_schema_request::Object", tags = "1, 2, 3, 4, 5, 6, 7")]
454    pub object: ::core::option::Option<alter_set_schema_request::Object>,
455}
456/// Nested message and enum types in `AlterSetSchemaRequest`.
457pub mod alter_set_schema_request {
458    #[derive(prost_helpers::AnyPB)]
459    #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Oneof)]
460    pub enum Object {
461        #[prost(uint32, tag = "1", wrapper = "crate::id::TableId")]
462        TableId(crate::id::TableId),
463        #[prost(uint32, tag = "2", wrapper = "crate::id::ViewId")]
464        ViewId(crate::id::ViewId),
465        #[prost(uint32, tag = "3", wrapper = "crate::id::SourceId")]
466        SourceId(crate::id::SourceId),
467        #[prost(uint32, tag = "4", wrapper = "crate::id::SinkId")]
468        SinkId(crate::id::SinkId),
469        #[prost(uint32, tag = "5", wrapper = "crate::id::FunctionId")]
470        FunctionId(crate::id::FunctionId),
471        #[prost(uint32, tag = "6", wrapper = "crate::id::ConnectionId")]
472        ConnectionId(crate::id::ConnectionId),
473        #[prost(uint32, tag = "7", wrapper = "crate::id::SubscriptionId")]
474        SubscriptionId(crate::id::SubscriptionId),
475    }
476}
477#[derive(prost_helpers::AnyPB)]
478#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
479pub struct AlterSetSchemaResponse {
480    #[prost(message, optional, tag = "1")]
481    pub status: ::core::option::Option<super::common::Status>,
482    #[prost(message, optional, tag = "2")]
483    pub version: ::core::option::Option<WaitVersion>,
484}
485#[derive(prost_helpers::AnyPB)]
486#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
487pub struct AlterParallelismRequest {
488    /// job id
489    #[prost(uint32, tag = "1", wrapper = "crate::id::JobId")]
490    pub table_id: crate::id::JobId,
491    #[prost(message, optional, tag = "2")]
492    pub parallelism: ::core::option::Option<super::meta::TableParallelism>,
493    #[prost(bool, tag = "3")]
494    pub deferred: bool,
495    #[prost(string, optional, tag = "4")]
496    pub adaptive_parallelism_strategy: ::core::option::Option<
497        ::prost::alloc::string::String,
498    >,
499}
500#[derive(prost_helpers::AnyPB)]
501#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
502pub struct AlterParallelismResponse {}
503#[derive(prost_helpers::AnyPB)]
504#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
505pub struct AlterBackfillParallelismRequest {
506    /// job id
507    #[prost(uint32, tag = "1", wrapper = "crate::id::JobId")]
508    pub table_id: crate::id::JobId,
509    /// When `parallelism` is `None`, it indicates resetting to no backfill override.
510    #[prost(message, optional, tag = "2")]
511    pub parallelism: ::core::option::Option<super::meta::TableParallelism>,
512    #[prost(bool, tag = "3")]
513    pub deferred: bool,
514    #[prost(string, optional, tag = "4")]
515    pub adaptive_parallelism_strategy: ::core::option::Option<
516        ::prost::alloc::string::String,
517    >,
518}
519#[derive(prost_helpers::AnyPB)]
520#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
521pub struct AlterBackfillParallelismResponse {}
522#[derive(prost_helpers::AnyPB)]
523#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
524pub struct AlterFragmentParallelismRequest {
525    #[prost(uint32, repeated, tag = "1", wrapper = "crate::id::FragmentId")]
526    pub fragment_ids: ::prost::alloc::vec::Vec<crate::id::FragmentId>,
527    /// When `parallelism` is `None`, it indicates resetting to the job's parallelism.
528    #[prost(message, optional, tag = "2")]
529    pub parallelism: ::core::option::Option<super::meta::TableParallelism>,
530}
531#[derive(prost_helpers::AnyPB)]
532#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
533pub struct AlterFragmentParallelismResponse {}
534#[derive(prost_helpers::AnyPB)]
535#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
536pub struct AlterCdcTableBackfillParallelismRequest {
537    #[prost(uint32, tag = "1", wrapper = "crate::id::JobId")]
538    pub table_id: crate::id::JobId,
539    #[prost(message, optional, tag = "2")]
540    pub parallelism: ::core::option::Option<super::meta::TableParallelism>,
541}
542#[derive(prost_helpers::AnyPB)]
543#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
544pub struct AlterCdcTableBackfillParallelismResponse {}
545#[derive(prost_helpers::AnyPB)]
546#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
547pub struct AlterResourceGroupRequest {
548    #[prost(uint32, tag = "1", wrapper = "crate::id::TableId")]
549    pub table_id: crate::id::TableId,
550    #[prost(string, optional, tag = "2")]
551    pub resource_group: ::core::option::Option<::prost::alloc::string::String>,
552    #[prost(bool, tag = "3")]
553    pub deferred: bool,
554}
555#[derive(prost_helpers::AnyPB)]
556#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
557pub struct AlterResourceGroupResponse {}
558#[derive(prost_helpers::AnyPB)]
559#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
560pub struct AlterOwnerResponse {
561    #[prost(message, optional, tag = "1")]
562    pub status: ::core::option::Option<super::common::Status>,
563    #[prost(message, optional, tag = "2")]
564    pub version: ::core::option::Option<WaitVersion>,
565}
566#[derive(prost_helpers::AnyPB)]
567#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
568pub struct AlterSubscriptionRetentionRequest {
569    #[prost(uint32, tag = "1", wrapper = "crate::id::SubscriptionId")]
570    pub subscription_id: crate::id::SubscriptionId,
571    #[prost(uint64, tag = "2")]
572    pub retention_seconds: u64,
573    #[prost(string, tag = "3")]
574    pub definition: ::prost::alloc::string::String,
575}
576#[derive(prost_helpers::AnyPB)]
577#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
578pub struct AlterSubscriptionRetentionResponse {
579    #[prost(message, optional, tag = "1")]
580    pub status: ::core::option::Option<super::common::Status>,
581    #[prost(message, optional, tag = "2")]
582    pub version: ::core::option::Option<WaitVersion>,
583}
584#[derive(prost_helpers::AnyPB)]
585#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
586pub struct AlterSwapRenameRequest {
587    #[prost(oneof = "alter_swap_rename_request::Object", tags = "1, 2, 3, 4, 5, 6")]
588    pub object: ::core::option::Option<alter_swap_rename_request::Object>,
589}
590/// Nested message and enum types in `AlterSwapRenameRequest`.
591pub mod alter_swap_rename_request {
592    #[derive(prost_helpers::AnyPB)]
593    #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
594    pub struct ObjectNameSwapPair {
595        #[prost(uint32, tag = "1", wrapper = "crate::id::ObjectId")]
596        pub src_object_id: crate::id::ObjectId,
597        #[prost(uint32, tag = "2", wrapper = "crate::id::ObjectId")]
598        pub dst_object_id: crate::id::ObjectId,
599    }
600    #[derive(prost_helpers::AnyPB)]
601    #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Oneof)]
602    pub enum Object {
603        #[prost(message, tag = "1")]
604        Schema(ObjectNameSwapPair),
605        #[prost(message, tag = "2")]
606        Table(ObjectNameSwapPair),
607        #[prost(message, tag = "3")]
608        View(ObjectNameSwapPair),
609        #[prost(message, tag = "4")]
610        Source(ObjectNameSwapPair),
611        #[prost(message, tag = "5")]
612        Sink(ObjectNameSwapPair),
613        #[prost(message, tag = "6")]
614        Subscription(ObjectNameSwapPair),
615    }
616}
617#[derive(prost_helpers::AnyPB)]
618#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
619pub struct AlterSwapRenameResponse {
620    #[prost(message, optional, tag = "1")]
621    pub status: ::core::option::Option<super::common::Status>,
622    #[prost(message, optional, tag = "2")]
623    pub version: ::core::option::Option<WaitVersion>,
624}
625#[derive(prost_helpers::AnyPB)]
626#[derive(Clone, PartialEq, ::prost::Message)]
627pub struct CreateFunctionRequest {
628    #[prost(message, optional, tag = "1")]
629    pub function: ::core::option::Option<super::catalog::Function>,
630}
631#[derive(prost_helpers::AnyPB)]
632#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
633pub struct CreateFunctionResponse {
634    #[prost(message, optional, tag = "1")]
635    pub status: ::core::option::Option<super::common::Status>,
636    #[prost(message, optional, tag = "2")]
637    pub version: ::core::option::Option<WaitVersion>,
638}
639#[derive(prost_helpers::AnyPB)]
640#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
641pub struct DropFunctionRequest {
642    #[prost(uint32, tag = "1", wrapper = "crate::id::FunctionId")]
643    pub function_id: crate::id::FunctionId,
644    #[prost(bool, tag = "2")]
645    pub cascade: bool,
646}
647#[derive(prost_helpers::AnyPB)]
648#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
649pub struct DropFunctionResponse {
650    #[prost(message, optional, tag = "1")]
651    pub status: ::core::option::Option<super::common::Status>,
652    #[prost(message, optional, tag = "2")]
653    pub version: ::core::option::Option<WaitVersion>,
654}
655#[derive(prost_helpers::AnyPB)]
656#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
657pub struct DropTableRequest {
658    #[prost(uint32, tag = "2", wrapper = "crate::id::TableId")]
659    pub table_id: crate::id::TableId,
660    #[prost(bool, tag = "3")]
661    pub cascade: bool,
662    #[prost(oneof = "drop_table_request::SourceId", tags = "1")]
663    pub source_id: ::core::option::Option<drop_table_request::SourceId>,
664}
665/// Nested message and enum types in `DropTableRequest`.
666pub mod drop_table_request {
667    #[derive(prost_helpers::AnyPB)]
668    #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Oneof)]
669    pub enum SourceId {
670        #[prost(uint32, tag = "1", wrapper = "crate::id::SourceId")]
671        Id(crate::id::SourceId),
672    }
673}
674#[derive(prost_helpers::AnyPB)]
675#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
676pub struct DropTableResponse {
677    #[prost(message, optional, tag = "1")]
678    pub status: ::core::option::Option<super::common::Status>,
679    #[prost(message, optional, tag = "2")]
680    pub version: ::core::option::Option<WaitVersion>,
681}
682/// Used by risectl (and in the future, dashboard)
683#[derive(prost_helpers::AnyPB)]
684#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
685pub struct RisectlListStateTablesRequest {}
686/// Used by risectl (and in the future, dashboard)
687#[derive(prost_helpers::AnyPB)]
688#[derive(Clone, PartialEq, ::prost::Message)]
689pub struct RisectlListStateTablesResponse {
690    #[prost(message, repeated, tag = "1")]
691    pub tables: ::prost::alloc::vec::Vec<super::catalog::Table>,
692}
693/// Used by risectl
694#[derive(prost_helpers::AnyPB)]
695#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
696pub struct RisectlResumeBackfillRequest {
697    #[prost(oneof = "risectl_resume_backfill_request::Target", tags = "1, 2")]
698    pub target: ::core::option::Option<risectl_resume_backfill_request::Target>,
699}
700/// Nested message and enum types in `RisectlResumeBackfillRequest`.
701pub mod risectl_resume_backfill_request {
702    #[derive(prost_helpers::AnyPB)]
703    #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Oneof)]
704    pub enum Target {
705        #[prost(uint32, tag = "1", wrapper = "crate::id::JobId")]
706        JobId(crate::id::JobId),
707        #[prost(uint32, tag = "2", wrapper = "crate::id::FragmentId")]
708        FragmentId(crate::id::FragmentId),
709    }
710}
711/// Used by risectl
712#[derive(prost_helpers::AnyPB)]
713#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
714pub struct RisectlResumeBackfillResponse {}
715#[derive(prost_helpers::AnyPB)]
716#[derive(Clone, PartialEq, ::prost::Message)]
717pub struct CreateIndexRequest {
718    #[prost(message, optional, tag = "1")]
719    pub index: ::core::option::Option<super::catalog::Index>,
720    #[prost(message, optional, tag = "2")]
721    pub index_table: ::core::option::Option<super::catalog::Table>,
722    #[prost(message, optional, tag = "3")]
723    pub fragment_graph: ::core::option::Option<super::stream_plan::StreamFragmentGraph>,
724    #[prost(bool, tag = "4")]
725    pub if_not_exists: bool,
726}
727#[derive(prost_helpers::AnyPB)]
728#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
729pub struct CreateIndexResponse {
730    #[prost(message, optional, tag = "1")]
731    pub status: ::core::option::Option<super::common::Status>,
732    #[prost(message, optional, tag = "2")]
733    pub version: ::core::option::Option<WaitVersion>,
734}
735#[derive(prost_helpers::AnyPB)]
736#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
737pub struct DropIndexRequest {
738    #[prost(uint32, tag = "1", wrapper = "crate::id::IndexId")]
739    pub index_id: crate::id::IndexId,
740    #[prost(bool, tag = "2")]
741    pub cascade: bool,
742}
743#[derive(prost_helpers::AnyPB)]
744#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
745pub struct DropIndexResponse {
746    #[prost(message, optional, tag = "1")]
747    pub status: ::core::option::Option<super::common::Status>,
748    #[prost(message, optional, tag = "2")]
749    pub version: ::core::option::Option<WaitVersion>,
750}
751#[derive(prost_helpers::AnyPB)]
752#[derive(Clone, PartialEq, ::prost::Message)]
753pub struct ReplaceJobPlan {
754    /// The new materialization plan, where all schema are updated.
755    #[prost(message, optional, tag = "1")]
756    pub fragment_graph: ::core::option::Option<super::stream_plan::StreamFragmentGraph>,
757    #[prost(oneof = "replace_job_plan::ReplaceJob", tags = "3, 4, 5")]
758    pub replace_job: ::core::option::Option<replace_job_plan::ReplaceJob>,
759}
760/// Nested message and enum types in `ReplaceJobPlan`.
761pub mod replace_job_plan {
762    #[derive(prost_helpers::AnyPB)]
763    #[derive(Clone, PartialEq, ::prost::Message)]
764    pub struct ReplaceTable {
765        /// The new table catalog, with the correct (old) table ID and a new version.
766        /// If the new version does not match the subsequent version in the meta service's
767        /// catalog, this request will be rejected.
768        #[prost(message, optional, tag = "1")]
769        pub table: ::core::option::Option<super::super::catalog::Table>,
770        /// Source catalog of table's associated source
771        #[prost(message, optional, tag = "2")]
772        pub source: ::core::option::Option<super::super::catalog::Source>,
773        #[prost(enumeration = "super::TableJobType", tag = "3")]
774        pub job_type: i32,
775    }
776    #[derive(prost_helpers::AnyPB)]
777    #[derive(Clone, PartialEq, ::prost::Message)]
778    pub struct ReplaceSource {
779        #[prost(message, optional, tag = "1")]
780        pub source: ::core::option::Option<super::super::catalog::Source>,
781    }
782    #[derive(prost_helpers::AnyPB)]
783    #[derive(Clone, PartialEq, ::prost::Message)]
784    pub struct ReplaceMaterializedView {
785        #[prost(message, optional, tag = "1")]
786        pub table: ::core::option::Option<super::super::catalog::Table>,
787    }
788    #[derive(prost_helpers::AnyPB)]
789    #[derive(Clone, PartialEq, ::prost::Oneof)]
790    pub enum ReplaceJob {
791        #[prost(message, tag = "3")]
792        ReplaceTable(ReplaceTable),
793        #[prost(message, tag = "4")]
794        ReplaceSource(ReplaceSource),
795        #[prost(message, tag = "5")]
796        ReplaceMaterializedView(ReplaceMaterializedView),
797    }
798}
799#[derive(prost_helpers::AnyPB)]
800#[derive(Clone, PartialEq, ::prost::Message)]
801pub struct ReplaceJobPlanRequest {
802    #[prost(message, optional, tag = "1")]
803    pub plan: ::core::option::Option<ReplaceJobPlan>,
804}
805#[derive(prost_helpers::AnyPB)]
806#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
807pub struct ReplaceJobPlanResponse {
808    #[prost(message, optional, tag = "1")]
809    pub status: ::core::option::Option<super::common::Status>,
810    /// The new global catalog version.
811    #[prost(message, optional, tag = "2")]
812    pub version: ::core::option::Option<WaitVersion>,
813}
814#[derive(prost_helpers::AnyPB)]
815#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
816pub struct GetTableRequest {
817    #[prost(string, tag = "1")]
818    pub database_name: ::prost::alloc::string::String,
819    #[prost(string, tag = "2")]
820    pub table_name: ::prost::alloc::string::String,
821}
822#[derive(prost_helpers::AnyPB)]
823#[derive(Clone, PartialEq, ::prost::Message)]
824pub struct GetTableResponse {
825    #[prost(message, optional, tag = "1")]
826    pub table: ::core::option::Option<super::catalog::Table>,
827}
828#[derive(prost_helpers::AnyPB)]
829#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
830pub struct GetDdlProgressRequest {}
831#[derive(prost_helpers::AnyPB)]
832#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
833pub struct DdlProgress {
834    #[prost(uint64, tag = "1")]
835    pub id: u64,
836    #[prost(string, tag = "2")]
837    pub statement: ::prost::alloc::string::String,
838    #[prost(string, tag = "3")]
839    pub progress: ::prost::alloc::string::String,
840    #[prost(string, tag = "4")]
841    pub create_type: ::prost::alloc::string::String,
842    #[prost(int64, tag = "5")]
843    pub initialized_at_time_millis: i64,
844    #[prost(bool, tag = "6")]
845    pub is_serverless_backfill: bool,
846    #[prost(enumeration = "BackfillType", tag = "7")]
847    pub backfill_type: i32,
848}
849#[derive(prost_helpers::AnyPB)]
850#[derive(Clone, PartialEq, ::prost::Message)]
851pub struct GetDdlProgressResponse {
852    #[prost(message, repeated, tag = "1")]
853    pub ddl_progress: ::prost::alloc::vec::Vec<DdlProgress>,
854}
855#[derive(prost_helpers::AnyPB)]
856#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
857pub struct CreateSecretRequest {
858    #[prost(string, tag = "1")]
859    pub name: ::prost::alloc::string::String,
860    #[prost(bytes = "vec", tag = "2")]
861    pub value: ::prost::alloc::vec::Vec<u8>,
862    #[prost(uint32, tag = "3", wrapper = "crate::id::DatabaseId")]
863    pub database_id: crate::id::DatabaseId,
864    #[prost(uint32, tag = "4", wrapper = "crate::id::SchemaId")]
865    pub schema_id: crate::id::SchemaId,
866    #[prost(uint32, tag = "5", wrapper = "crate::id::UserId")]
867    pub owner_id: crate::id::UserId,
868}
869#[derive(prost_helpers::AnyPB)]
870#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
871pub struct CreateSecretResponse {
872    #[prost(message, optional, tag = "1")]
873    pub version: ::core::option::Option<WaitVersion>,
874}
875#[derive(prost_helpers::AnyPB)]
876#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
877pub struct DropSecretRequest {
878    #[prost(uint32, tag = "1", wrapper = "crate::id::SecretId")]
879    pub secret_id: crate::id::SecretId,
880    #[prost(bool, tag = "2")]
881    pub cascade: bool,
882}
883#[derive(prost_helpers::AnyPB)]
884#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
885pub struct DropSecretResponse {
886    #[prost(message, optional, tag = "1")]
887    pub version: ::core::option::Option<WaitVersion>,
888    #[prost(message, optional, tag = "2")]
889    pub status: ::core::option::Option<super::common::Status>,
890}
891#[derive(prost_helpers::AnyPB)]
892#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
893pub struct AlterSecretRequest {
894    #[prost(uint32, tag = "1", wrapper = "crate::id::SecretId")]
895    pub secret_id: crate::id::SecretId,
896    #[prost(string, tag = "2")]
897    pub name: ::prost::alloc::string::String,
898    #[prost(bytes = "vec", tag = "3")]
899    pub value: ::prost::alloc::vec::Vec<u8>,
900    #[prost(uint32, tag = "4", wrapper = "crate::id::DatabaseId")]
901    pub database_id: crate::id::DatabaseId,
902    #[prost(uint32, tag = "5", wrapper = "crate::id::SchemaId")]
903    pub schema_id: crate::id::SchemaId,
904    #[prost(uint32, tag = "6", wrapper = "crate::id::UserId")]
905    pub owner_id: crate::id::UserId,
906}
907#[derive(prost_helpers::AnyPB)]
908#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
909pub struct AlterSecretResponse {
910    #[prost(message, optional, tag = "1")]
911    pub version: ::core::option::Option<WaitVersion>,
912}
913#[derive(prost_helpers::AnyPB)]
914#[derive(Clone, PartialEq, ::prost::Message)]
915pub struct CreateConnectionRequest {
916    #[prost(string, tag = "1")]
917    pub name: ::prost::alloc::string::String,
918    #[prost(uint32, tag = "2", wrapper = "crate::id::DatabaseId")]
919    pub database_id: crate::id::DatabaseId,
920    #[prost(uint32, tag = "3", wrapper = "crate::id::SchemaId")]
921    pub schema_id: crate::id::SchemaId,
922    #[prost(uint32, tag = "5", wrapper = "crate::id::UserId")]
923    pub owner_id: crate::id::UserId,
924    #[prost(oneof = "create_connection_request::Payload", tags = "4, 6")]
925    pub payload: ::core::option::Option<create_connection_request::Payload>,
926}
927/// Nested message and enum types in `CreateConnectionRequest`.
928pub mod create_connection_request {
929    #[derive(prost_helpers::AnyPB)]
930    #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
931    pub struct PrivateLink {
932        #[prost(
933            enumeration = "super::super::catalog::connection::private_link_service::PrivateLinkProvider",
934            tag = "1"
935        )]
936        pub provider: i32,
937        #[prost(string, tag = "2")]
938        pub service_name: ::prost::alloc::string::String,
939        #[prost(string, optional, tag = "3")]
940        pub tags: ::core::option::Option<::prost::alloc::string::String>,
941    }
942    #[derive(prost_helpers::AnyPB)]
943    #[derive(Clone, PartialEq, ::prost::Oneof)]
944    pub enum Payload {
945        #[deprecated]
946        #[prost(message, tag = "4")]
947        PrivateLink(PrivateLink),
948        #[prost(message, tag = "6")]
949        ConnectionParams(super::super::catalog::ConnectionParams),
950    }
951}
952#[derive(prost_helpers::AnyPB)]
953#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
954pub struct CreateConnectionResponse {
955    /// global catalog version
956    #[prost(message, optional, tag = "1")]
957    pub version: ::core::option::Option<WaitVersion>,
958}
959#[derive(prost_helpers::AnyPB)]
960#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
961pub struct ListConnectionsRequest {}
962#[derive(prost_helpers::AnyPB)]
963#[derive(Clone, PartialEq, ::prost::Message)]
964pub struct ListConnectionsResponse {
965    #[prost(message, repeated, tag = "1")]
966    pub connections: ::prost::alloc::vec::Vec<super::catalog::Connection>,
967}
968#[derive(prost_helpers::AnyPB)]
969#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
970pub struct DropConnectionRequest {
971    #[prost(uint32, tag = "1", wrapper = "crate::id::ConnectionId")]
972    pub connection_id: crate::id::ConnectionId,
973    #[prost(bool, tag = "2")]
974    pub cascade: bool,
975}
976#[derive(prost_helpers::AnyPB)]
977#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
978pub struct DropConnectionResponse {
979    #[prost(message, optional, tag = "1")]
980    pub status: ::core::option::Option<super::common::Status>,
981    #[prost(message, optional, tag = "2")]
982    pub version: ::core::option::Option<WaitVersion>,
983}
984#[derive(prost_helpers::AnyPB)]
985#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
986pub struct GetTablesRequest {
987    #[prost(uint32, repeated, tag = "1", wrapper = "crate::id::TableId")]
988    pub table_ids: ::prost::alloc::vec::Vec<crate::id::TableId>,
989    #[prost(bool, tag = "2")]
990    pub include_dropped_tables: bool,
991}
992#[derive(prost_helpers::AnyPB)]
993#[derive(Clone, PartialEq, ::prost::Message)]
994pub struct GetTablesResponse {
995    #[prost(map = "uint32, message", tag = "1", wrapper = "crate::id::TableId")]
996    pub tables: ::std::collections::HashMap<crate::id::TableId, super::catalog::Table>,
997}
998#[derive(prost_helpers::AnyPB)]
999#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1000pub struct WaitRequest {
1001    #[prost(uint32, optional, tag = "1", wrapper = "crate::id::JobId")]
1002    pub job_id: ::core::option::Option<crate::id::JobId>,
1003}
1004#[derive(prost_helpers::AnyPB)]
1005#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1006pub struct WaitResponse {
1007    #[prost(message, optional, tag = "1")]
1008    pub version: ::core::option::Option<WaitVersion>,
1009}
1010#[derive(prost_helpers::AnyPB)]
1011#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1012pub struct CommentOnRequest {
1013    #[prost(message, optional, tag = "1")]
1014    pub comment: ::core::option::Option<super::catalog::Comment>,
1015}
1016#[derive(prost_helpers::AnyPB)]
1017#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1018pub struct CommentOnResponse {
1019    #[prost(message, optional, tag = "1")]
1020    pub status: ::core::option::Option<super::common::Status>,
1021    #[prost(message, optional, tag = "2")]
1022    pub version: ::core::option::Option<WaitVersion>,
1023}
1024#[derive(prost_helpers::AnyPB)]
1025#[derive(Clone, PartialEq, ::prost::Message)]
1026pub struct TableSchemaChange {
1027    #[prost(enumeration = "table_schema_change::TableChangeType", tag = "1")]
1028    pub change_type: i32,
1029    #[prost(string, tag = "2")]
1030    pub cdc_table_id: ::prost::alloc::string::String,
1031    #[prost(message, repeated, tag = "3")]
1032    pub columns: ::prost::alloc::vec::Vec<super::plan_common::ColumnCatalog>,
1033    #[prost(string, tag = "4")]
1034    pub upstream_ddl: ::prost::alloc::string::String,
1035}
1036/// Nested message and enum types in `TableSchemaChange`.
1037pub mod table_schema_change {
1038    #[derive(prost_helpers::AnyPB)]
1039    #[derive(
1040        Clone,
1041        Copy,
1042        Debug,
1043        PartialEq,
1044        Eq,
1045        Hash,
1046        PartialOrd,
1047        Ord,
1048        ::prost::Enumeration
1049    )]
1050    #[repr(i32)]
1051    pub enum TableChangeType {
1052        Unspecified = 0,
1053        Alter = 1,
1054        Create = 2,
1055        Drop = 3,
1056    }
1057    impl TableChangeType {
1058        /// String value of the enum field names used in the ProtoBuf definition.
1059        ///
1060        /// The values are not transformed in any way and thus are considered stable
1061        /// (if the ProtoBuf definition does not change) and safe for programmatic use.
1062        pub fn as_str_name(&self) -> &'static str {
1063            match self {
1064                Self::Unspecified => "UNSPECIFIED",
1065                Self::Alter => "ALTER",
1066                Self::Create => "CREATE",
1067                Self::Drop => "DROP",
1068            }
1069        }
1070        /// Creates an enum from field names used in the ProtoBuf definition.
1071        pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1072            match value {
1073                "UNSPECIFIED" => Some(Self::Unspecified),
1074                "ALTER" => Some(Self::Alter),
1075                "CREATE" => Some(Self::Create),
1076                "DROP" => Some(Self::Drop),
1077                _ => None,
1078            }
1079        }
1080    }
1081}
1082#[derive(prost_helpers::AnyPB)]
1083#[derive(Clone, PartialEq, ::prost::Message)]
1084pub struct SchemaChangeEnvelope {
1085    #[prost(message, repeated, tag = "1")]
1086    pub table_changes: ::prost::alloc::vec::Vec<TableSchemaChange>,
1087}
1088#[derive(prost_helpers::AnyPB)]
1089#[derive(Clone, PartialEq, ::prost::Message)]
1090pub struct AutoSchemaChangeRequest {
1091    #[prost(message, optional, tag = "1")]
1092    pub schema_change: ::core::option::Option<SchemaChangeEnvelope>,
1093}
1094#[derive(prost_helpers::AnyPB)]
1095#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1096pub struct AutoSchemaChangeResponse {}
1097#[derive(prost_helpers::AnyPB)]
1098#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1099pub struct AlterDatabaseParamRequest {
1100    #[prost(uint32, tag = "1", wrapper = "crate::id::DatabaseId")]
1101    pub database_id: crate::id::DatabaseId,
1102    #[prost(oneof = "alter_database_param_request::Param", tags = "2, 3")]
1103    pub param: ::core::option::Option<alter_database_param_request::Param>,
1104}
1105/// Nested message and enum types in `AlterDatabaseParamRequest`.
1106pub mod alter_database_param_request {
1107    #[derive(prost_helpers::AnyPB)]
1108    #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Oneof)]
1109    pub enum Param {
1110        #[prost(message, tag = "2")]
1111        BarrierIntervalMs(super::super::common::OptionalUint32),
1112        #[prost(message, tag = "3")]
1113        CheckpointFrequency(super::super::common::OptionalUint64),
1114    }
1115}
1116#[derive(prost_helpers::AnyPB)]
1117#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1118pub struct AlterDatabaseParamResponse {
1119    #[prost(message, optional, tag = "1")]
1120    pub status: ::core::option::Option<super::common::Status>,
1121    #[prost(message, optional, tag = "2")]
1122    pub version: ::core::option::Option<WaitVersion>,
1123}
1124#[derive(prost_helpers::AnyPB)]
1125#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1126pub struct CompactIcebergTableRequest {
1127    #[prost(uint32, tag = "1", wrapper = "crate::id::SinkId")]
1128    pub sink_id: crate::id::SinkId,
1129}
1130#[derive(prost_helpers::AnyPB)]
1131#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1132pub struct CompactIcebergTableResponse {
1133    #[prost(message, optional, tag = "1")]
1134    pub status: ::core::option::Option<super::common::Status>,
1135    /// The compaction task ID that was triggered
1136    #[prost(uint64, tag = "2")]
1137    pub task_id: u64,
1138}
1139#[derive(prost_helpers::AnyPB)]
1140#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1141pub struct ExpireIcebergTableSnapshotsRequest {
1142    #[prost(uint32, tag = "1", wrapper = "crate::id::SinkId")]
1143    pub sink_id: crate::id::SinkId,
1144}
1145#[derive(prost_helpers::AnyPB)]
1146#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1147pub struct ExpireIcebergTableSnapshotsResponse {
1148    #[prost(message, optional, tag = "1")]
1149    pub status: ::core::option::Option<super::common::Status>,
1150}
1151#[derive(prost_helpers::AnyPB)]
1152#[derive(Clone, PartialEq, ::prost::Message)]
1153pub struct AlterStreamingJobConfigRequest {
1154    #[prost(uint32, tag = "1", wrapper = "crate::id::JobId")]
1155    pub job_id: crate::id::JobId,
1156    #[prost(map = "string, string", tag = "2")]
1157    pub entries_to_add: ::std::collections::HashMap<
1158        ::prost::alloc::string::String,
1159        ::prost::alloc::string::String,
1160    >,
1161    #[prost(string, repeated, tag = "3")]
1162    pub keys_to_remove: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1163}
1164#[derive(prost_helpers::AnyPB)]
1165#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1166pub struct AlterStreamingJobConfigResponse {}
1167/// An enum to distinguish different types of the `Table` streaming job.
1168///
1169/// * GENERAL: Table streaming jobs w/ or w/o a connector
1170/// * SHARED_CDC_SOURCE: The table streaming job is created based on a shared CDC source job (risingwavelabs/rfcs#73).
1171///
1172/// And one may add other types to support Table jobs that based on other shared sources (risingwavelabs/rfcs#72).
1173///
1174/// Currently, it's usages include:
1175///
1176/// * When creating the streaming actor graph, different table jobs may need different treatment.
1177/// * Some adhoc validation when creating the streaming job. e.g., `validate_cdc_table`.
1178///
1179/// It's not included in `catalog.Table`, and thus not persisted. It's only used in the `CreateTableRequest`.
1180#[derive(prost_helpers::AnyPB)]
1181#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1182#[repr(i32)]
1183pub enum TableJobType {
1184    Unspecified = 0,
1185    /// table streaming jobs excepts the `SHARED_CDC_SOURCE` type
1186    General = 1,
1187    /// table streaming job sharing a CDC source job
1188    SharedCdcSource = 2,
1189}
1190impl TableJobType {
1191    /// String value of the enum field names used in the ProtoBuf definition.
1192    ///
1193    /// The values are not transformed in any way and thus are considered stable
1194    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
1195    pub fn as_str_name(&self) -> &'static str {
1196        match self {
1197            Self::Unspecified => "TABLE_JOB_TYPE_UNSPECIFIED",
1198            Self::General => "TABLE_JOB_TYPE_GENERAL",
1199            Self::SharedCdcSource => "TABLE_JOB_TYPE_SHARED_CDC_SOURCE",
1200        }
1201    }
1202    /// Creates an enum from field names used in the ProtoBuf definition.
1203    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1204        match value {
1205            "TABLE_JOB_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
1206            "TABLE_JOB_TYPE_GENERAL" => Some(Self::General),
1207            "TABLE_JOB_TYPE_SHARED_CDC_SOURCE" => Some(Self::SharedCdcSource),
1208            _ => None,
1209        }
1210    }
1211}
1212#[derive(prost_helpers::AnyPB)]
1213#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1214#[repr(i32)]
1215pub enum BackfillType {
1216    Unspecified = 0,
1217    NormalBackfill = 1,
1218    SnapshotBackfill = 2,
1219}
1220impl BackfillType {
1221    /// String value of the enum field names used in the ProtoBuf definition.
1222    ///
1223    /// The values are not transformed in any way and thus are considered stable
1224    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
1225    pub fn as_str_name(&self) -> &'static str {
1226        match self {
1227            Self::Unspecified => "BACKFILL_TYPE_UNSPECIFIED",
1228            Self::NormalBackfill => "NORMAL_BACKFILL",
1229            Self::SnapshotBackfill => "SNAPSHOT_BACKFILL",
1230        }
1231    }
1232    /// Creates an enum from field names used in the ProtoBuf definition.
1233    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1234        match value {
1235            "BACKFILL_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
1236            "NORMAL_BACKFILL" => Some(Self::NormalBackfill),
1237            "SNAPSHOT_BACKFILL" => Some(Self::SnapshotBackfill),
1238            _ => None,
1239        }
1240    }
1241}
1242/// Generated client implementations.
1243pub mod ddl_service_client {
1244    #![allow(
1245        unused_variables,
1246        dead_code,
1247        missing_docs,
1248        clippy::wildcard_imports,
1249        clippy::let_unit_value,
1250    )]
1251    use tonic::codegen::*;
1252    use tonic::codegen::http::Uri;
1253    #[derive(Debug, Clone)]
1254    pub struct DdlServiceClient<T> {
1255        inner: tonic::client::Grpc<T>,
1256    }
1257    impl DdlServiceClient<tonic::transport::Channel> {
1258        /// Attempt to create a new client by connecting to a given endpoint.
1259        pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
1260        where
1261            D: TryInto<tonic::transport::Endpoint>,
1262            D::Error: Into<StdError>,
1263        {
1264            let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
1265            Ok(Self::new(conn))
1266        }
1267    }
1268    impl<T> DdlServiceClient<T>
1269    where
1270        T: tonic::client::GrpcService<tonic::body::Body>,
1271        T::Error: Into<StdError>,
1272        T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
1273        <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
1274    {
1275        pub fn new(inner: T) -> Self {
1276            let inner = tonic::client::Grpc::new(inner);
1277            Self { inner }
1278        }
1279        pub fn with_origin(inner: T, origin: Uri) -> Self {
1280            let inner = tonic::client::Grpc::with_origin(inner, origin);
1281            Self { inner }
1282        }
1283        pub fn with_interceptor<F>(
1284            inner: T,
1285            interceptor: F,
1286        ) -> DdlServiceClient<InterceptedService<T, F>>
1287        where
1288            F: tonic::service::Interceptor,
1289            T::ResponseBody: Default,
1290            T: tonic::codegen::Service<
1291                http::Request<tonic::body::Body>,
1292                Response = http::Response<
1293                    <T as tonic::client::GrpcService<tonic::body::Body>>::ResponseBody,
1294                >,
1295            >,
1296            <T as tonic::codegen::Service<
1297                http::Request<tonic::body::Body>,
1298            >>::Error: Into<StdError> + std::marker::Send + std::marker::Sync,
1299        {
1300            DdlServiceClient::new(InterceptedService::new(inner, interceptor))
1301        }
1302        /// Compress requests with the given encoding.
1303        ///
1304        /// This requires the server to support it otherwise it might respond with an
1305        /// error.
1306        #[must_use]
1307        pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
1308            self.inner = self.inner.send_compressed(encoding);
1309            self
1310        }
1311        /// Enable decompressing responses.
1312        #[must_use]
1313        pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
1314            self.inner = self.inner.accept_compressed(encoding);
1315            self
1316        }
1317        /// Limits the maximum size of a decoded message.
1318        ///
1319        /// Default: `4MB`
1320        #[must_use]
1321        pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
1322            self.inner = self.inner.max_decoding_message_size(limit);
1323            self
1324        }
1325        /// Limits the maximum size of an encoded message.
1326        ///
1327        /// Default: `usize::MAX`
1328        #[must_use]
1329        pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
1330            self.inner = self.inner.max_encoding_message_size(limit);
1331            self
1332        }
1333        pub async fn create_database(
1334            &mut self,
1335            request: impl tonic::IntoRequest<super::CreateDatabaseRequest>,
1336        ) -> std::result::Result<
1337            tonic::Response<super::CreateDatabaseResponse>,
1338            tonic::Status,
1339        > {
1340            self.inner
1341                .ready()
1342                .await
1343                .map_err(|e| {
1344                    tonic::Status::unknown(
1345                        format!("Service was not ready: {}", e.into()),
1346                    )
1347                })?;
1348            let codec = tonic_prost::ProstCodec::default();
1349            let path = http::uri::PathAndQuery::from_static(
1350                "/ddl_service.DdlService/CreateDatabase",
1351            );
1352            let mut req = request.into_request();
1353            req.extensions_mut()
1354                .insert(GrpcMethod::new("ddl_service.DdlService", "CreateDatabase"));
1355            self.inner.unary(req, path, codec).await
1356        }
1357        pub async fn drop_database(
1358            &mut self,
1359            request: impl tonic::IntoRequest<super::DropDatabaseRequest>,
1360        ) -> std::result::Result<
1361            tonic::Response<super::DropDatabaseResponse>,
1362            tonic::Status,
1363        > {
1364            self.inner
1365                .ready()
1366                .await
1367                .map_err(|e| {
1368                    tonic::Status::unknown(
1369                        format!("Service was not ready: {}", e.into()),
1370                    )
1371                })?;
1372            let codec = tonic_prost::ProstCodec::default();
1373            let path = http::uri::PathAndQuery::from_static(
1374                "/ddl_service.DdlService/DropDatabase",
1375            );
1376            let mut req = request.into_request();
1377            req.extensions_mut()
1378                .insert(GrpcMethod::new("ddl_service.DdlService", "DropDatabase"));
1379            self.inner.unary(req, path, codec).await
1380        }
1381        pub async fn create_schema(
1382            &mut self,
1383            request: impl tonic::IntoRequest<super::CreateSchemaRequest>,
1384        ) -> std::result::Result<
1385            tonic::Response<super::CreateSchemaResponse>,
1386            tonic::Status,
1387        > {
1388            self.inner
1389                .ready()
1390                .await
1391                .map_err(|e| {
1392                    tonic::Status::unknown(
1393                        format!("Service was not ready: {}", e.into()),
1394                    )
1395                })?;
1396            let codec = tonic_prost::ProstCodec::default();
1397            let path = http::uri::PathAndQuery::from_static(
1398                "/ddl_service.DdlService/CreateSchema",
1399            );
1400            let mut req = request.into_request();
1401            req.extensions_mut()
1402                .insert(GrpcMethod::new("ddl_service.DdlService", "CreateSchema"));
1403            self.inner.unary(req, path, codec).await
1404        }
1405        pub async fn drop_schema(
1406            &mut self,
1407            request: impl tonic::IntoRequest<super::DropSchemaRequest>,
1408        ) -> std::result::Result<
1409            tonic::Response<super::DropSchemaResponse>,
1410            tonic::Status,
1411        > {
1412            self.inner
1413                .ready()
1414                .await
1415                .map_err(|e| {
1416                    tonic::Status::unknown(
1417                        format!("Service was not ready: {}", e.into()),
1418                    )
1419                })?;
1420            let codec = tonic_prost::ProstCodec::default();
1421            let path = http::uri::PathAndQuery::from_static(
1422                "/ddl_service.DdlService/DropSchema",
1423            );
1424            let mut req = request.into_request();
1425            req.extensions_mut()
1426                .insert(GrpcMethod::new("ddl_service.DdlService", "DropSchema"));
1427            self.inner.unary(req, path, codec).await
1428        }
1429        pub async fn create_source(
1430            &mut self,
1431            request: impl tonic::IntoRequest<super::CreateSourceRequest>,
1432        ) -> std::result::Result<
1433            tonic::Response<super::CreateSourceResponse>,
1434            tonic::Status,
1435        > {
1436            self.inner
1437                .ready()
1438                .await
1439                .map_err(|e| {
1440                    tonic::Status::unknown(
1441                        format!("Service was not ready: {}", e.into()),
1442                    )
1443                })?;
1444            let codec = tonic_prost::ProstCodec::default();
1445            let path = http::uri::PathAndQuery::from_static(
1446                "/ddl_service.DdlService/CreateSource",
1447            );
1448            let mut req = request.into_request();
1449            req.extensions_mut()
1450                .insert(GrpcMethod::new("ddl_service.DdlService", "CreateSource"));
1451            self.inner.unary(req, path, codec).await
1452        }
1453        pub async fn drop_source(
1454            &mut self,
1455            request: impl tonic::IntoRequest<super::DropSourceRequest>,
1456        ) -> std::result::Result<
1457            tonic::Response<super::DropSourceResponse>,
1458            tonic::Status,
1459        > {
1460            self.inner
1461                .ready()
1462                .await
1463                .map_err(|e| {
1464                    tonic::Status::unknown(
1465                        format!("Service was not ready: {}", e.into()),
1466                    )
1467                })?;
1468            let codec = tonic_prost::ProstCodec::default();
1469            let path = http::uri::PathAndQuery::from_static(
1470                "/ddl_service.DdlService/DropSource",
1471            );
1472            let mut req = request.into_request();
1473            req.extensions_mut()
1474                .insert(GrpcMethod::new("ddl_service.DdlService", "DropSource"));
1475            self.inner.unary(req, path, codec).await
1476        }
1477        pub async fn create_sink(
1478            &mut self,
1479            request: impl tonic::IntoRequest<super::CreateSinkRequest>,
1480        ) -> std::result::Result<
1481            tonic::Response<super::CreateSinkResponse>,
1482            tonic::Status,
1483        > {
1484            self.inner
1485                .ready()
1486                .await
1487                .map_err(|e| {
1488                    tonic::Status::unknown(
1489                        format!("Service was not ready: {}", e.into()),
1490                    )
1491                })?;
1492            let codec = tonic_prost::ProstCodec::default();
1493            let path = http::uri::PathAndQuery::from_static(
1494                "/ddl_service.DdlService/CreateSink",
1495            );
1496            let mut req = request.into_request();
1497            req.extensions_mut()
1498                .insert(GrpcMethod::new("ddl_service.DdlService", "CreateSink"));
1499            self.inner.unary(req, path, codec).await
1500        }
1501        pub async fn create_subscription(
1502            &mut self,
1503            request: impl tonic::IntoRequest<super::CreateSubscriptionRequest>,
1504        ) -> std::result::Result<
1505            tonic::Response<super::CreateSubscriptionResponse>,
1506            tonic::Status,
1507        > {
1508            self.inner
1509                .ready()
1510                .await
1511                .map_err(|e| {
1512                    tonic::Status::unknown(
1513                        format!("Service was not ready: {}", e.into()),
1514                    )
1515                })?;
1516            let codec = tonic_prost::ProstCodec::default();
1517            let path = http::uri::PathAndQuery::from_static(
1518                "/ddl_service.DdlService/CreateSubscription",
1519            );
1520            let mut req = request.into_request();
1521            req.extensions_mut()
1522                .insert(GrpcMethod::new("ddl_service.DdlService", "CreateSubscription"));
1523            self.inner.unary(req, path, codec).await
1524        }
1525        pub async fn drop_sink(
1526            &mut self,
1527            request: impl tonic::IntoRequest<super::DropSinkRequest>,
1528        ) -> std::result::Result<
1529            tonic::Response<super::DropSinkResponse>,
1530            tonic::Status,
1531        > {
1532            self.inner
1533                .ready()
1534                .await
1535                .map_err(|e| {
1536                    tonic::Status::unknown(
1537                        format!("Service was not ready: {}", e.into()),
1538                    )
1539                })?;
1540            let codec = tonic_prost::ProstCodec::default();
1541            let path = http::uri::PathAndQuery::from_static(
1542                "/ddl_service.DdlService/DropSink",
1543            );
1544            let mut req = request.into_request();
1545            req.extensions_mut()
1546                .insert(GrpcMethod::new("ddl_service.DdlService", "DropSink"));
1547            self.inner.unary(req, path, codec).await
1548        }
1549        pub async fn drop_subscription(
1550            &mut self,
1551            request: impl tonic::IntoRequest<super::DropSubscriptionRequest>,
1552        ) -> std::result::Result<
1553            tonic::Response<super::DropSubscriptionResponse>,
1554            tonic::Status,
1555        > {
1556            self.inner
1557                .ready()
1558                .await
1559                .map_err(|e| {
1560                    tonic::Status::unknown(
1561                        format!("Service was not ready: {}", e.into()),
1562                    )
1563                })?;
1564            let codec = tonic_prost::ProstCodec::default();
1565            let path = http::uri::PathAndQuery::from_static(
1566                "/ddl_service.DdlService/DropSubscription",
1567            );
1568            let mut req = request.into_request();
1569            req.extensions_mut()
1570                .insert(GrpcMethod::new("ddl_service.DdlService", "DropSubscription"));
1571            self.inner.unary(req, path, codec).await
1572        }
1573        pub async fn create_materialized_view(
1574            &mut self,
1575            request: impl tonic::IntoRequest<super::CreateMaterializedViewRequest>,
1576        ) -> std::result::Result<
1577            tonic::Response<super::CreateMaterializedViewResponse>,
1578            tonic::Status,
1579        > {
1580            self.inner
1581                .ready()
1582                .await
1583                .map_err(|e| {
1584                    tonic::Status::unknown(
1585                        format!("Service was not ready: {}", e.into()),
1586                    )
1587                })?;
1588            let codec = tonic_prost::ProstCodec::default();
1589            let path = http::uri::PathAndQuery::from_static(
1590                "/ddl_service.DdlService/CreateMaterializedView",
1591            );
1592            let mut req = request.into_request();
1593            req.extensions_mut()
1594                .insert(
1595                    GrpcMethod::new("ddl_service.DdlService", "CreateMaterializedView"),
1596                );
1597            self.inner.unary(req, path, codec).await
1598        }
1599        pub async fn drop_materialized_view(
1600            &mut self,
1601            request: impl tonic::IntoRequest<super::DropMaterializedViewRequest>,
1602        ) -> std::result::Result<
1603            tonic::Response<super::DropMaterializedViewResponse>,
1604            tonic::Status,
1605        > {
1606            self.inner
1607                .ready()
1608                .await
1609                .map_err(|e| {
1610                    tonic::Status::unknown(
1611                        format!("Service was not ready: {}", e.into()),
1612                    )
1613                })?;
1614            let codec = tonic_prost::ProstCodec::default();
1615            let path = http::uri::PathAndQuery::from_static(
1616                "/ddl_service.DdlService/DropMaterializedView",
1617            );
1618            let mut req = request.into_request();
1619            req.extensions_mut()
1620                .insert(
1621                    GrpcMethod::new("ddl_service.DdlService", "DropMaterializedView"),
1622                );
1623            self.inner.unary(req, path, codec).await
1624        }
1625        pub async fn create_table(
1626            &mut self,
1627            request: impl tonic::IntoRequest<super::CreateTableRequest>,
1628        ) -> std::result::Result<
1629            tonic::Response<super::CreateTableResponse>,
1630            tonic::Status,
1631        > {
1632            self.inner
1633                .ready()
1634                .await
1635                .map_err(|e| {
1636                    tonic::Status::unknown(
1637                        format!("Service was not ready: {}", e.into()),
1638                    )
1639                })?;
1640            let codec = tonic_prost::ProstCodec::default();
1641            let path = http::uri::PathAndQuery::from_static(
1642                "/ddl_service.DdlService/CreateTable",
1643            );
1644            let mut req = request.into_request();
1645            req.extensions_mut()
1646                .insert(GrpcMethod::new("ddl_service.DdlService", "CreateTable"));
1647            self.inner.unary(req, path, codec).await
1648        }
1649        pub async fn create_iceberg_table(
1650            &mut self,
1651            request: impl tonic::IntoRequest<super::CreateIcebergTableRequest>,
1652        ) -> std::result::Result<
1653            tonic::Response<super::CreateIcebergTableResponse>,
1654            tonic::Status,
1655        > {
1656            self.inner
1657                .ready()
1658                .await
1659                .map_err(|e| {
1660                    tonic::Status::unknown(
1661                        format!("Service was not ready: {}", e.into()),
1662                    )
1663                })?;
1664            let codec = tonic_prost::ProstCodec::default();
1665            let path = http::uri::PathAndQuery::from_static(
1666                "/ddl_service.DdlService/CreateIcebergTable",
1667            );
1668            let mut req = request.into_request();
1669            req.extensions_mut()
1670                .insert(GrpcMethod::new("ddl_service.DdlService", "CreateIcebergTable"));
1671            self.inner.unary(req, path, codec).await
1672        }
1673        pub async fn create_secret(
1674            &mut self,
1675            request: impl tonic::IntoRequest<super::CreateSecretRequest>,
1676        ) -> std::result::Result<
1677            tonic::Response<super::CreateSecretResponse>,
1678            tonic::Status,
1679        > {
1680            self.inner
1681                .ready()
1682                .await
1683                .map_err(|e| {
1684                    tonic::Status::unknown(
1685                        format!("Service was not ready: {}", e.into()),
1686                    )
1687                })?;
1688            let codec = tonic_prost::ProstCodec::default();
1689            let path = http::uri::PathAndQuery::from_static(
1690                "/ddl_service.DdlService/CreateSecret",
1691            );
1692            let mut req = request.into_request();
1693            req.extensions_mut()
1694                .insert(GrpcMethod::new("ddl_service.DdlService", "CreateSecret"));
1695            self.inner.unary(req, path, codec).await
1696        }
1697        pub async fn drop_secret(
1698            &mut self,
1699            request: impl tonic::IntoRequest<super::DropSecretRequest>,
1700        ) -> std::result::Result<
1701            tonic::Response<super::DropSecretResponse>,
1702            tonic::Status,
1703        > {
1704            self.inner
1705                .ready()
1706                .await
1707                .map_err(|e| {
1708                    tonic::Status::unknown(
1709                        format!("Service was not ready: {}", e.into()),
1710                    )
1711                })?;
1712            let codec = tonic_prost::ProstCodec::default();
1713            let path = http::uri::PathAndQuery::from_static(
1714                "/ddl_service.DdlService/DropSecret",
1715            );
1716            let mut req = request.into_request();
1717            req.extensions_mut()
1718                .insert(GrpcMethod::new("ddl_service.DdlService", "DropSecret"));
1719            self.inner.unary(req, path, codec).await
1720        }
1721        pub async fn alter_secret(
1722            &mut self,
1723            request: impl tonic::IntoRequest<super::AlterSecretRequest>,
1724        ) -> std::result::Result<
1725            tonic::Response<super::AlterSecretResponse>,
1726            tonic::Status,
1727        > {
1728            self.inner
1729                .ready()
1730                .await
1731                .map_err(|e| {
1732                    tonic::Status::unknown(
1733                        format!("Service was not ready: {}", e.into()),
1734                    )
1735                })?;
1736            let codec = tonic_prost::ProstCodec::default();
1737            let path = http::uri::PathAndQuery::from_static(
1738                "/ddl_service.DdlService/AlterSecret",
1739            );
1740            let mut req = request.into_request();
1741            req.extensions_mut()
1742                .insert(GrpcMethod::new("ddl_service.DdlService", "AlterSecret"));
1743            self.inner.unary(req, path, codec).await
1744        }
1745        pub async fn alter_name(
1746            &mut self,
1747            request: impl tonic::IntoRequest<super::AlterNameRequest>,
1748        ) -> std::result::Result<
1749            tonic::Response<super::AlterNameResponse>,
1750            tonic::Status,
1751        > {
1752            self.inner
1753                .ready()
1754                .await
1755                .map_err(|e| {
1756                    tonic::Status::unknown(
1757                        format!("Service was not ready: {}", e.into()),
1758                    )
1759                })?;
1760            let codec = tonic_prost::ProstCodec::default();
1761            let path = http::uri::PathAndQuery::from_static(
1762                "/ddl_service.DdlService/AlterName",
1763            );
1764            let mut req = request.into_request();
1765            req.extensions_mut()
1766                .insert(GrpcMethod::new("ddl_service.DdlService", "AlterName"));
1767            self.inner.unary(req, path, codec).await
1768        }
1769        pub async fn alter_source(
1770            &mut self,
1771            request: impl tonic::IntoRequest<super::AlterSourceRequest>,
1772        ) -> std::result::Result<
1773            tonic::Response<super::AlterSourceResponse>,
1774            tonic::Status,
1775        > {
1776            self.inner
1777                .ready()
1778                .await
1779                .map_err(|e| {
1780                    tonic::Status::unknown(
1781                        format!("Service was not ready: {}", e.into()),
1782                    )
1783                })?;
1784            let codec = tonic_prost::ProstCodec::default();
1785            let path = http::uri::PathAndQuery::from_static(
1786                "/ddl_service.DdlService/AlterSource",
1787            );
1788            let mut req = request.into_request();
1789            req.extensions_mut()
1790                .insert(GrpcMethod::new("ddl_service.DdlService", "AlterSource"));
1791            self.inner.unary(req, path, codec).await
1792        }
1793        pub async fn reset_source(
1794            &mut self,
1795            request: impl tonic::IntoRequest<super::ResetSourceRequest>,
1796        ) -> std::result::Result<
1797            tonic::Response<super::ResetSourceResponse>,
1798            tonic::Status,
1799        > {
1800            self.inner
1801                .ready()
1802                .await
1803                .map_err(|e| {
1804                    tonic::Status::unknown(
1805                        format!("Service was not ready: {}", e.into()),
1806                    )
1807                })?;
1808            let codec = tonic_prost::ProstCodec::default();
1809            let path = http::uri::PathAndQuery::from_static(
1810                "/ddl_service.DdlService/ResetSource",
1811            );
1812            let mut req = request.into_request();
1813            req.extensions_mut()
1814                .insert(GrpcMethod::new("ddl_service.DdlService", "ResetSource"));
1815            self.inner.unary(req, path, codec).await
1816        }
1817        pub async fn alter_owner(
1818            &mut self,
1819            request: impl tonic::IntoRequest<super::AlterOwnerRequest>,
1820        ) -> std::result::Result<
1821            tonic::Response<super::AlterOwnerResponse>,
1822            tonic::Status,
1823        > {
1824            self.inner
1825                .ready()
1826                .await
1827                .map_err(|e| {
1828                    tonic::Status::unknown(
1829                        format!("Service was not ready: {}", e.into()),
1830                    )
1831                })?;
1832            let codec = tonic_prost::ProstCodec::default();
1833            let path = http::uri::PathAndQuery::from_static(
1834                "/ddl_service.DdlService/AlterOwner",
1835            );
1836            let mut req = request.into_request();
1837            req.extensions_mut()
1838                .insert(GrpcMethod::new("ddl_service.DdlService", "AlterOwner"));
1839            self.inner.unary(req, path, codec).await
1840        }
1841        pub async fn alter_subscription_retention(
1842            &mut self,
1843            request: impl tonic::IntoRequest<super::AlterSubscriptionRetentionRequest>,
1844        ) -> std::result::Result<
1845            tonic::Response<super::AlterSubscriptionRetentionResponse>,
1846            tonic::Status,
1847        > {
1848            self.inner
1849                .ready()
1850                .await
1851                .map_err(|e| {
1852                    tonic::Status::unknown(
1853                        format!("Service was not ready: {}", e.into()),
1854                    )
1855                })?;
1856            let codec = tonic_prost::ProstCodec::default();
1857            let path = http::uri::PathAndQuery::from_static(
1858                "/ddl_service.DdlService/AlterSubscriptionRetention",
1859            );
1860            let mut req = request.into_request();
1861            req.extensions_mut()
1862                .insert(
1863                    GrpcMethod::new(
1864                        "ddl_service.DdlService",
1865                        "AlterSubscriptionRetention",
1866                    ),
1867                );
1868            self.inner.unary(req, path, codec).await
1869        }
1870        pub async fn alter_set_schema(
1871            &mut self,
1872            request: impl tonic::IntoRequest<super::AlterSetSchemaRequest>,
1873        ) -> std::result::Result<
1874            tonic::Response<super::AlterSetSchemaResponse>,
1875            tonic::Status,
1876        > {
1877            self.inner
1878                .ready()
1879                .await
1880                .map_err(|e| {
1881                    tonic::Status::unknown(
1882                        format!("Service was not ready: {}", e.into()),
1883                    )
1884                })?;
1885            let codec = tonic_prost::ProstCodec::default();
1886            let path = http::uri::PathAndQuery::from_static(
1887                "/ddl_service.DdlService/AlterSetSchema",
1888            );
1889            let mut req = request.into_request();
1890            req.extensions_mut()
1891                .insert(GrpcMethod::new("ddl_service.DdlService", "AlterSetSchema"));
1892            self.inner.unary(req, path, codec).await
1893        }
1894        pub async fn alter_parallelism(
1895            &mut self,
1896            request: impl tonic::IntoRequest<super::AlterParallelismRequest>,
1897        ) -> std::result::Result<
1898            tonic::Response<super::AlterParallelismResponse>,
1899            tonic::Status,
1900        > {
1901            self.inner
1902                .ready()
1903                .await
1904                .map_err(|e| {
1905                    tonic::Status::unknown(
1906                        format!("Service was not ready: {}", e.into()),
1907                    )
1908                })?;
1909            let codec = tonic_prost::ProstCodec::default();
1910            let path = http::uri::PathAndQuery::from_static(
1911                "/ddl_service.DdlService/AlterParallelism",
1912            );
1913            let mut req = request.into_request();
1914            req.extensions_mut()
1915                .insert(GrpcMethod::new("ddl_service.DdlService", "AlterParallelism"));
1916            self.inner.unary(req, path, codec).await
1917        }
1918        pub async fn alter_backfill_parallelism(
1919            &mut self,
1920            request: impl tonic::IntoRequest<super::AlterBackfillParallelismRequest>,
1921        ) -> std::result::Result<
1922            tonic::Response<super::AlterBackfillParallelismResponse>,
1923            tonic::Status,
1924        > {
1925            self.inner
1926                .ready()
1927                .await
1928                .map_err(|e| {
1929                    tonic::Status::unknown(
1930                        format!("Service was not ready: {}", e.into()),
1931                    )
1932                })?;
1933            let codec = tonic_prost::ProstCodec::default();
1934            let path = http::uri::PathAndQuery::from_static(
1935                "/ddl_service.DdlService/AlterBackfillParallelism",
1936            );
1937            let mut req = request.into_request();
1938            req.extensions_mut()
1939                .insert(
1940                    GrpcMethod::new("ddl_service.DdlService", "AlterBackfillParallelism"),
1941                );
1942            self.inner.unary(req, path, codec).await
1943        }
1944        pub async fn alter_fragment_parallelism(
1945            &mut self,
1946            request: impl tonic::IntoRequest<super::AlterFragmentParallelismRequest>,
1947        ) -> std::result::Result<
1948            tonic::Response<super::AlterFragmentParallelismResponse>,
1949            tonic::Status,
1950        > {
1951            self.inner
1952                .ready()
1953                .await
1954                .map_err(|e| {
1955                    tonic::Status::unknown(
1956                        format!("Service was not ready: {}", e.into()),
1957                    )
1958                })?;
1959            let codec = tonic_prost::ProstCodec::default();
1960            let path = http::uri::PathAndQuery::from_static(
1961                "/ddl_service.DdlService/AlterFragmentParallelism",
1962            );
1963            let mut req = request.into_request();
1964            req.extensions_mut()
1965                .insert(
1966                    GrpcMethod::new("ddl_service.DdlService", "AlterFragmentParallelism"),
1967                );
1968            self.inner.unary(req, path, codec).await
1969        }
1970        pub async fn alter_resource_group(
1971            &mut self,
1972            request: impl tonic::IntoRequest<super::AlterResourceGroupRequest>,
1973        ) -> std::result::Result<
1974            tonic::Response<super::AlterResourceGroupResponse>,
1975            tonic::Status,
1976        > {
1977            self.inner
1978                .ready()
1979                .await
1980                .map_err(|e| {
1981                    tonic::Status::unknown(
1982                        format!("Service was not ready: {}", e.into()),
1983                    )
1984                })?;
1985            let codec = tonic_prost::ProstCodec::default();
1986            let path = http::uri::PathAndQuery::from_static(
1987                "/ddl_service.DdlService/AlterResourceGroup",
1988            );
1989            let mut req = request.into_request();
1990            req.extensions_mut()
1991                .insert(GrpcMethod::new("ddl_service.DdlService", "AlterResourceGroup"));
1992            self.inner.unary(req, path, codec).await
1993        }
1994        pub async fn drop_table(
1995            &mut self,
1996            request: impl tonic::IntoRequest<super::DropTableRequest>,
1997        ) -> std::result::Result<
1998            tonic::Response<super::DropTableResponse>,
1999            tonic::Status,
2000        > {
2001            self.inner
2002                .ready()
2003                .await
2004                .map_err(|e| {
2005                    tonic::Status::unknown(
2006                        format!("Service was not ready: {}", e.into()),
2007                    )
2008                })?;
2009            let codec = tonic_prost::ProstCodec::default();
2010            let path = http::uri::PathAndQuery::from_static(
2011                "/ddl_service.DdlService/DropTable",
2012            );
2013            let mut req = request.into_request();
2014            req.extensions_mut()
2015                .insert(GrpcMethod::new("ddl_service.DdlService", "DropTable"));
2016            self.inner.unary(req, path, codec).await
2017        }
2018        pub async fn risectl_list_state_tables(
2019            &mut self,
2020            request: impl tonic::IntoRequest<super::RisectlListStateTablesRequest>,
2021        ) -> std::result::Result<
2022            tonic::Response<super::RisectlListStateTablesResponse>,
2023            tonic::Status,
2024        > {
2025            self.inner
2026                .ready()
2027                .await
2028                .map_err(|e| {
2029                    tonic::Status::unknown(
2030                        format!("Service was not ready: {}", e.into()),
2031                    )
2032                })?;
2033            let codec = tonic_prost::ProstCodec::default();
2034            let path = http::uri::PathAndQuery::from_static(
2035                "/ddl_service.DdlService/RisectlListStateTables",
2036            );
2037            let mut req = request.into_request();
2038            req.extensions_mut()
2039                .insert(
2040                    GrpcMethod::new("ddl_service.DdlService", "RisectlListStateTables"),
2041                );
2042            self.inner.unary(req, path, codec).await
2043        }
2044        pub async fn risectl_resume_backfill(
2045            &mut self,
2046            request: impl tonic::IntoRequest<super::RisectlResumeBackfillRequest>,
2047        ) -> std::result::Result<
2048            tonic::Response<super::RisectlResumeBackfillResponse>,
2049            tonic::Status,
2050        > {
2051            self.inner
2052                .ready()
2053                .await
2054                .map_err(|e| {
2055                    tonic::Status::unknown(
2056                        format!("Service was not ready: {}", e.into()),
2057                    )
2058                })?;
2059            let codec = tonic_prost::ProstCodec::default();
2060            let path = http::uri::PathAndQuery::from_static(
2061                "/ddl_service.DdlService/RisectlResumeBackfill",
2062            );
2063            let mut req = request.into_request();
2064            req.extensions_mut()
2065                .insert(
2066                    GrpcMethod::new("ddl_service.DdlService", "RisectlResumeBackfill"),
2067                );
2068            self.inner.unary(req, path, codec).await
2069        }
2070        pub async fn create_view(
2071            &mut self,
2072            request: impl tonic::IntoRequest<super::CreateViewRequest>,
2073        ) -> std::result::Result<
2074            tonic::Response<super::CreateViewResponse>,
2075            tonic::Status,
2076        > {
2077            self.inner
2078                .ready()
2079                .await
2080                .map_err(|e| {
2081                    tonic::Status::unknown(
2082                        format!("Service was not ready: {}", e.into()),
2083                    )
2084                })?;
2085            let codec = tonic_prost::ProstCodec::default();
2086            let path = http::uri::PathAndQuery::from_static(
2087                "/ddl_service.DdlService/CreateView",
2088            );
2089            let mut req = request.into_request();
2090            req.extensions_mut()
2091                .insert(GrpcMethod::new("ddl_service.DdlService", "CreateView"));
2092            self.inner.unary(req, path, codec).await
2093        }
2094        pub async fn drop_view(
2095            &mut self,
2096            request: impl tonic::IntoRequest<super::DropViewRequest>,
2097        ) -> std::result::Result<
2098            tonic::Response<super::DropViewResponse>,
2099            tonic::Status,
2100        > {
2101            self.inner
2102                .ready()
2103                .await
2104                .map_err(|e| {
2105                    tonic::Status::unknown(
2106                        format!("Service was not ready: {}", e.into()),
2107                    )
2108                })?;
2109            let codec = tonic_prost::ProstCodec::default();
2110            let path = http::uri::PathAndQuery::from_static(
2111                "/ddl_service.DdlService/DropView",
2112            );
2113            let mut req = request.into_request();
2114            req.extensions_mut()
2115                .insert(GrpcMethod::new("ddl_service.DdlService", "DropView"));
2116            self.inner.unary(req, path, codec).await
2117        }
2118        pub async fn create_index(
2119            &mut self,
2120            request: impl tonic::IntoRequest<super::CreateIndexRequest>,
2121        ) -> std::result::Result<
2122            tonic::Response<super::CreateIndexResponse>,
2123            tonic::Status,
2124        > {
2125            self.inner
2126                .ready()
2127                .await
2128                .map_err(|e| {
2129                    tonic::Status::unknown(
2130                        format!("Service was not ready: {}", e.into()),
2131                    )
2132                })?;
2133            let codec = tonic_prost::ProstCodec::default();
2134            let path = http::uri::PathAndQuery::from_static(
2135                "/ddl_service.DdlService/CreateIndex",
2136            );
2137            let mut req = request.into_request();
2138            req.extensions_mut()
2139                .insert(GrpcMethod::new("ddl_service.DdlService", "CreateIndex"));
2140            self.inner.unary(req, path, codec).await
2141        }
2142        pub async fn drop_index(
2143            &mut self,
2144            request: impl tonic::IntoRequest<super::DropIndexRequest>,
2145        ) -> std::result::Result<
2146            tonic::Response<super::DropIndexResponse>,
2147            tonic::Status,
2148        > {
2149            self.inner
2150                .ready()
2151                .await
2152                .map_err(|e| {
2153                    tonic::Status::unknown(
2154                        format!("Service was not ready: {}", e.into()),
2155                    )
2156                })?;
2157            let codec = tonic_prost::ProstCodec::default();
2158            let path = http::uri::PathAndQuery::from_static(
2159                "/ddl_service.DdlService/DropIndex",
2160            );
2161            let mut req = request.into_request();
2162            req.extensions_mut()
2163                .insert(GrpcMethod::new("ddl_service.DdlService", "DropIndex"));
2164            self.inner.unary(req, path, codec).await
2165        }
2166        pub async fn create_function(
2167            &mut self,
2168            request: impl tonic::IntoRequest<super::CreateFunctionRequest>,
2169        ) -> std::result::Result<
2170            tonic::Response<super::CreateFunctionResponse>,
2171            tonic::Status,
2172        > {
2173            self.inner
2174                .ready()
2175                .await
2176                .map_err(|e| {
2177                    tonic::Status::unknown(
2178                        format!("Service was not ready: {}", e.into()),
2179                    )
2180                })?;
2181            let codec = tonic_prost::ProstCodec::default();
2182            let path = http::uri::PathAndQuery::from_static(
2183                "/ddl_service.DdlService/CreateFunction",
2184            );
2185            let mut req = request.into_request();
2186            req.extensions_mut()
2187                .insert(GrpcMethod::new("ddl_service.DdlService", "CreateFunction"));
2188            self.inner.unary(req, path, codec).await
2189        }
2190        pub async fn drop_function(
2191            &mut self,
2192            request: impl tonic::IntoRequest<super::DropFunctionRequest>,
2193        ) -> std::result::Result<
2194            tonic::Response<super::DropFunctionResponse>,
2195            tonic::Status,
2196        > {
2197            self.inner
2198                .ready()
2199                .await
2200                .map_err(|e| {
2201                    tonic::Status::unknown(
2202                        format!("Service was not ready: {}", e.into()),
2203                    )
2204                })?;
2205            let codec = tonic_prost::ProstCodec::default();
2206            let path = http::uri::PathAndQuery::from_static(
2207                "/ddl_service.DdlService/DropFunction",
2208            );
2209            let mut req = request.into_request();
2210            req.extensions_mut()
2211                .insert(GrpcMethod::new("ddl_service.DdlService", "DropFunction"));
2212            self.inner.unary(req, path, codec).await
2213        }
2214        pub async fn replace_job_plan(
2215            &mut self,
2216            request: impl tonic::IntoRequest<super::ReplaceJobPlanRequest>,
2217        ) -> std::result::Result<
2218            tonic::Response<super::ReplaceJobPlanResponse>,
2219            tonic::Status,
2220        > {
2221            self.inner
2222                .ready()
2223                .await
2224                .map_err(|e| {
2225                    tonic::Status::unknown(
2226                        format!("Service was not ready: {}", e.into()),
2227                    )
2228                })?;
2229            let codec = tonic_prost::ProstCodec::default();
2230            let path = http::uri::PathAndQuery::from_static(
2231                "/ddl_service.DdlService/ReplaceJobPlan",
2232            );
2233            let mut req = request.into_request();
2234            req.extensions_mut()
2235                .insert(GrpcMethod::new("ddl_service.DdlService", "ReplaceJobPlan"));
2236            self.inner.unary(req, path, codec).await
2237        }
2238        pub async fn get_table(
2239            &mut self,
2240            request: impl tonic::IntoRequest<super::GetTableRequest>,
2241        ) -> std::result::Result<
2242            tonic::Response<super::GetTableResponse>,
2243            tonic::Status,
2244        > {
2245            self.inner
2246                .ready()
2247                .await
2248                .map_err(|e| {
2249                    tonic::Status::unknown(
2250                        format!("Service was not ready: {}", e.into()),
2251                    )
2252                })?;
2253            let codec = tonic_prost::ProstCodec::default();
2254            let path = http::uri::PathAndQuery::from_static(
2255                "/ddl_service.DdlService/GetTable",
2256            );
2257            let mut req = request.into_request();
2258            req.extensions_mut()
2259                .insert(GrpcMethod::new("ddl_service.DdlService", "GetTable"));
2260            self.inner.unary(req, path, codec).await
2261        }
2262        pub async fn get_ddl_progress(
2263            &mut self,
2264            request: impl tonic::IntoRequest<super::GetDdlProgressRequest>,
2265        ) -> std::result::Result<
2266            tonic::Response<super::GetDdlProgressResponse>,
2267            tonic::Status,
2268        > {
2269            self.inner
2270                .ready()
2271                .await
2272                .map_err(|e| {
2273                    tonic::Status::unknown(
2274                        format!("Service was not ready: {}", e.into()),
2275                    )
2276                })?;
2277            let codec = tonic_prost::ProstCodec::default();
2278            let path = http::uri::PathAndQuery::from_static(
2279                "/ddl_service.DdlService/GetDdlProgress",
2280            );
2281            let mut req = request.into_request();
2282            req.extensions_mut()
2283                .insert(GrpcMethod::new("ddl_service.DdlService", "GetDdlProgress"));
2284            self.inner.unary(req, path, codec).await
2285        }
2286        pub async fn create_connection(
2287            &mut self,
2288            request: impl tonic::IntoRequest<super::CreateConnectionRequest>,
2289        ) -> std::result::Result<
2290            tonic::Response<super::CreateConnectionResponse>,
2291            tonic::Status,
2292        > {
2293            self.inner
2294                .ready()
2295                .await
2296                .map_err(|e| {
2297                    tonic::Status::unknown(
2298                        format!("Service was not ready: {}", e.into()),
2299                    )
2300                })?;
2301            let codec = tonic_prost::ProstCodec::default();
2302            let path = http::uri::PathAndQuery::from_static(
2303                "/ddl_service.DdlService/CreateConnection",
2304            );
2305            let mut req = request.into_request();
2306            req.extensions_mut()
2307                .insert(GrpcMethod::new("ddl_service.DdlService", "CreateConnection"));
2308            self.inner.unary(req, path, codec).await
2309        }
2310        pub async fn list_connections(
2311            &mut self,
2312            request: impl tonic::IntoRequest<super::ListConnectionsRequest>,
2313        ) -> std::result::Result<
2314            tonic::Response<super::ListConnectionsResponse>,
2315            tonic::Status,
2316        > {
2317            self.inner
2318                .ready()
2319                .await
2320                .map_err(|e| {
2321                    tonic::Status::unknown(
2322                        format!("Service was not ready: {}", e.into()),
2323                    )
2324                })?;
2325            let codec = tonic_prost::ProstCodec::default();
2326            let path = http::uri::PathAndQuery::from_static(
2327                "/ddl_service.DdlService/ListConnections",
2328            );
2329            let mut req = request.into_request();
2330            req.extensions_mut()
2331                .insert(GrpcMethod::new("ddl_service.DdlService", "ListConnections"));
2332            self.inner.unary(req, path, codec).await
2333        }
2334        pub async fn drop_connection(
2335            &mut self,
2336            request: impl tonic::IntoRequest<super::DropConnectionRequest>,
2337        ) -> std::result::Result<
2338            tonic::Response<super::DropConnectionResponse>,
2339            tonic::Status,
2340        > {
2341            self.inner
2342                .ready()
2343                .await
2344                .map_err(|e| {
2345                    tonic::Status::unknown(
2346                        format!("Service was not ready: {}", e.into()),
2347                    )
2348                })?;
2349            let codec = tonic_prost::ProstCodec::default();
2350            let path = http::uri::PathAndQuery::from_static(
2351                "/ddl_service.DdlService/DropConnection",
2352            );
2353            let mut req = request.into_request();
2354            req.extensions_mut()
2355                .insert(GrpcMethod::new("ddl_service.DdlService", "DropConnection"));
2356            self.inner.unary(req, path, codec).await
2357        }
2358        pub async fn get_tables(
2359            &mut self,
2360            request: impl tonic::IntoRequest<super::GetTablesRequest>,
2361        ) -> std::result::Result<
2362            tonic::Response<super::GetTablesResponse>,
2363            tonic::Status,
2364        > {
2365            self.inner
2366                .ready()
2367                .await
2368                .map_err(|e| {
2369                    tonic::Status::unknown(
2370                        format!("Service was not ready: {}", e.into()),
2371                    )
2372                })?;
2373            let codec = tonic_prost::ProstCodec::default();
2374            let path = http::uri::PathAndQuery::from_static(
2375                "/ddl_service.DdlService/GetTables",
2376            );
2377            let mut req = request.into_request();
2378            req.extensions_mut()
2379                .insert(GrpcMethod::new("ddl_service.DdlService", "GetTables"));
2380            self.inner.unary(req, path, codec).await
2381        }
2382        pub async fn wait(
2383            &mut self,
2384            request: impl tonic::IntoRequest<super::WaitRequest>,
2385        ) -> std::result::Result<tonic::Response<super::WaitResponse>, tonic::Status> {
2386            self.inner
2387                .ready()
2388                .await
2389                .map_err(|e| {
2390                    tonic::Status::unknown(
2391                        format!("Service was not ready: {}", e.into()),
2392                    )
2393                })?;
2394            let codec = tonic_prost::ProstCodec::default();
2395            let path = http::uri::PathAndQuery::from_static(
2396                "/ddl_service.DdlService/Wait",
2397            );
2398            let mut req = request.into_request();
2399            req.extensions_mut()
2400                .insert(GrpcMethod::new("ddl_service.DdlService", "Wait"));
2401            self.inner.unary(req, path, codec).await
2402        }
2403        pub async fn comment_on(
2404            &mut self,
2405            request: impl tonic::IntoRequest<super::CommentOnRequest>,
2406        ) -> std::result::Result<
2407            tonic::Response<super::CommentOnResponse>,
2408            tonic::Status,
2409        > {
2410            self.inner
2411                .ready()
2412                .await
2413                .map_err(|e| {
2414                    tonic::Status::unknown(
2415                        format!("Service was not ready: {}", e.into()),
2416                    )
2417                })?;
2418            let codec = tonic_prost::ProstCodec::default();
2419            let path = http::uri::PathAndQuery::from_static(
2420                "/ddl_service.DdlService/CommentOn",
2421            );
2422            let mut req = request.into_request();
2423            req.extensions_mut()
2424                .insert(GrpcMethod::new("ddl_service.DdlService", "CommentOn"));
2425            self.inner.unary(req, path, codec).await
2426        }
2427        pub async fn auto_schema_change(
2428            &mut self,
2429            request: impl tonic::IntoRequest<super::AutoSchemaChangeRequest>,
2430        ) -> std::result::Result<
2431            tonic::Response<super::AutoSchemaChangeResponse>,
2432            tonic::Status,
2433        > {
2434            self.inner
2435                .ready()
2436                .await
2437                .map_err(|e| {
2438                    tonic::Status::unknown(
2439                        format!("Service was not ready: {}", e.into()),
2440                    )
2441                })?;
2442            let codec = tonic_prost::ProstCodec::default();
2443            let path = http::uri::PathAndQuery::from_static(
2444                "/ddl_service.DdlService/AutoSchemaChange",
2445            );
2446            let mut req = request.into_request();
2447            req.extensions_mut()
2448                .insert(GrpcMethod::new("ddl_service.DdlService", "AutoSchemaChange"));
2449            self.inner.unary(req, path, codec).await
2450        }
2451        pub async fn alter_swap_rename(
2452            &mut self,
2453            request: impl tonic::IntoRequest<super::AlterSwapRenameRequest>,
2454        ) -> std::result::Result<
2455            tonic::Response<super::AlterSwapRenameResponse>,
2456            tonic::Status,
2457        > {
2458            self.inner
2459                .ready()
2460                .await
2461                .map_err(|e| {
2462                    tonic::Status::unknown(
2463                        format!("Service was not ready: {}", e.into()),
2464                    )
2465                })?;
2466            let codec = tonic_prost::ProstCodec::default();
2467            let path = http::uri::PathAndQuery::from_static(
2468                "/ddl_service.DdlService/AlterSwapRename",
2469            );
2470            let mut req = request.into_request();
2471            req.extensions_mut()
2472                .insert(GrpcMethod::new("ddl_service.DdlService", "AlterSwapRename"));
2473            self.inner.unary(req, path, codec).await
2474        }
2475        pub async fn alter_database_param(
2476            &mut self,
2477            request: impl tonic::IntoRequest<super::AlterDatabaseParamRequest>,
2478        ) -> std::result::Result<
2479            tonic::Response<super::AlterDatabaseParamResponse>,
2480            tonic::Status,
2481        > {
2482            self.inner
2483                .ready()
2484                .await
2485                .map_err(|e| {
2486                    tonic::Status::unknown(
2487                        format!("Service was not ready: {}", e.into()),
2488                    )
2489                })?;
2490            let codec = tonic_prost::ProstCodec::default();
2491            let path = http::uri::PathAndQuery::from_static(
2492                "/ddl_service.DdlService/AlterDatabaseParam",
2493            );
2494            let mut req = request.into_request();
2495            req.extensions_mut()
2496                .insert(GrpcMethod::new("ddl_service.DdlService", "AlterDatabaseParam"));
2497            self.inner.unary(req, path, codec).await
2498        }
2499        pub async fn compact_iceberg_table(
2500            &mut self,
2501            request: impl tonic::IntoRequest<super::CompactIcebergTableRequest>,
2502        ) -> std::result::Result<
2503            tonic::Response<super::CompactIcebergTableResponse>,
2504            tonic::Status,
2505        > {
2506            self.inner
2507                .ready()
2508                .await
2509                .map_err(|e| {
2510                    tonic::Status::unknown(
2511                        format!("Service was not ready: {}", e.into()),
2512                    )
2513                })?;
2514            let codec = tonic_prost::ProstCodec::default();
2515            let path = http::uri::PathAndQuery::from_static(
2516                "/ddl_service.DdlService/CompactIcebergTable",
2517            );
2518            let mut req = request.into_request();
2519            req.extensions_mut()
2520                .insert(
2521                    GrpcMethod::new("ddl_service.DdlService", "CompactIcebergTable"),
2522                );
2523            self.inner.unary(req, path, codec).await
2524        }
2525        pub async fn expire_iceberg_table_snapshots(
2526            &mut self,
2527            request: impl tonic::IntoRequest<super::ExpireIcebergTableSnapshotsRequest>,
2528        ) -> std::result::Result<
2529            tonic::Response<super::ExpireIcebergTableSnapshotsResponse>,
2530            tonic::Status,
2531        > {
2532            self.inner
2533                .ready()
2534                .await
2535                .map_err(|e| {
2536                    tonic::Status::unknown(
2537                        format!("Service was not ready: {}", e.into()),
2538                    )
2539                })?;
2540            let codec = tonic_prost::ProstCodec::default();
2541            let path = http::uri::PathAndQuery::from_static(
2542                "/ddl_service.DdlService/ExpireIcebergTableSnapshots",
2543            );
2544            let mut req = request.into_request();
2545            req.extensions_mut()
2546                .insert(
2547                    GrpcMethod::new(
2548                        "ddl_service.DdlService",
2549                        "ExpireIcebergTableSnapshots",
2550                    ),
2551                );
2552            self.inner.unary(req, path, codec).await
2553        }
2554        pub async fn alter_cdc_table_backfill_parallelism(
2555            &mut self,
2556            request: impl tonic::IntoRequest<
2557                super::AlterCdcTableBackfillParallelismRequest,
2558            >,
2559        ) -> std::result::Result<
2560            tonic::Response<super::AlterCdcTableBackfillParallelismResponse>,
2561            tonic::Status,
2562        > {
2563            self.inner
2564                .ready()
2565                .await
2566                .map_err(|e| {
2567                    tonic::Status::unknown(
2568                        format!("Service was not ready: {}", e.into()),
2569                    )
2570                })?;
2571            let codec = tonic_prost::ProstCodec::default();
2572            let path = http::uri::PathAndQuery::from_static(
2573                "/ddl_service.DdlService/AlterCdcTableBackfillParallelism",
2574            );
2575            let mut req = request.into_request();
2576            req.extensions_mut()
2577                .insert(
2578                    GrpcMethod::new(
2579                        "ddl_service.DdlService",
2580                        "AlterCdcTableBackfillParallelism",
2581                    ),
2582                );
2583            self.inner.unary(req, path, codec).await
2584        }
2585        pub async fn alter_streaming_job_config(
2586            &mut self,
2587            request: impl tonic::IntoRequest<super::AlterStreamingJobConfigRequest>,
2588        ) -> std::result::Result<
2589            tonic::Response<super::AlterStreamingJobConfigResponse>,
2590            tonic::Status,
2591        > {
2592            self.inner
2593                .ready()
2594                .await
2595                .map_err(|e| {
2596                    tonic::Status::unknown(
2597                        format!("Service was not ready: {}", e.into()),
2598                    )
2599                })?;
2600            let codec = tonic_prost::ProstCodec::default();
2601            let path = http::uri::PathAndQuery::from_static(
2602                "/ddl_service.DdlService/AlterStreamingJobConfig",
2603            );
2604            let mut req = request.into_request();
2605            req.extensions_mut()
2606                .insert(
2607                    GrpcMethod::new("ddl_service.DdlService", "AlterStreamingJobConfig"),
2608                );
2609            self.inner.unary(req, path, codec).await
2610        }
2611    }
2612}
2613/// Generated server implementations.
2614pub mod ddl_service_server {
2615    #![allow(
2616        unused_variables,
2617        dead_code,
2618        missing_docs,
2619        clippy::wildcard_imports,
2620        clippy::let_unit_value,
2621    )]
2622    use tonic::codegen::*;
2623    /// Generated trait containing gRPC methods that should be implemented for use with DdlServiceServer.
2624    #[async_trait]
2625    pub trait DdlService: std::marker::Send + std::marker::Sync + 'static {
2626        async fn create_database(
2627            &self,
2628            request: tonic::Request<super::CreateDatabaseRequest>,
2629        ) -> std::result::Result<
2630            tonic::Response<super::CreateDatabaseResponse>,
2631            tonic::Status,
2632        >;
2633        async fn drop_database(
2634            &self,
2635            request: tonic::Request<super::DropDatabaseRequest>,
2636        ) -> std::result::Result<
2637            tonic::Response<super::DropDatabaseResponse>,
2638            tonic::Status,
2639        >;
2640        async fn create_schema(
2641            &self,
2642            request: tonic::Request<super::CreateSchemaRequest>,
2643        ) -> std::result::Result<
2644            tonic::Response<super::CreateSchemaResponse>,
2645            tonic::Status,
2646        >;
2647        async fn drop_schema(
2648            &self,
2649            request: tonic::Request<super::DropSchemaRequest>,
2650        ) -> std::result::Result<
2651            tonic::Response<super::DropSchemaResponse>,
2652            tonic::Status,
2653        >;
2654        async fn create_source(
2655            &self,
2656            request: tonic::Request<super::CreateSourceRequest>,
2657        ) -> std::result::Result<
2658            tonic::Response<super::CreateSourceResponse>,
2659            tonic::Status,
2660        >;
2661        async fn drop_source(
2662            &self,
2663            request: tonic::Request<super::DropSourceRequest>,
2664        ) -> std::result::Result<
2665            tonic::Response<super::DropSourceResponse>,
2666            tonic::Status,
2667        >;
2668        async fn create_sink(
2669            &self,
2670            request: tonic::Request<super::CreateSinkRequest>,
2671        ) -> std::result::Result<
2672            tonic::Response<super::CreateSinkResponse>,
2673            tonic::Status,
2674        >;
2675        async fn create_subscription(
2676            &self,
2677            request: tonic::Request<super::CreateSubscriptionRequest>,
2678        ) -> std::result::Result<
2679            tonic::Response<super::CreateSubscriptionResponse>,
2680            tonic::Status,
2681        >;
2682        async fn drop_sink(
2683            &self,
2684            request: tonic::Request<super::DropSinkRequest>,
2685        ) -> std::result::Result<
2686            tonic::Response<super::DropSinkResponse>,
2687            tonic::Status,
2688        >;
2689        async fn drop_subscription(
2690            &self,
2691            request: tonic::Request<super::DropSubscriptionRequest>,
2692        ) -> std::result::Result<
2693            tonic::Response<super::DropSubscriptionResponse>,
2694            tonic::Status,
2695        >;
2696        async fn create_materialized_view(
2697            &self,
2698            request: tonic::Request<super::CreateMaterializedViewRequest>,
2699        ) -> std::result::Result<
2700            tonic::Response<super::CreateMaterializedViewResponse>,
2701            tonic::Status,
2702        >;
2703        async fn drop_materialized_view(
2704            &self,
2705            request: tonic::Request<super::DropMaterializedViewRequest>,
2706        ) -> std::result::Result<
2707            tonic::Response<super::DropMaterializedViewResponse>,
2708            tonic::Status,
2709        >;
2710        async fn create_table(
2711            &self,
2712            request: tonic::Request<super::CreateTableRequest>,
2713        ) -> std::result::Result<
2714            tonic::Response<super::CreateTableResponse>,
2715            tonic::Status,
2716        >;
2717        async fn create_iceberg_table(
2718            &self,
2719            request: tonic::Request<super::CreateIcebergTableRequest>,
2720        ) -> std::result::Result<
2721            tonic::Response<super::CreateIcebergTableResponse>,
2722            tonic::Status,
2723        >;
2724        async fn create_secret(
2725            &self,
2726            request: tonic::Request<super::CreateSecretRequest>,
2727        ) -> std::result::Result<
2728            tonic::Response<super::CreateSecretResponse>,
2729            tonic::Status,
2730        >;
2731        async fn drop_secret(
2732            &self,
2733            request: tonic::Request<super::DropSecretRequest>,
2734        ) -> std::result::Result<
2735            tonic::Response<super::DropSecretResponse>,
2736            tonic::Status,
2737        >;
2738        async fn alter_secret(
2739            &self,
2740            request: tonic::Request<super::AlterSecretRequest>,
2741        ) -> std::result::Result<
2742            tonic::Response<super::AlterSecretResponse>,
2743            tonic::Status,
2744        >;
2745        async fn alter_name(
2746            &self,
2747            request: tonic::Request<super::AlterNameRequest>,
2748        ) -> std::result::Result<
2749            tonic::Response<super::AlterNameResponse>,
2750            tonic::Status,
2751        >;
2752        async fn alter_source(
2753            &self,
2754            request: tonic::Request<super::AlterSourceRequest>,
2755        ) -> std::result::Result<
2756            tonic::Response<super::AlterSourceResponse>,
2757            tonic::Status,
2758        >;
2759        async fn reset_source(
2760            &self,
2761            request: tonic::Request<super::ResetSourceRequest>,
2762        ) -> std::result::Result<
2763            tonic::Response<super::ResetSourceResponse>,
2764            tonic::Status,
2765        >;
2766        async fn alter_owner(
2767            &self,
2768            request: tonic::Request<super::AlterOwnerRequest>,
2769        ) -> std::result::Result<
2770            tonic::Response<super::AlterOwnerResponse>,
2771            tonic::Status,
2772        >;
2773        async fn alter_subscription_retention(
2774            &self,
2775            request: tonic::Request<super::AlterSubscriptionRetentionRequest>,
2776        ) -> std::result::Result<
2777            tonic::Response<super::AlterSubscriptionRetentionResponse>,
2778            tonic::Status,
2779        >;
2780        async fn alter_set_schema(
2781            &self,
2782            request: tonic::Request<super::AlterSetSchemaRequest>,
2783        ) -> std::result::Result<
2784            tonic::Response<super::AlterSetSchemaResponse>,
2785            tonic::Status,
2786        >;
2787        async fn alter_parallelism(
2788            &self,
2789            request: tonic::Request<super::AlterParallelismRequest>,
2790        ) -> std::result::Result<
2791            tonic::Response<super::AlterParallelismResponse>,
2792            tonic::Status,
2793        >;
2794        async fn alter_backfill_parallelism(
2795            &self,
2796            request: tonic::Request<super::AlterBackfillParallelismRequest>,
2797        ) -> std::result::Result<
2798            tonic::Response<super::AlterBackfillParallelismResponse>,
2799            tonic::Status,
2800        >;
2801        async fn alter_fragment_parallelism(
2802            &self,
2803            request: tonic::Request<super::AlterFragmentParallelismRequest>,
2804        ) -> std::result::Result<
2805            tonic::Response<super::AlterFragmentParallelismResponse>,
2806            tonic::Status,
2807        >;
2808        async fn alter_resource_group(
2809            &self,
2810            request: tonic::Request<super::AlterResourceGroupRequest>,
2811        ) -> std::result::Result<
2812            tonic::Response<super::AlterResourceGroupResponse>,
2813            tonic::Status,
2814        >;
2815        async fn drop_table(
2816            &self,
2817            request: tonic::Request<super::DropTableRequest>,
2818        ) -> std::result::Result<
2819            tonic::Response<super::DropTableResponse>,
2820            tonic::Status,
2821        >;
2822        async fn risectl_list_state_tables(
2823            &self,
2824            request: tonic::Request<super::RisectlListStateTablesRequest>,
2825        ) -> std::result::Result<
2826            tonic::Response<super::RisectlListStateTablesResponse>,
2827            tonic::Status,
2828        >;
2829        async fn risectl_resume_backfill(
2830            &self,
2831            request: tonic::Request<super::RisectlResumeBackfillRequest>,
2832        ) -> std::result::Result<
2833            tonic::Response<super::RisectlResumeBackfillResponse>,
2834            tonic::Status,
2835        >;
2836        async fn create_view(
2837            &self,
2838            request: tonic::Request<super::CreateViewRequest>,
2839        ) -> std::result::Result<
2840            tonic::Response<super::CreateViewResponse>,
2841            tonic::Status,
2842        >;
2843        async fn drop_view(
2844            &self,
2845            request: tonic::Request<super::DropViewRequest>,
2846        ) -> std::result::Result<
2847            tonic::Response<super::DropViewResponse>,
2848            tonic::Status,
2849        >;
2850        async fn create_index(
2851            &self,
2852            request: tonic::Request<super::CreateIndexRequest>,
2853        ) -> std::result::Result<
2854            tonic::Response<super::CreateIndexResponse>,
2855            tonic::Status,
2856        >;
2857        async fn drop_index(
2858            &self,
2859            request: tonic::Request<super::DropIndexRequest>,
2860        ) -> std::result::Result<
2861            tonic::Response<super::DropIndexResponse>,
2862            tonic::Status,
2863        >;
2864        async fn create_function(
2865            &self,
2866            request: tonic::Request<super::CreateFunctionRequest>,
2867        ) -> std::result::Result<
2868            tonic::Response<super::CreateFunctionResponse>,
2869            tonic::Status,
2870        >;
2871        async fn drop_function(
2872            &self,
2873            request: tonic::Request<super::DropFunctionRequest>,
2874        ) -> std::result::Result<
2875            tonic::Response<super::DropFunctionResponse>,
2876            tonic::Status,
2877        >;
2878        async fn replace_job_plan(
2879            &self,
2880            request: tonic::Request<super::ReplaceJobPlanRequest>,
2881        ) -> std::result::Result<
2882            tonic::Response<super::ReplaceJobPlanResponse>,
2883            tonic::Status,
2884        >;
2885        async fn get_table(
2886            &self,
2887            request: tonic::Request<super::GetTableRequest>,
2888        ) -> std::result::Result<
2889            tonic::Response<super::GetTableResponse>,
2890            tonic::Status,
2891        >;
2892        async fn get_ddl_progress(
2893            &self,
2894            request: tonic::Request<super::GetDdlProgressRequest>,
2895        ) -> std::result::Result<
2896            tonic::Response<super::GetDdlProgressResponse>,
2897            tonic::Status,
2898        >;
2899        async fn create_connection(
2900            &self,
2901            request: tonic::Request<super::CreateConnectionRequest>,
2902        ) -> std::result::Result<
2903            tonic::Response<super::CreateConnectionResponse>,
2904            tonic::Status,
2905        >;
2906        async fn list_connections(
2907            &self,
2908            request: tonic::Request<super::ListConnectionsRequest>,
2909        ) -> std::result::Result<
2910            tonic::Response<super::ListConnectionsResponse>,
2911            tonic::Status,
2912        >;
2913        async fn drop_connection(
2914            &self,
2915            request: tonic::Request<super::DropConnectionRequest>,
2916        ) -> std::result::Result<
2917            tonic::Response<super::DropConnectionResponse>,
2918            tonic::Status,
2919        >;
2920        async fn get_tables(
2921            &self,
2922            request: tonic::Request<super::GetTablesRequest>,
2923        ) -> std::result::Result<
2924            tonic::Response<super::GetTablesResponse>,
2925            tonic::Status,
2926        >;
2927        async fn wait(
2928            &self,
2929            request: tonic::Request<super::WaitRequest>,
2930        ) -> std::result::Result<tonic::Response<super::WaitResponse>, tonic::Status>;
2931        async fn comment_on(
2932            &self,
2933            request: tonic::Request<super::CommentOnRequest>,
2934        ) -> std::result::Result<
2935            tonic::Response<super::CommentOnResponse>,
2936            tonic::Status,
2937        >;
2938        async fn auto_schema_change(
2939            &self,
2940            request: tonic::Request<super::AutoSchemaChangeRequest>,
2941        ) -> std::result::Result<
2942            tonic::Response<super::AutoSchemaChangeResponse>,
2943            tonic::Status,
2944        >;
2945        async fn alter_swap_rename(
2946            &self,
2947            request: tonic::Request<super::AlterSwapRenameRequest>,
2948        ) -> std::result::Result<
2949            tonic::Response<super::AlterSwapRenameResponse>,
2950            tonic::Status,
2951        >;
2952        async fn alter_database_param(
2953            &self,
2954            request: tonic::Request<super::AlterDatabaseParamRequest>,
2955        ) -> std::result::Result<
2956            tonic::Response<super::AlterDatabaseParamResponse>,
2957            tonic::Status,
2958        >;
2959        async fn compact_iceberg_table(
2960            &self,
2961            request: tonic::Request<super::CompactIcebergTableRequest>,
2962        ) -> std::result::Result<
2963            tonic::Response<super::CompactIcebergTableResponse>,
2964            tonic::Status,
2965        >;
2966        async fn expire_iceberg_table_snapshots(
2967            &self,
2968            request: tonic::Request<super::ExpireIcebergTableSnapshotsRequest>,
2969        ) -> std::result::Result<
2970            tonic::Response<super::ExpireIcebergTableSnapshotsResponse>,
2971            tonic::Status,
2972        >;
2973        async fn alter_cdc_table_backfill_parallelism(
2974            &self,
2975            request: tonic::Request<super::AlterCdcTableBackfillParallelismRequest>,
2976        ) -> std::result::Result<
2977            tonic::Response<super::AlterCdcTableBackfillParallelismResponse>,
2978            tonic::Status,
2979        >;
2980        async fn alter_streaming_job_config(
2981            &self,
2982            request: tonic::Request<super::AlterStreamingJobConfigRequest>,
2983        ) -> std::result::Result<
2984            tonic::Response<super::AlterStreamingJobConfigResponse>,
2985            tonic::Status,
2986        >;
2987    }
2988    #[derive(Debug)]
2989    pub struct DdlServiceServer<T> {
2990        inner: Arc<T>,
2991        accept_compression_encodings: EnabledCompressionEncodings,
2992        send_compression_encodings: EnabledCompressionEncodings,
2993        max_decoding_message_size: Option<usize>,
2994        max_encoding_message_size: Option<usize>,
2995    }
2996    impl<T> DdlServiceServer<T> {
2997        pub fn new(inner: T) -> Self {
2998            Self::from_arc(Arc::new(inner))
2999        }
3000        pub fn from_arc(inner: Arc<T>) -> Self {
3001            Self {
3002                inner,
3003                accept_compression_encodings: Default::default(),
3004                send_compression_encodings: Default::default(),
3005                max_decoding_message_size: None,
3006                max_encoding_message_size: None,
3007            }
3008        }
3009        pub fn with_interceptor<F>(
3010            inner: T,
3011            interceptor: F,
3012        ) -> InterceptedService<Self, F>
3013        where
3014            F: tonic::service::Interceptor,
3015        {
3016            InterceptedService::new(Self::new(inner), interceptor)
3017        }
3018        /// Enable decompressing requests with the given encoding.
3019        #[must_use]
3020        pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
3021            self.accept_compression_encodings.enable(encoding);
3022            self
3023        }
3024        /// Compress responses with the given encoding, if the client supports it.
3025        #[must_use]
3026        pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
3027            self.send_compression_encodings.enable(encoding);
3028            self
3029        }
3030        /// Limits the maximum size of a decoded message.
3031        ///
3032        /// Default: `4MB`
3033        #[must_use]
3034        pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
3035            self.max_decoding_message_size = Some(limit);
3036            self
3037        }
3038        /// Limits the maximum size of an encoded message.
3039        ///
3040        /// Default: `usize::MAX`
3041        #[must_use]
3042        pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
3043            self.max_encoding_message_size = Some(limit);
3044            self
3045        }
3046    }
3047    impl<T, B> tonic::codegen::Service<http::Request<B>> for DdlServiceServer<T>
3048    where
3049        T: DdlService,
3050        B: Body + std::marker::Send + 'static,
3051        B::Error: Into<StdError> + std::marker::Send + 'static,
3052    {
3053        type Response = http::Response<tonic::body::Body>;
3054        type Error = std::convert::Infallible;
3055        type Future = BoxFuture<Self::Response, Self::Error>;
3056        fn poll_ready(
3057            &mut self,
3058            _cx: &mut Context<'_>,
3059        ) -> Poll<std::result::Result<(), Self::Error>> {
3060            Poll::Ready(Ok(()))
3061        }
3062        fn call(&mut self, req: http::Request<B>) -> Self::Future {
3063            match req.uri().path() {
3064                "/ddl_service.DdlService/CreateDatabase" => {
3065                    #[allow(non_camel_case_types)]
3066                    struct CreateDatabaseSvc<T: DdlService>(pub Arc<T>);
3067                    impl<
3068                        T: DdlService,
3069                    > tonic::server::UnaryService<super::CreateDatabaseRequest>
3070                    for CreateDatabaseSvc<T> {
3071                        type Response = super::CreateDatabaseResponse;
3072                        type Future = BoxFuture<
3073                            tonic::Response<Self::Response>,
3074                            tonic::Status,
3075                        >;
3076                        fn call(
3077                            &mut self,
3078                            request: tonic::Request<super::CreateDatabaseRequest>,
3079                        ) -> Self::Future {
3080                            let inner = Arc::clone(&self.0);
3081                            let fut = async move {
3082                                <T as DdlService>::create_database(&inner, request).await
3083                            };
3084                            Box::pin(fut)
3085                        }
3086                    }
3087                    let accept_compression_encodings = self.accept_compression_encodings;
3088                    let send_compression_encodings = self.send_compression_encodings;
3089                    let max_decoding_message_size = self.max_decoding_message_size;
3090                    let max_encoding_message_size = self.max_encoding_message_size;
3091                    let inner = self.inner.clone();
3092                    let fut = async move {
3093                        let method = CreateDatabaseSvc(inner);
3094                        let codec = tonic_prost::ProstCodec::default();
3095                        let mut grpc = tonic::server::Grpc::new(codec)
3096                            .apply_compression_config(
3097                                accept_compression_encodings,
3098                                send_compression_encodings,
3099                            )
3100                            .apply_max_message_size_config(
3101                                max_decoding_message_size,
3102                                max_encoding_message_size,
3103                            );
3104                        let res = grpc.unary(method, req).await;
3105                        Ok(res)
3106                    };
3107                    Box::pin(fut)
3108                }
3109                "/ddl_service.DdlService/DropDatabase" => {
3110                    #[allow(non_camel_case_types)]
3111                    struct DropDatabaseSvc<T: DdlService>(pub Arc<T>);
3112                    impl<
3113                        T: DdlService,
3114                    > tonic::server::UnaryService<super::DropDatabaseRequest>
3115                    for DropDatabaseSvc<T> {
3116                        type Response = super::DropDatabaseResponse;
3117                        type Future = BoxFuture<
3118                            tonic::Response<Self::Response>,
3119                            tonic::Status,
3120                        >;
3121                        fn call(
3122                            &mut self,
3123                            request: tonic::Request<super::DropDatabaseRequest>,
3124                        ) -> Self::Future {
3125                            let inner = Arc::clone(&self.0);
3126                            let fut = async move {
3127                                <T as DdlService>::drop_database(&inner, request).await
3128                            };
3129                            Box::pin(fut)
3130                        }
3131                    }
3132                    let accept_compression_encodings = self.accept_compression_encodings;
3133                    let send_compression_encodings = self.send_compression_encodings;
3134                    let max_decoding_message_size = self.max_decoding_message_size;
3135                    let max_encoding_message_size = self.max_encoding_message_size;
3136                    let inner = self.inner.clone();
3137                    let fut = async move {
3138                        let method = DropDatabaseSvc(inner);
3139                        let codec = tonic_prost::ProstCodec::default();
3140                        let mut grpc = tonic::server::Grpc::new(codec)
3141                            .apply_compression_config(
3142                                accept_compression_encodings,
3143                                send_compression_encodings,
3144                            )
3145                            .apply_max_message_size_config(
3146                                max_decoding_message_size,
3147                                max_encoding_message_size,
3148                            );
3149                        let res = grpc.unary(method, req).await;
3150                        Ok(res)
3151                    };
3152                    Box::pin(fut)
3153                }
3154                "/ddl_service.DdlService/CreateSchema" => {
3155                    #[allow(non_camel_case_types)]
3156                    struct CreateSchemaSvc<T: DdlService>(pub Arc<T>);
3157                    impl<
3158                        T: DdlService,
3159                    > tonic::server::UnaryService<super::CreateSchemaRequest>
3160                    for CreateSchemaSvc<T> {
3161                        type Response = super::CreateSchemaResponse;
3162                        type Future = BoxFuture<
3163                            tonic::Response<Self::Response>,
3164                            tonic::Status,
3165                        >;
3166                        fn call(
3167                            &mut self,
3168                            request: tonic::Request<super::CreateSchemaRequest>,
3169                        ) -> Self::Future {
3170                            let inner = Arc::clone(&self.0);
3171                            let fut = async move {
3172                                <T as DdlService>::create_schema(&inner, request).await
3173                            };
3174                            Box::pin(fut)
3175                        }
3176                    }
3177                    let accept_compression_encodings = self.accept_compression_encodings;
3178                    let send_compression_encodings = self.send_compression_encodings;
3179                    let max_decoding_message_size = self.max_decoding_message_size;
3180                    let max_encoding_message_size = self.max_encoding_message_size;
3181                    let inner = self.inner.clone();
3182                    let fut = async move {
3183                        let method = CreateSchemaSvc(inner);
3184                        let codec = tonic_prost::ProstCodec::default();
3185                        let mut grpc = tonic::server::Grpc::new(codec)
3186                            .apply_compression_config(
3187                                accept_compression_encodings,
3188                                send_compression_encodings,
3189                            )
3190                            .apply_max_message_size_config(
3191                                max_decoding_message_size,
3192                                max_encoding_message_size,
3193                            );
3194                        let res = grpc.unary(method, req).await;
3195                        Ok(res)
3196                    };
3197                    Box::pin(fut)
3198                }
3199                "/ddl_service.DdlService/DropSchema" => {
3200                    #[allow(non_camel_case_types)]
3201                    struct DropSchemaSvc<T: DdlService>(pub Arc<T>);
3202                    impl<
3203                        T: DdlService,
3204                    > tonic::server::UnaryService<super::DropSchemaRequest>
3205                    for DropSchemaSvc<T> {
3206                        type Response = super::DropSchemaResponse;
3207                        type Future = BoxFuture<
3208                            tonic::Response<Self::Response>,
3209                            tonic::Status,
3210                        >;
3211                        fn call(
3212                            &mut self,
3213                            request: tonic::Request<super::DropSchemaRequest>,
3214                        ) -> Self::Future {
3215                            let inner = Arc::clone(&self.0);
3216                            let fut = async move {
3217                                <T as DdlService>::drop_schema(&inner, request).await
3218                            };
3219                            Box::pin(fut)
3220                        }
3221                    }
3222                    let accept_compression_encodings = self.accept_compression_encodings;
3223                    let send_compression_encodings = self.send_compression_encodings;
3224                    let max_decoding_message_size = self.max_decoding_message_size;
3225                    let max_encoding_message_size = self.max_encoding_message_size;
3226                    let inner = self.inner.clone();
3227                    let fut = async move {
3228                        let method = DropSchemaSvc(inner);
3229                        let codec = tonic_prost::ProstCodec::default();
3230                        let mut grpc = tonic::server::Grpc::new(codec)
3231                            .apply_compression_config(
3232                                accept_compression_encodings,
3233                                send_compression_encodings,
3234                            )
3235                            .apply_max_message_size_config(
3236                                max_decoding_message_size,
3237                                max_encoding_message_size,
3238                            );
3239                        let res = grpc.unary(method, req).await;
3240                        Ok(res)
3241                    };
3242                    Box::pin(fut)
3243                }
3244                "/ddl_service.DdlService/CreateSource" => {
3245                    #[allow(non_camel_case_types)]
3246                    struct CreateSourceSvc<T: DdlService>(pub Arc<T>);
3247                    impl<
3248                        T: DdlService,
3249                    > tonic::server::UnaryService<super::CreateSourceRequest>
3250                    for CreateSourceSvc<T> {
3251                        type Response = super::CreateSourceResponse;
3252                        type Future = BoxFuture<
3253                            tonic::Response<Self::Response>,
3254                            tonic::Status,
3255                        >;
3256                        fn call(
3257                            &mut self,
3258                            request: tonic::Request<super::CreateSourceRequest>,
3259                        ) -> Self::Future {
3260                            let inner = Arc::clone(&self.0);
3261                            let fut = async move {
3262                                <T as DdlService>::create_source(&inner, request).await
3263                            };
3264                            Box::pin(fut)
3265                        }
3266                    }
3267                    let accept_compression_encodings = self.accept_compression_encodings;
3268                    let send_compression_encodings = self.send_compression_encodings;
3269                    let max_decoding_message_size = self.max_decoding_message_size;
3270                    let max_encoding_message_size = self.max_encoding_message_size;
3271                    let inner = self.inner.clone();
3272                    let fut = async move {
3273                        let method = CreateSourceSvc(inner);
3274                        let codec = tonic_prost::ProstCodec::default();
3275                        let mut grpc = tonic::server::Grpc::new(codec)
3276                            .apply_compression_config(
3277                                accept_compression_encodings,
3278                                send_compression_encodings,
3279                            )
3280                            .apply_max_message_size_config(
3281                                max_decoding_message_size,
3282                                max_encoding_message_size,
3283                            );
3284                        let res = grpc.unary(method, req).await;
3285                        Ok(res)
3286                    };
3287                    Box::pin(fut)
3288                }
3289                "/ddl_service.DdlService/DropSource" => {
3290                    #[allow(non_camel_case_types)]
3291                    struct DropSourceSvc<T: DdlService>(pub Arc<T>);
3292                    impl<
3293                        T: DdlService,
3294                    > tonic::server::UnaryService<super::DropSourceRequest>
3295                    for DropSourceSvc<T> {
3296                        type Response = super::DropSourceResponse;
3297                        type Future = BoxFuture<
3298                            tonic::Response<Self::Response>,
3299                            tonic::Status,
3300                        >;
3301                        fn call(
3302                            &mut self,
3303                            request: tonic::Request<super::DropSourceRequest>,
3304                        ) -> Self::Future {
3305                            let inner = Arc::clone(&self.0);
3306                            let fut = async move {
3307                                <T as DdlService>::drop_source(&inner, request).await
3308                            };
3309                            Box::pin(fut)
3310                        }
3311                    }
3312                    let accept_compression_encodings = self.accept_compression_encodings;
3313                    let send_compression_encodings = self.send_compression_encodings;
3314                    let max_decoding_message_size = self.max_decoding_message_size;
3315                    let max_encoding_message_size = self.max_encoding_message_size;
3316                    let inner = self.inner.clone();
3317                    let fut = async move {
3318                        let method = DropSourceSvc(inner);
3319                        let codec = tonic_prost::ProstCodec::default();
3320                        let mut grpc = tonic::server::Grpc::new(codec)
3321                            .apply_compression_config(
3322                                accept_compression_encodings,
3323                                send_compression_encodings,
3324                            )
3325                            .apply_max_message_size_config(
3326                                max_decoding_message_size,
3327                                max_encoding_message_size,
3328                            );
3329                        let res = grpc.unary(method, req).await;
3330                        Ok(res)
3331                    };
3332                    Box::pin(fut)
3333                }
3334                "/ddl_service.DdlService/CreateSink" => {
3335                    #[allow(non_camel_case_types)]
3336                    struct CreateSinkSvc<T: DdlService>(pub Arc<T>);
3337                    impl<
3338                        T: DdlService,
3339                    > tonic::server::UnaryService<super::CreateSinkRequest>
3340                    for CreateSinkSvc<T> {
3341                        type Response = super::CreateSinkResponse;
3342                        type Future = BoxFuture<
3343                            tonic::Response<Self::Response>,
3344                            tonic::Status,
3345                        >;
3346                        fn call(
3347                            &mut self,
3348                            request: tonic::Request<super::CreateSinkRequest>,
3349                        ) -> Self::Future {
3350                            let inner = Arc::clone(&self.0);
3351                            let fut = async move {
3352                                <T as DdlService>::create_sink(&inner, request).await
3353                            };
3354                            Box::pin(fut)
3355                        }
3356                    }
3357                    let accept_compression_encodings = self.accept_compression_encodings;
3358                    let send_compression_encodings = self.send_compression_encodings;
3359                    let max_decoding_message_size = self.max_decoding_message_size;
3360                    let max_encoding_message_size = self.max_encoding_message_size;
3361                    let inner = self.inner.clone();
3362                    let fut = async move {
3363                        let method = CreateSinkSvc(inner);
3364                        let codec = tonic_prost::ProstCodec::default();
3365                        let mut grpc = tonic::server::Grpc::new(codec)
3366                            .apply_compression_config(
3367                                accept_compression_encodings,
3368                                send_compression_encodings,
3369                            )
3370                            .apply_max_message_size_config(
3371                                max_decoding_message_size,
3372                                max_encoding_message_size,
3373                            );
3374                        let res = grpc.unary(method, req).await;
3375                        Ok(res)
3376                    };
3377                    Box::pin(fut)
3378                }
3379                "/ddl_service.DdlService/CreateSubscription" => {
3380                    #[allow(non_camel_case_types)]
3381                    struct CreateSubscriptionSvc<T: DdlService>(pub Arc<T>);
3382                    impl<
3383                        T: DdlService,
3384                    > tonic::server::UnaryService<super::CreateSubscriptionRequest>
3385                    for CreateSubscriptionSvc<T> {
3386                        type Response = super::CreateSubscriptionResponse;
3387                        type Future = BoxFuture<
3388                            tonic::Response<Self::Response>,
3389                            tonic::Status,
3390                        >;
3391                        fn call(
3392                            &mut self,
3393                            request: tonic::Request<super::CreateSubscriptionRequest>,
3394                        ) -> Self::Future {
3395                            let inner = Arc::clone(&self.0);
3396                            let fut = async move {
3397                                <T as DdlService>::create_subscription(&inner, request)
3398                                    .await
3399                            };
3400                            Box::pin(fut)
3401                        }
3402                    }
3403                    let accept_compression_encodings = self.accept_compression_encodings;
3404                    let send_compression_encodings = self.send_compression_encodings;
3405                    let max_decoding_message_size = self.max_decoding_message_size;
3406                    let max_encoding_message_size = self.max_encoding_message_size;
3407                    let inner = self.inner.clone();
3408                    let fut = async move {
3409                        let method = CreateSubscriptionSvc(inner);
3410                        let codec = tonic_prost::ProstCodec::default();
3411                        let mut grpc = tonic::server::Grpc::new(codec)
3412                            .apply_compression_config(
3413                                accept_compression_encodings,
3414                                send_compression_encodings,
3415                            )
3416                            .apply_max_message_size_config(
3417                                max_decoding_message_size,
3418                                max_encoding_message_size,
3419                            );
3420                        let res = grpc.unary(method, req).await;
3421                        Ok(res)
3422                    };
3423                    Box::pin(fut)
3424                }
3425                "/ddl_service.DdlService/DropSink" => {
3426                    #[allow(non_camel_case_types)]
3427                    struct DropSinkSvc<T: DdlService>(pub Arc<T>);
3428                    impl<
3429                        T: DdlService,
3430                    > tonic::server::UnaryService<super::DropSinkRequest>
3431                    for DropSinkSvc<T> {
3432                        type Response = super::DropSinkResponse;
3433                        type Future = BoxFuture<
3434                            tonic::Response<Self::Response>,
3435                            tonic::Status,
3436                        >;
3437                        fn call(
3438                            &mut self,
3439                            request: tonic::Request<super::DropSinkRequest>,
3440                        ) -> Self::Future {
3441                            let inner = Arc::clone(&self.0);
3442                            let fut = async move {
3443                                <T as DdlService>::drop_sink(&inner, request).await
3444                            };
3445                            Box::pin(fut)
3446                        }
3447                    }
3448                    let accept_compression_encodings = self.accept_compression_encodings;
3449                    let send_compression_encodings = self.send_compression_encodings;
3450                    let max_decoding_message_size = self.max_decoding_message_size;
3451                    let max_encoding_message_size = self.max_encoding_message_size;
3452                    let inner = self.inner.clone();
3453                    let fut = async move {
3454                        let method = DropSinkSvc(inner);
3455                        let codec = tonic_prost::ProstCodec::default();
3456                        let mut grpc = tonic::server::Grpc::new(codec)
3457                            .apply_compression_config(
3458                                accept_compression_encodings,
3459                                send_compression_encodings,
3460                            )
3461                            .apply_max_message_size_config(
3462                                max_decoding_message_size,
3463                                max_encoding_message_size,
3464                            );
3465                        let res = grpc.unary(method, req).await;
3466                        Ok(res)
3467                    };
3468                    Box::pin(fut)
3469                }
3470                "/ddl_service.DdlService/DropSubscription" => {
3471                    #[allow(non_camel_case_types)]
3472                    struct DropSubscriptionSvc<T: DdlService>(pub Arc<T>);
3473                    impl<
3474                        T: DdlService,
3475                    > tonic::server::UnaryService<super::DropSubscriptionRequest>
3476                    for DropSubscriptionSvc<T> {
3477                        type Response = super::DropSubscriptionResponse;
3478                        type Future = BoxFuture<
3479                            tonic::Response<Self::Response>,
3480                            tonic::Status,
3481                        >;
3482                        fn call(
3483                            &mut self,
3484                            request: tonic::Request<super::DropSubscriptionRequest>,
3485                        ) -> Self::Future {
3486                            let inner = Arc::clone(&self.0);
3487                            let fut = async move {
3488                                <T as DdlService>::drop_subscription(&inner, request).await
3489                            };
3490                            Box::pin(fut)
3491                        }
3492                    }
3493                    let accept_compression_encodings = self.accept_compression_encodings;
3494                    let send_compression_encodings = self.send_compression_encodings;
3495                    let max_decoding_message_size = self.max_decoding_message_size;
3496                    let max_encoding_message_size = self.max_encoding_message_size;
3497                    let inner = self.inner.clone();
3498                    let fut = async move {
3499                        let method = DropSubscriptionSvc(inner);
3500                        let codec = tonic_prost::ProstCodec::default();
3501                        let mut grpc = tonic::server::Grpc::new(codec)
3502                            .apply_compression_config(
3503                                accept_compression_encodings,
3504                                send_compression_encodings,
3505                            )
3506                            .apply_max_message_size_config(
3507                                max_decoding_message_size,
3508                                max_encoding_message_size,
3509                            );
3510                        let res = grpc.unary(method, req).await;
3511                        Ok(res)
3512                    };
3513                    Box::pin(fut)
3514                }
3515                "/ddl_service.DdlService/CreateMaterializedView" => {
3516                    #[allow(non_camel_case_types)]
3517                    struct CreateMaterializedViewSvc<T: DdlService>(pub Arc<T>);
3518                    impl<
3519                        T: DdlService,
3520                    > tonic::server::UnaryService<super::CreateMaterializedViewRequest>
3521                    for CreateMaterializedViewSvc<T> {
3522                        type Response = super::CreateMaterializedViewResponse;
3523                        type Future = BoxFuture<
3524                            tonic::Response<Self::Response>,
3525                            tonic::Status,
3526                        >;
3527                        fn call(
3528                            &mut self,
3529                            request: tonic::Request<super::CreateMaterializedViewRequest>,
3530                        ) -> Self::Future {
3531                            let inner = Arc::clone(&self.0);
3532                            let fut = async move {
3533                                <T as DdlService>::create_materialized_view(&inner, request)
3534                                    .await
3535                            };
3536                            Box::pin(fut)
3537                        }
3538                    }
3539                    let accept_compression_encodings = self.accept_compression_encodings;
3540                    let send_compression_encodings = self.send_compression_encodings;
3541                    let max_decoding_message_size = self.max_decoding_message_size;
3542                    let max_encoding_message_size = self.max_encoding_message_size;
3543                    let inner = self.inner.clone();
3544                    let fut = async move {
3545                        let method = CreateMaterializedViewSvc(inner);
3546                        let codec = tonic_prost::ProstCodec::default();
3547                        let mut grpc = tonic::server::Grpc::new(codec)
3548                            .apply_compression_config(
3549                                accept_compression_encodings,
3550                                send_compression_encodings,
3551                            )
3552                            .apply_max_message_size_config(
3553                                max_decoding_message_size,
3554                                max_encoding_message_size,
3555                            );
3556                        let res = grpc.unary(method, req).await;
3557                        Ok(res)
3558                    };
3559                    Box::pin(fut)
3560                }
3561                "/ddl_service.DdlService/DropMaterializedView" => {
3562                    #[allow(non_camel_case_types)]
3563                    struct DropMaterializedViewSvc<T: DdlService>(pub Arc<T>);
3564                    impl<
3565                        T: DdlService,
3566                    > tonic::server::UnaryService<super::DropMaterializedViewRequest>
3567                    for DropMaterializedViewSvc<T> {
3568                        type Response = super::DropMaterializedViewResponse;
3569                        type Future = BoxFuture<
3570                            tonic::Response<Self::Response>,
3571                            tonic::Status,
3572                        >;
3573                        fn call(
3574                            &mut self,
3575                            request: tonic::Request<super::DropMaterializedViewRequest>,
3576                        ) -> Self::Future {
3577                            let inner = Arc::clone(&self.0);
3578                            let fut = async move {
3579                                <T as DdlService>::drop_materialized_view(&inner, request)
3580                                    .await
3581                            };
3582                            Box::pin(fut)
3583                        }
3584                    }
3585                    let accept_compression_encodings = self.accept_compression_encodings;
3586                    let send_compression_encodings = self.send_compression_encodings;
3587                    let max_decoding_message_size = self.max_decoding_message_size;
3588                    let max_encoding_message_size = self.max_encoding_message_size;
3589                    let inner = self.inner.clone();
3590                    let fut = async move {
3591                        let method = DropMaterializedViewSvc(inner);
3592                        let codec = tonic_prost::ProstCodec::default();
3593                        let mut grpc = tonic::server::Grpc::new(codec)
3594                            .apply_compression_config(
3595                                accept_compression_encodings,
3596                                send_compression_encodings,
3597                            )
3598                            .apply_max_message_size_config(
3599                                max_decoding_message_size,
3600                                max_encoding_message_size,
3601                            );
3602                        let res = grpc.unary(method, req).await;
3603                        Ok(res)
3604                    };
3605                    Box::pin(fut)
3606                }
3607                "/ddl_service.DdlService/CreateTable" => {
3608                    #[allow(non_camel_case_types)]
3609                    struct CreateTableSvc<T: DdlService>(pub Arc<T>);
3610                    impl<
3611                        T: DdlService,
3612                    > tonic::server::UnaryService<super::CreateTableRequest>
3613                    for CreateTableSvc<T> {
3614                        type Response = super::CreateTableResponse;
3615                        type Future = BoxFuture<
3616                            tonic::Response<Self::Response>,
3617                            tonic::Status,
3618                        >;
3619                        fn call(
3620                            &mut self,
3621                            request: tonic::Request<super::CreateTableRequest>,
3622                        ) -> Self::Future {
3623                            let inner = Arc::clone(&self.0);
3624                            let fut = async move {
3625                                <T as DdlService>::create_table(&inner, request).await
3626                            };
3627                            Box::pin(fut)
3628                        }
3629                    }
3630                    let accept_compression_encodings = self.accept_compression_encodings;
3631                    let send_compression_encodings = self.send_compression_encodings;
3632                    let max_decoding_message_size = self.max_decoding_message_size;
3633                    let max_encoding_message_size = self.max_encoding_message_size;
3634                    let inner = self.inner.clone();
3635                    let fut = async move {
3636                        let method = CreateTableSvc(inner);
3637                        let codec = tonic_prost::ProstCodec::default();
3638                        let mut grpc = tonic::server::Grpc::new(codec)
3639                            .apply_compression_config(
3640                                accept_compression_encodings,
3641                                send_compression_encodings,
3642                            )
3643                            .apply_max_message_size_config(
3644                                max_decoding_message_size,
3645                                max_encoding_message_size,
3646                            );
3647                        let res = grpc.unary(method, req).await;
3648                        Ok(res)
3649                    };
3650                    Box::pin(fut)
3651                }
3652                "/ddl_service.DdlService/CreateIcebergTable" => {
3653                    #[allow(non_camel_case_types)]
3654                    struct CreateIcebergTableSvc<T: DdlService>(pub Arc<T>);
3655                    impl<
3656                        T: DdlService,
3657                    > tonic::server::UnaryService<super::CreateIcebergTableRequest>
3658                    for CreateIcebergTableSvc<T> {
3659                        type Response = super::CreateIcebergTableResponse;
3660                        type Future = BoxFuture<
3661                            tonic::Response<Self::Response>,
3662                            tonic::Status,
3663                        >;
3664                        fn call(
3665                            &mut self,
3666                            request: tonic::Request<super::CreateIcebergTableRequest>,
3667                        ) -> Self::Future {
3668                            let inner = Arc::clone(&self.0);
3669                            let fut = async move {
3670                                <T as DdlService>::create_iceberg_table(&inner, request)
3671                                    .await
3672                            };
3673                            Box::pin(fut)
3674                        }
3675                    }
3676                    let accept_compression_encodings = self.accept_compression_encodings;
3677                    let send_compression_encodings = self.send_compression_encodings;
3678                    let max_decoding_message_size = self.max_decoding_message_size;
3679                    let max_encoding_message_size = self.max_encoding_message_size;
3680                    let inner = self.inner.clone();
3681                    let fut = async move {
3682                        let method = CreateIcebergTableSvc(inner);
3683                        let codec = tonic_prost::ProstCodec::default();
3684                        let mut grpc = tonic::server::Grpc::new(codec)
3685                            .apply_compression_config(
3686                                accept_compression_encodings,
3687                                send_compression_encodings,
3688                            )
3689                            .apply_max_message_size_config(
3690                                max_decoding_message_size,
3691                                max_encoding_message_size,
3692                            );
3693                        let res = grpc.unary(method, req).await;
3694                        Ok(res)
3695                    };
3696                    Box::pin(fut)
3697                }
3698                "/ddl_service.DdlService/CreateSecret" => {
3699                    #[allow(non_camel_case_types)]
3700                    struct CreateSecretSvc<T: DdlService>(pub Arc<T>);
3701                    impl<
3702                        T: DdlService,
3703                    > tonic::server::UnaryService<super::CreateSecretRequest>
3704                    for CreateSecretSvc<T> {
3705                        type Response = super::CreateSecretResponse;
3706                        type Future = BoxFuture<
3707                            tonic::Response<Self::Response>,
3708                            tonic::Status,
3709                        >;
3710                        fn call(
3711                            &mut self,
3712                            request: tonic::Request<super::CreateSecretRequest>,
3713                        ) -> Self::Future {
3714                            let inner = Arc::clone(&self.0);
3715                            let fut = async move {
3716                                <T as DdlService>::create_secret(&inner, request).await
3717                            };
3718                            Box::pin(fut)
3719                        }
3720                    }
3721                    let accept_compression_encodings = self.accept_compression_encodings;
3722                    let send_compression_encodings = self.send_compression_encodings;
3723                    let max_decoding_message_size = self.max_decoding_message_size;
3724                    let max_encoding_message_size = self.max_encoding_message_size;
3725                    let inner = self.inner.clone();
3726                    let fut = async move {
3727                        let method = CreateSecretSvc(inner);
3728                        let codec = tonic_prost::ProstCodec::default();
3729                        let mut grpc = tonic::server::Grpc::new(codec)
3730                            .apply_compression_config(
3731                                accept_compression_encodings,
3732                                send_compression_encodings,
3733                            )
3734                            .apply_max_message_size_config(
3735                                max_decoding_message_size,
3736                                max_encoding_message_size,
3737                            );
3738                        let res = grpc.unary(method, req).await;
3739                        Ok(res)
3740                    };
3741                    Box::pin(fut)
3742                }
3743                "/ddl_service.DdlService/DropSecret" => {
3744                    #[allow(non_camel_case_types)]
3745                    struct DropSecretSvc<T: DdlService>(pub Arc<T>);
3746                    impl<
3747                        T: DdlService,
3748                    > tonic::server::UnaryService<super::DropSecretRequest>
3749                    for DropSecretSvc<T> {
3750                        type Response = super::DropSecretResponse;
3751                        type Future = BoxFuture<
3752                            tonic::Response<Self::Response>,
3753                            tonic::Status,
3754                        >;
3755                        fn call(
3756                            &mut self,
3757                            request: tonic::Request<super::DropSecretRequest>,
3758                        ) -> Self::Future {
3759                            let inner = Arc::clone(&self.0);
3760                            let fut = async move {
3761                                <T as DdlService>::drop_secret(&inner, request).await
3762                            };
3763                            Box::pin(fut)
3764                        }
3765                    }
3766                    let accept_compression_encodings = self.accept_compression_encodings;
3767                    let send_compression_encodings = self.send_compression_encodings;
3768                    let max_decoding_message_size = self.max_decoding_message_size;
3769                    let max_encoding_message_size = self.max_encoding_message_size;
3770                    let inner = self.inner.clone();
3771                    let fut = async move {
3772                        let method = DropSecretSvc(inner);
3773                        let codec = tonic_prost::ProstCodec::default();
3774                        let mut grpc = tonic::server::Grpc::new(codec)
3775                            .apply_compression_config(
3776                                accept_compression_encodings,
3777                                send_compression_encodings,
3778                            )
3779                            .apply_max_message_size_config(
3780                                max_decoding_message_size,
3781                                max_encoding_message_size,
3782                            );
3783                        let res = grpc.unary(method, req).await;
3784                        Ok(res)
3785                    };
3786                    Box::pin(fut)
3787                }
3788                "/ddl_service.DdlService/AlterSecret" => {
3789                    #[allow(non_camel_case_types)]
3790                    struct AlterSecretSvc<T: DdlService>(pub Arc<T>);
3791                    impl<
3792                        T: DdlService,
3793                    > tonic::server::UnaryService<super::AlterSecretRequest>
3794                    for AlterSecretSvc<T> {
3795                        type Response = super::AlterSecretResponse;
3796                        type Future = BoxFuture<
3797                            tonic::Response<Self::Response>,
3798                            tonic::Status,
3799                        >;
3800                        fn call(
3801                            &mut self,
3802                            request: tonic::Request<super::AlterSecretRequest>,
3803                        ) -> Self::Future {
3804                            let inner = Arc::clone(&self.0);
3805                            let fut = async move {
3806                                <T as DdlService>::alter_secret(&inner, request).await
3807                            };
3808                            Box::pin(fut)
3809                        }
3810                    }
3811                    let accept_compression_encodings = self.accept_compression_encodings;
3812                    let send_compression_encodings = self.send_compression_encodings;
3813                    let max_decoding_message_size = self.max_decoding_message_size;
3814                    let max_encoding_message_size = self.max_encoding_message_size;
3815                    let inner = self.inner.clone();
3816                    let fut = async move {
3817                        let method = AlterSecretSvc(inner);
3818                        let codec = tonic_prost::ProstCodec::default();
3819                        let mut grpc = tonic::server::Grpc::new(codec)
3820                            .apply_compression_config(
3821                                accept_compression_encodings,
3822                                send_compression_encodings,
3823                            )
3824                            .apply_max_message_size_config(
3825                                max_decoding_message_size,
3826                                max_encoding_message_size,
3827                            );
3828                        let res = grpc.unary(method, req).await;
3829                        Ok(res)
3830                    };
3831                    Box::pin(fut)
3832                }
3833                "/ddl_service.DdlService/AlterName" => {
3834                    #[allow(non_camel_case_types)]
3835                    struct AlterNameSvc<T: DdlService>(pub Arc<T>);
3836                    impl<
3837                        T: DdlService,
3838                    > tonic::server::UnaryService<super::AlterNameRequest>
3839                    for AlterNameSvc<T> {
3840                        type Response = super::AlterNameResponse;
3841                        type Future = BoxFuture<
3842                            tonic::Response<Self::Response>,
3843                            tonic::Status,
3844                        >;
3845                        fn call(
3846                            &mut self,
3847                            request: tonic::Request<super::AlterNameRequest>,
3848                        ) -> Self::Future {
3849                            let inner = Arc::clone(&self.0);
3850                            let fut = async move {
3851                                <T as DdlService>::alter_name(&inner, request).await
3852                            };
3853                            Box::pin(fut)
3854                        }
3855                    }
3856                    let accept_compression_encodings = self.accept_compression_encodings;
3857                    let send_compression_encodings = self.send_compression_encodings;
3858                    let max_decoding_message_size = self.max_decoding_message_size;
3859                    let max_encoding_message_size = self.max_encoding_message_size;
3860                    let inner = self.inner.clone();
3861                    let fut = async move {
3862                        let method = AlterNameSvc(inner);
3863                        let codec = tonic_prost::ProstCodec::default();
3864                        let mut grpc = tonic::server::Grpc::new(codec)
3865                            .apply_compression_config(
3866                                accept_compression_encodings,
3867                                send_compression_encodings,
3868                            )
3869                            .apply_max_message_size_config(
3870                                max_decoding_message_size,
3871                                max_encoding_message_size,
3872                            );
3873                        let res = grpc.unary(method, req).await;
3874                        Ok(res)
3875                    };
3876                    Box::pin(fut)
3877                }
3878                "/ddl_service.DdlService/AlterSource" => {
3879                    #[allow(non_camel_case_types)]
3880                    struct AlterSourceSvc<T: DdlService>(pub Arc<T>);
3881                    impl<
3882                        T: DdlService,
3883                    > tonic::server::UnaryService<super::AlterSourceRequest>
3884                    for AlterSourceSvc<T> {
3885                        type Response = super::AlterSourceResponse;
3886                        type Future = BoxFuture<
3887                            tonic::Response<Self::Response>,
3888                            tonic::Status,
3889                        >;
3890                        fn call(
3891                            &mut self,
3892                            request: tonic::Request<super::AlterSourceRequest>,
3893                        ) -> Self::Future {
3894                            let inner = Arc::clone(&self.0);
3895                            let fut = async move {
3896                                <T as DdlService>::alter_source(&inner, request).await
3897                            };
3898                            Box::pin(fut)
3899                        }
3900                    }
3901                    let accept_compression_encodings = self.accept_compression_encodings;
3902                    let send_compression_encodings = self.send_compression_encodings;
3903                    let max_decoding_message_size = self.max_decoding_message_size;
3904                    let max_encoding_message_size = self.max_encoding_message_size;
3905                    let inner = self.inner.clone();
3906                    let fut = async move {
3907                        let method = AlterSourceSvc(inner);
3908                        let codec = tonic_prost::ProstCodec::default();
3909                        let mut grpc = tonic::server::Grpc::new(codec)
3910                            .apply_compression_config(
3911                                accept_compression_encodings,
3912                                send_compression_encodings,
3913                            )
3914                            .apply_max_message_size_config(
3915                                max_decoding_message_size,
3916                                max_encoding_message_size,
3917                            );
3918                        let res = grpc.unary(method, req).await;
3919                        Ok(res)
3920                    };
3921                    Box::pin(fut)
3922                }
3923                "/ddl_service.DdlService/ResetSource" => {
3924                    #[allow(non_camel_case_types)]
3925                    struct ResetSourceSvc<T: DdlService>(pub Arc<T>);
3926                    impl<
3927                        T: DdlService,
3928                    > tonic::server::UnaryService<super::ResetSourceRequest>
3929                    for ResetSourceSvc<T> {
3930                        type Response = super::ResetSourceResponse;
3931                        type Future = BoxFuture<
3932                            tonic::Response<Self::Response>,
3933                            tonic::Status,
3934                        >;
3935                        fn call(
3936                            &mut self,
3937                            request: tonic::Request<super::ResetSourceRequest>,
3938                        ) -> Self::Future {
3939                            let inner = Arc::clone(&self.0);
3940                            let fut = async move {
3941                                <T as DdlService>::reset_source(&inner, request).await
3942                            };
3943                            Box::pin(fut)
3944                        }
3945                    }
3946                    let accept_compression_encodings = self.accept_compression_encodings;
3947                    let send_compression_encodings = self.send_compression_encodings;
3948                    let max_decoding_message_size = self.max_decoding_message_size;
3949                    let max_encoding_message_size = self.max_encoding_message_size;
3950                    let inner = self.inner.clone();
3951                    let fut = async move {
3952                        let method = ResetSourceSvc(inner);
3953                        let codec = tonic_prost::ProstCodec::default();
3954                        let mut grpc = tonic::server::Grpc::new(codec)
3955                            .apply_compression_config(
3956                                accept_compression_encodings,
3957                                send_compression_encodings,
3958                            )
3959                            .apply_max_message_size_config(
3960                                max_decoding_message_size,
3961                                max_encoding_message_size,
3962                            );
3963                        let res = grpc.unary(method, req).await;
3964                        Ok(res)
3965                    };
3966                    Box::pin(fut)
3967                }
3968                "/ddl_service.DdlService/AlterOwner" => {
3969                    #[allow(non_camel_case_types)]
3970                    struct AlterOwnerSvc<T: DdlService>(pub Arc<T>);
3971                    impl<
3972                        T: DdlService,
3973                    > tonic::server::UnaryService<super::AlterOwnerRequest>
3974                    for AlterOwnerSvc<T> {
3975                        type Response = super::AlterOwnerResponse;
3976                        type Future = BoxFuture<
3977                            tonic::Response<Self::Response>,
3978                            tonic::Status,
3979                        >;
3980                        fn call(
3981                            &mut self,
3982                            request: tonic::Request<super::AlterOwnerRequest>,
3983                        ) -> Self::Future {
3984                            let inner = Arc::clone(&self.0);
3985                            let fut = async move {
3986                                <T as DdlService>::alter_owner(&inner, request).await
3987                            };
3988                            Box::pin(fut)
3989                        }
3990                    }
3991                    let accept_compression_encodings = self.accept_compression_encodings;
3992                    let send_compression_encodings = self.send_compression_encodings;
3993                    let max_decoding_message_size = self.max_decoding_message_size;
3994                    let max_encoding_message_size = self.max_encoding_message_size;
3995                    let inner = self.inner.clone();
3996                    let fut = async move {
3997                        let method = AlterOwnerSvc(inner);
3998                        let codec = tonic_prost::ProstCodec::default();
3999                        let mut grpc = tonic::server::Grpc::new(codec)
4000                            .apply_compression_config(
4001                                accept_compression_encodings,
4002                                send_compression_encodings,
4003                            )
4004                            .apply_max_message_size_config(
4005                                max_decoding_message_size,
4006                                max_encoding_message_size,
4007                            );
4008                        let res = grpc.unary(method, req).await;
4009                        Ok(res)
4010                    };
4011                    Box::pin(fut)
4012                }
4013                "/ddl_service.DdlService/AlterSubscriptionRetention" => {
4014                    #[allow(non_camel_case_types)]
4015                    struct AlterSubscriptionRetentionSvc<T: DdlService>(pub Arc<T>);
4016                    impl<
4017                        T: DdlService,
4018                    > tonic::server::UnaryService<
4019                        super::AlterSubscriptionRetentionRequest,
4020                    > for AlterSubscriptionRetentionSvc<T> {
4021                        type Response = super::AlterSubscriptionRetentionResponse;
4022                        type Future = BoxFuture<
4023                            tonic::Response<Self::Response>,
4024                            tonic::Status,
4025                        >;
4026                        fn call(
4027                            &mut self,
4028                            request: tonic::Request<
4029                                super::AlterSubscriptionRetentionRequest,
4030                            >,
4031                        ) -> Self::Future {
4032                            let inner = Arc::clone(&self.0);
4033                            let fut = async move {
4034                                <T as DdlService>::alter_subscription_retention(
4035                                        &inner,
4036                                        request,
4037                                    )
4038                                    .await
4039                            };
4040                            Box::pin(fut)
4041                        }
4042                    }
4043                    let accept_compression_encodings = self.accept_compression_encodings;
4044                    let send_compression_encodings = self.send_compression_encodings;
4045                    let max_decoding_message_size = self.max_decoding_message_size;
4046                    let max_encoding_message_size = self.max_encoding_message_size;
4047                    let inner = self.inner.clone();
4048                    let fut = async move {
4049                        let method = AlterSubscriptionRetentionSvc(inner);
4050                        let codec = tonic_prost::ProstCodec::default();
4051                        let mut grpc = tonic::server::Grpc::new(codec)
4052                            .apply_compression_config(
4053                                accept_compression_encodings,
4054                                send_compression_encodings,
4055                            )
4056                            .apply_max_message_size_config(
4057                                max_decoding_message_size,
4058                                max_encoding_message_size,
4059                            );
4060                        let res = grpc.unary(method, req).await;
4061                        Ok(res)
4062                    };
4063                    Box::pin(fut)
4064                }
4065                "/ddl_service.DdlService/AlterSetSchema" => {
4066                    #[allow(non_camel_case_types)]
4067                    struct AlterSetSchemaSvc<T: DdlService>(pub Arc<T>);
4068                    impl<
4069                        T: DdlService,
4070                    > tonic::server::UnaryService<super::AlterSetSchemaRequest>
4071                    for AlterSetSchemaSvc<T> {
4072                        type Response = super::AlterSetSchemaResponse;
4073                        type Future = BoxFuture<
4074                            tonic::Response<Self::Response>,
4075                            tonic::Status,
4076                        >;
4077                        fn call(
4078                            &mut self,
4079                            request: tonic::Request<super::AlterSetSchemaRequest>,
4080                        ) -> Self::Future {
4081                            let inner = Arc::clone(&self.0);
4082                            let fut = async move {
4083                                <T as DdlService>::alter_set_schema(&inner, request).await
4084                            };
4085                            Box::pin(fut)
4086                        }
4087                    }
4088                    let accept_compression_encodings = self.accept_compression_encodings;
4089                    let send_compression_encodings = self.send_compression_encodings;
4090                    let max_decoding_message_size = self.max_decoding_message_size;
4091                    let max_encoding_message_size = self.max_encoding_message_size;
4092                    let inner = self.inner.clone();
4093                    let fut = async move {
4094                        let method = AlterSetSchemaSvc(inner);
4095                        let codec = tonic_prost::ProstCodec::default();
4096                        let mut grpc = tonic::server::Grpc::new(codec)
4097                            .apply_compression_config(
4098                                accept_compression_encodings,
4099                                send_compression_encodings,
4100                            )
4101                            .apply_max_message_size_config(
4102                                max_decoding_message_size,
4103                                max_encoding_message_size,
4104                            );
4105                        let res = grpc.unary(method, req).await;
4106                        Ok(res)
4107                    };
4108                    Box::pin(fut)
4109                }
4110                "/ddl_service.DdlService/AlterParallelism" => {
4111                    #[allow(non_camel_case_types)]
4112                    struct AlterParallelismSvc<T: DdlService>(pub Arc<T>);
4113                    impl<
4114                        T: DdlService,
4115                    > tonic::server::UnaryService<super::AlterParallelismRequest>
4116                    for AlterParallelismSvc<T> {
4117                        type Response = super::AlterParallelismResponse;
4118                        type Future = BoxFuture<
4119                            tonic::Response<Self::Response>,
4120                            tonic::Status,
4121                        >;
4122                        fn call(
4123                            &mut self,
4124                            request: tonic::Request<super::AlterParallelismRequest>,
4125                        ) -> Self::Future {
4126                            let inner = Arc::clone(&self.0);
4127                            let fut = async move {
4128                                <T as DdlService>::alter_parallelism(&inner, request).await
4129                            };
4130                            Box::pin(fut)
4131                        }
4132                    }
4133                    let accept_compression_encodings = self.accept_compression_encodings;
4134                    let send_compression_encodings = self.send_compression_encodings;
4135                    let max_decoding_message_size = self.max_decoding_message_size;
4136                    let max_encoding_message_size = self.max_encoding_message_size;
4137                    let inner = self.inner.clone();
4138                    let fut = async move {
4139                        let method = AlterParallelismSvc(inner);
4140                        let codec = tonic_prost::ProstCodec::default();
4141                        let mut grpc = tonic::server::Grpc::new(codec)
4142                            .apply_compression_config(
4143                                accept_compression_encodings,
4144                                send_compression_encodings,
4145                            )
4146                            .apply_max_message_size_config(
4147                                max_decoding_message_size,
4148                                max_encoding_message_size,
4149                            );
4150                        let res = grpc.unary(method, req).await;
4151                        Ok(res)
4152                    };
4153                    Box::pin(fut)
4154                }
4155                "/ddl_service.DdlService/AlterBackfillParallelism" => {
4156                    #[allow(non_camel_case_types)]
4157                    struct AlterBackfillParallelismSvc<T: DdlService>(pub Arc<T>);
4158                    impl<
4159                        T: DdlService,
4160                    > tonic::server::UnaryService<super::AlterBackfillParallelismRequest>
4161                    for AlterBackfillParallelismSvc<T> {
4162                        type Response = super::AlterBackfillParallelismResponse;
4163                        type Future = BoxFuture<
4164                            tonic::Response<Self::Response>,
4165                            tonic::Status,
4166                        >;
4167                        fn call(
4168                            &mut self,
4169                            request: tonic::Request<
4170                                super::AlterBackfillParallelismRequest,
4171                            >,
4172                        ) -> Self::Future {
4173                            let inner = Arc::clone(&self.0);
4174                            let fut = async move {
4175                                <T as DdlService>::alter_backfill_parallelism(
4176                                        &inner,
4177                                        request,
4178                                    )
4179                                    .await
4180                            };
4181                            Box::pin(fut)
4182                        }
4183                    }
4184                    let accept_compression_encodings = self.accept_compression_encodings;
4185                    let send_compression_encodings = self.send_compression_encodings;
4186                    let max_decoding_message_size = self.max_decoding_message_size;
4187                    let max_encoding_message_size = self.max_encoding_message_size;
4188                    let inner = self.inner.clone();
4189                    let fut = async move {
4190                        let method = AlterBackfillParallelismSvc(inner);
4191                        let codec = tonic_prost::ProstCodec::default();
4192                        let mut grpc = tonic::server::Grpc::new(codec)
4193                            .apply_compression_config(
4194                                accept_compression_encodings,
4195                                send_compression_encodings,
4196                            )
4197                            .apply_max_message_size_config(
4198                                max_decoding_message_size,
4199                                max_encoding_message_size,
4200                            );
4201                        let res = grpc.unary(method, req).await;
4202                        Ok(res)
4203                    };
4204                    Box::pin(fut)
4205                }
4206                "/ddl_service.DdlService/AlterFragmentParallelism" => {
4207                    #[allow(non_camel_case_types)]
4208                    struct AlterFragmentParallelismSvc<T: DdlService>(pub Arc<T>);
4209                    impl<
4210                        T: DdlService,
4211                    > tonic::server::UnaryService<super::AlterFragmentParallelismRequest>
4212                    for AlterFragmentParallelismSvc<T> {
4213                        type Response = super::AlterFragmentParallelismResponse;
4214                        type Future = BoxFuture<
4215                            tonic::Response<Self::Response>,
4216                            tonic::Status,
4217                        >;
4218                        fn call(
4219                            &mut self,
4220                            request: tonic::Request<
4221                                super::AlterFragmentParallelismRequest,
4222                            >,
4223                        ) -> Self::Future {
4224                            let inner = Arc::clone(&self.0);
4225                            let fut = async move {
4226                                <T as DdlService>::alter_fragment_parallelism(
4227                                        &inner,
4228                                        request,
4229                                    )
4230                                    .await
4231                            };
4232                            Box::pin(fut)
4233                        }
4234                    }
4235                    let accept_compression_encodings = self.accept_compression_encodings;
4236                    let send_compression_encodings = self.send_compression_encodings;
4237                    let max_decoding_message_size = self.max_decoding_message_size;
4238                    let max_encoding_message_size = self.max_encoding_message_size;
4239                    let inner = self.inner.clone();
4240                    let fut = async move {
4241                        let method = AlterFragmentParallelismSvc(inner);
4242                        let codec = tonic_prost::ProstCodec::default();
4243                        let mut grpc = tonic::server::Grpc::new(codec)
4244                            .apply_compression_config(
4245                                accept_compression_encodings,
4246                                send_compression_encodings,
4247                            )
4248                            .apply_max_message_size_config(
4249                                max_decoding_message_size,
4250                                max_encoding_message_size,
4251                            );
4252                        let res = grpc.unary(method, req).await;
4253                        Ok(res)
4254                    };
4255                    Box::pin(fut)
4256                }
4257                "/ddl_service.DdlService/AlterResourceGroup" => {
4258                    #[allow(non_camel_case_types)]
4259                    struct AlterResourceGroupSvc<T: DdlService>(pub Arc<T>);
4260                    impl<
4261                        T: DdlService,
4262                    > tonic::server::UnaryService<super::AlterResourceGroupRequest>
4263                    for AlterResourceGroupSvc<T> {
4264                        type Response = super::AlterResourceGroupResponse;
4265                        type Future = BoxFuture<
4266                            tonic::Response<Self::Response>,
4267                            tonic::Status,
4268                        >;
4269                        fn call(
4270                            &mut self,
4271                            request: tonic::Request<super::AlterResourceGroupRequest>,
4272                        ) -> Self::Future {
4273                            let inner = Arc::clone(&self.0);
4274                            let fut = async move {
4275                                <T as DdlService>::alter_resource_group(&inner, request)
4276                                    .await
4277                            };
4278                            Box::pin(fut)
4279                        }
4280                    }
4281                    let accept_compression_encodings = self.accept_compression_encodings;
4282                    let send_compression_encodings = self.send_compression_encodings;
4283                    let max_decoding_message_size = self.max_decoding_message_size;
4284                    let max_encoding_message_size = self.max_encoding_message_size;
4285                    let inner = self.inner.clone();
4286                    let fut = async move {
4287                        let method = AlterResourceGroupSvc(inner);
4288                        let codec = tonic_prost::ProstCodec::default();
4289                        let mut grpc = tonic::server::Grpc::new(codec)
4290                            .apply_compression_config(
4291                                accept_compression_encodings,
4292                                send_compression_encodings,
4293                            )
4294                            .apply_max_message_size_config(
4295                                max_decoding_message_size,
4296                                max_encoding_message_size,
4297                            );
4298                        let res = grpc.unary(method, req).await;
4299                        Ok(res)
4300                    };
4301                    Box::pin(fut)
4302                }
4303                "/ddl_service.DdlService/DropTable" => {
4304                    #[allow(non_camel_case_types)]
4305                    struct DropTableSvc<T: DdlService>(pub Arc<T>);
4306                    impl<
4307                        T: DdlService,
4308                    > tonic::server::UnaryService<super::DropTableRequest>
4309                    for DropTableSvc<T> {
4310                        type Response = super::DropTableResponse;
4311                        type Future = BoxFuture<
4312                            tonic::Response<Self::Response>,
4313                            tonic::Status,
4314                        >;
4315                        fn call(
4316                            &mut self,
4317                            request: tonic::Request<super::DropTableRequest>,
4318                        ) -> Self::Future {
4319                            let inner = Arc::clone(&self.0);
4320                            let fut = async move {
4321                                <T as DdlService>::drop_table(&inner, request).await
4322                            };
4323                            Box::pin(fut)
4324                        }
4325                    }
4326                    let accept_compression_encodings = self.accept_compression_encodings;
4327                    let send_compression_encodings = self.send_compression_encodings;
4328                    let max_decoding_message_size = self.max_decoding_message_size;
4329                    let max_encoding_message_size = self.max_encoding_message_size;
4330                    let inner = self.inner.clone();
4331                    let fut = async move {
4332                        let method = DropTableSvc(inner);
4333                        let codec = tonic_prost::ProstCodec::default();
4334                        let mut grpc = tonic::server::Grpc::new(codec)
4335                            .apply_compression_config(
4336                                accept_compression_encodings,
4337                                send_compression_encodings,
4338                            )
4339                            .apply_max_message_size_config(
4340                                max_decoding_message_size,
4341                                max_encoding_message_size,
4342                            );
4343                        let res = grpc.unary(method, req).await;
4344                        Ok(res)
4345                    };
4346                    Box::pin(fut)
4347                }
4348                "/ddl_service.DdlService/RisectlListStateTables" => {
4349                    #[allow(non_camel_case_types)]
4350                    struct RisectlListStateTablesSvc<T: DdlService>(pub Arc<T>);
4351                    impl<
4352                        T: DdlService,
4353                    > tonic::server::UnaryService<super::RisectlListStateTablesRequest>
4354                    for RisectlListStateTablesSvc<T> {
4355                        type Response = super::RisectlListStateTablesResponse;
4356                        type Future = BoxFuture<
4357                            tonic::Response<Self::Response>,
4358                            tonic::Status,
4359                        >;
4360                        fn call(
4361                            &mut self,
4362                            request: tonic::Request<super::RisectlListStateTablesRequest>,
4363                        ) -> Self::Future {
4364                            let inner = Arc::clone(&self.0);
4365                            let fut = async move {
4366                                <T as DdlService>::risectl_list_state_tables(
4367                                        &inner,
4368                                        request,
4369                                    )
4370                                    .await
4371                            };
4372                            Box::pin(fut)
4373                        }
4374                    }
4375                    let accept_compression_encodings = self.accept_compression_encodings;
4376                    let send_compression_encodings = self.send_compression_encodings;
4377                    let max_decoding_message_size = self.max_decoding_message_size;
4378                    let max_encoding_message_size = self.max_encoding_message_size;
4379                    let inner = self.inner.clone();
4380                    let fut = async move {
4381                        let method = RisectlListStateTablesSvc(inner);
4382                        let codec = tonic_prost::ProstCodec::default();
4383                        let mut grpc = tonic::server::Grpc::new(codec)
4384                            .apply_compression_config(
4385                                accept_compression_encodings,
4386                                send_compression_encodings,
4387                            )
4388                            .apply_max_message_size_config(
4389                                max_decoding_message_size,
4390                                max_encoding_message_size,
4391                            );
4392                        let res = grpc.unary(method, req).await;
4393                        Ok(res)
4394                    };
4395                    Box::pin(fut)
4396                }
4397                "/ddl_service.DdlService/RisectlResumeBackfill" => {
4398                    #[allow(non_camel_case_types)]
4399                    struct RisectlResumeBackfillSvc<T: DdlService>(pub Arc<T>);
4400                    impl<
4401                        T: DdlService,
4402                    > tonic::server::UnaryService<super::RisectlResumeBackfillRequest>
4403                    for RisectlResumeBackfillSvc<T> {
4404                        type Response = super::RisectlResumeBackfillResponse;
4405                        type Future = BoxFuture<
4406                            tonic::Response<Self::Response>,
4407                            tonic::Status,
4408                        >;
4409                        fn call(
4410                            &mut self,
4411                            request: tonic::Request<super::RisectlResumeBackfillRequest>,
4412                        ) -> Self::Future {
4413                            let inner = Arc::clone(&self.0);
4414                            let fut = async move {
4415                                <T as DdlService>::risectl_resume_backfill(&inner, request)
4416                                    .await
4417                            };
4418                            Box::pin(fut)
4419                        }
4420                    }
4421                    let accept_compression_encodings = self.accept_compression_encodings;
4422                    let send_compression_encodings = self.send_compression_encodings;
4423                    let max_decoding_message_size = self.max_decoding_message_size;
4424                    let max_encoding_message_size = self.max_encoding_message_size;
4425                    let inner = self.inner.clone();
4426                    let fut = async move {
4427                        let method = RisectlResumeBackfillSvc(inner);
4428                        let codec = tonic_prost::ProstCodec::default();
4429                        let mut grpc = tonic::server::Grpc::new(codec)
4430                            .apply_compression_config(
4431                                accept_compression_encodings,
4432                                send_compression_encodings,
4433                            )
4434                            .apply_max_message_size_config(
4435                                max_decoding_message_size,
4436                                max_encoding_message_size,
4437                            );
4438                        let res = grpc.unary(method, req).await;
4439                        Ok(res)
4440                    };
4441                    Box::pin(fut)
4442                }
4443                "/ddl_service.DdlService/CreateView" => {
4444                    #[allow(non_camel_case_types)]
4445                    struct CreateViewSvc<T: DdlService>(pub Arc<T>);
4446                    impl<
4447                        T: DdlService,
4448                    > tonic::server::UnaryService<super::CreateViewRequest>
4449                    for CreateViewSvc<T> {
4450                        type Response = super::CreateViewResponse;
4451                        type Future = BoxFuture<
4452                            tonic::Response<Self::Response>,
4453                            tonic::Status,
4454                        >;
4455                        fn call(
4456                            &mut self,
4457                            request: tonic::Request<super::CreateViewRequest>,
4458                        ) -> Self::Future {
4459                            let inner = Arc::clone(&self.0);
4460                            let fut = async move {
4461                                <T as DdlService>::create_view(&inner, request).await
4462                            };
4463                            Box::pin(fut)
4464                        }
4465                    }
4466                    let accept_compression_encodings = self.accept_compression_encodings;
4467                    let send_compression_encodings = self.send_compression_encodings;
4468                    let max_decoding_message_size = self.max_decoding_message_size;
4469                    let max_encoding_message_size = self.max_encoding_message_size;
4470                    let inner = self.inner.clone();
4471                    let fut = async move {
4472                        let method = CreateViewSvc(inner);
4473                        let codec = tonic_prost::ProstCodec::default();
4474                        let mut grpc = tonic::server::Grpc::new(codec)
4475                            .apply_compression_config(
4476                                accept_compression_encodings,
4477                                send_compression_encodings,
4478                            )
4479                            .apply_max_message_size_config(
4480                                max_decoding_message_size,
4481                                max_encoding_message_size,
4482                            );
4483                        let res = grpc.unary(method, req).await;
4484                        Ok(res)
4485                    };
4486                    Box::pin(fut)
4487                }
4488                "/ddl_service.DdlService/DropView" => {
4489                    #[allow(non_camel_case_types)]
4490                    struct DropViewSvc<T: DdlService>(pub Arc<T>);
4491                    impl<
4492                        T: DdlService,
4493                    > tonic::server::UnaryService<super::DropViewRequest>
4494                    for DropViewSvc<T> {
4495                        type Response = super::DropViewResponse;
4496                        type Future = BoxFuture<
4497                            tonic::Response<Self::Response>,
4498                            tonic::Status,
4499                        >;
4500                        fn call(
4501                            &mut self,
4502                            request: tonic::Request<super::DropViewRequest>,
4503                        ) -> Self::Future {
4504                            let inner = Arc::clone(&self.0);
4505                            let fut = async move {
4506                                <T as DdlService>::drop_view(&inner, request).await
4507                            };
4508                            Box::pin(fut)
4509                        }
4510                    }
4511                    let accept_compression_encodings = self.accept_compression_encodings;
4512                    let send_compression_encodings = self.send_compression_encodings;
4513                    let max_decoding_message_size = self.max_decoding_message_size;
4514                    let max_encoding_message_size = self.max_encoding_message_size;
4515                    let inner = self.inner.clone();
4516                    let fut = async move {
4517                        let method = DropViewSvc(inner);
4518                        let codec = tonic_prost::ProstCodec::default();
4519                        let mut grpc = tonic::server::Grpc::new(codec)
4520                            .apply_compression_config(
4521                                accept_compression_encodings,
4522                                send_compression_encodings,
4523                            )
4524                            .apply_max_message_size_config(
4525                                max_decoding_message_size,
4526                                max_encoding_message_size,
4527                            );
4528                        let res = grpc.unary(method, req).await;
4529                        Ok(res)
4530                    };
4531                    Box::pin(fut)
4532                }
4533                "/ddl_service.DdlService/CreateIndex" => {
4534                    #[allow(non_camel_case_types)]
4535                    struct CreateIndexSvc<T: DdlService>(pub Arc<T>);
4536                    impl<
4537                        T: DdlService,
4538                    > tonic::server::UnaryService<super::CreateIndexRequest>
4539                    for CreateIndexSvc<T> {
4540                        type Response = super::CreateIndexResponse;
4541                        type Future = BoxFuture<
4542                            tonic::Response<Self::Response>,
4543                            tonic::Status,
4544                        >;
4545                        fn call(
4546                            &mut self,
4547                            request: tonic::Request<super::CreateIndexRequest>,
4548                        ) -> Self::Future {
4549                            let inner = Arc::clone(&self.0);
4550                            let fut = async move {
4551                                <T as DdlService>::create_index(&inner, request).await
4552                            };
4553                            Box::pin(fut)
4554                        }
4555                    }
4556                    let accept_compression_encodings = self.accept_compression_encodings;
4557                    let send_compression_encodings = self.send_compression_encodings;
4558                    let max_decoding_message_size = self.max_decoding_message_size;
4559                    let max_encoding_message_size = self.max_encoding_message_size;
4560                    let inner = self.inner.clone();
4561                    let fut = async move {
4562                        let method = CreateIndexSvc(inner);
4563                        let codec = tonic_prost::ProstCodec::default();
4564                        let mut grpc = tonic::server::Grpc::new(codec)
4565                            .apply_compression_config(
4566                                accept_compression_encodings,
4567                                send_compression_encodings,
4568                            )
4569                            .apply_max_message_size_config(
4570                                max_decoding_message_size,
4571                                max_encoding_message_size,
4572                            );
4573                        let res = grpc.unary(method, req).await;
4574                        Ok(res)
4575                    };
4576                    Box::pin(fut)
4577                }
4578                "/ddl_service.DdlService/DropIndex" => {
4579                    #[allow(non_camel_case_types)]
4580                    struct DropIndexSvc<T: DdlService>(pub Arc<T>);
4581                    impl<
4582                        T: DdlService,
4583                    > tonic::server::UnaryService<super::DropIndexRequest>
4584                    for DropIndexSvc<T> {
4585                        type Response = super::DropIndexResponse;
4586                        type Future = BoxFuture<
4587                            tonic::Response<Self::Response>,
4588                            tonic::Status,
4589                        >;
4590                        fn call(
4591                            &mut self,
4592                            request: tonic::Request<super::DropIndexRequest>,
4593                        ) -> Self::Future {
4594                            let inner = Arc::clone(&self.0);
4595                            let fut = async move {
4596                                <T as DdlService>::drop_index(&inner, request).await
4597                            };
4598                            Box::pin(fut)
4599                        }
4600                    }
4601                    let accept_compression_encodings = self.accept_compression_encodings;
4602                    let send_compression_encodings = self.send_compression_encodings;
4603                    let max_decoding_message_size = self.max_decoding_message_size;
4604                    let max_encoding_message_size = self.max_encoding_message_size;
4605                    let inner = self.inner.clone();
4606                    let fut = async move {
4607                        let method = DropIndexSvc(inner);
4608                        let codec = tonic_prost::ProstCodec::default();
4609                        let mut grpc = tonic::server::Grpc::new(codec)
4610                            .apply_compression_config(
4611                                accept_compression_encodings,
4612                                send_compression_encodings,
4613                            )
4614                            .apply_max_message_size_config(
4615                                max_decoding_message_size,
4616                                max_encoding_message_size,
4617                            );
4618                        let res = grpc.unary(method, req).await;
4619                        Ok(res)
4620                    };
4621                    Box::pin(fut)
4622                }
4623                "/ddl_service.DdlService/CreateFunction" => {
4624                    #[allow(non_camel_case_types)]
4625                    struct CreateFunctionSvc<T: DdlService>(pub Arc<T>);
4626                    impl<
4627                        T: DdlService,
4628                    > tonic::server::UnaryService<super::CreateFunctionRequest>
4629                    for CreateFunctionSvc<T> {
4630                        type Response = super::CreateFunctionResponse;
4631                        type Future = BoxFuture<
4632                            tonic::Response<Self::Response>,
4633                            tonic::Status,
4634                        >;
4635                        fn call(
4636                            &mut self,
4637                            request: tonic::Request<super::CreateFunctionRequest>,
4638                        ) -> Self::Future {
4639                            let inner = Arc::clone(&self.0);
4640                            let fut = async move {
4641                                <T as DdlService>::create_function(&inner, request).await
4642                            };
4643                            Box::pin(fut)
4644                        }
4645                    }
4646                    let accept_compression_encodings = self.accept_compression_encodings;
4647                    let send_compression_encodings = self.send_compression_encodings;
4648                    let max_decoding_message_size = self.max_decoding_message_size;
4649                    let max_encoding_message_size = self.max_encoding_message_size;
4650                    let inner = self.inner.clone();
4651                    let fut = async move {
4652                        let method = CreateFunctionSvc(inner);
4653                        let codec = tonic_prost::ProstCodec::default();
4654                        let mut grpc = tonic::server::Grpc::new(codec)
4655                            .apply_compression_config(
4656                                accept_compression_encodings,
4657                                send_compression_encodings,
4658                            )
4659                            .apply_max_message_size_config(
4660                                max_decoding_message_size,
4661                                max_encoding_message_size,
4662                            );
4663                        let res = grpc.unary(method, req).await;
4664                        Ok(res)
4665                    };
4666                    Box::pin(fut)
4667                }
4668                "/ddl_service.DdlService/DropFunction" => {
4669                    #[allow(non_camel_case_types)]
4670                    struct DropFunctionSvc<T: DdlService>(pub Arc<T>);
4671                    impl<
4672                        T: DdlService,
4673                    > tonic::server::UnaryService<super::DropFunctionRequest>
4674                    for DropFunctionSvc<T> {
4675                        type Response = super::DropFunctionResponse;
4676                        type Future = BoxFuture<
4677                            tonic::Response<Self::Response>,
4678                            tonic::Status,
4679                        >;
4680                        fn call(
4681                            &mut self,
4682                            request: tonic::Request<super::DropFunctionRequest>,
4683                        ) -> Self::Future {
4684                            let inner = Arc::clone(&self.0);
4685                            let fut = async move {
4686                                <T as DdlService>::drop_function(&inner, request).await
4687                            };
4688                            Box::pin(fut)
4689                        }
4690                    }
4691                    let accept_compression_encodings = self.accept_compression_encodings;
4692                    let send_compression_encodings = self.send_compression_encodings;
4693                    let max_decoding_message_size = self.max_decoding_message_size;
4694                    let max_encoding_message_size = self.max_encoding_message_size;
4695                    let inner = self.inner.clone();
4696                    let fut = async move {
4697                        let method = DropFunctionSvc(inner);
4698                        let codec = tonic_prost::ProstCodec::default();
4699                        let mut grpc = tonic::server::Grpc::new(codec)
4700                            .apply_compression_config(
4701                                accept_compression_encodings,
4702                                send_compression_encodings,
4703                            )
4704                            .apply_max_message_size_config(
4705                                max_decoding_message_size,
4706                                max_encoding_message_size,
4707                            );
4708                        let res = grpc.unary(method, req).await;
4709                        Ok(res)
4710                    };
4711                    Box::pin(fut)
4712                }
4713                "/ddl_service.DdlService/ReplaceJobPlan" => {
4714                    #[allow(non_camel_case_types)]
4715                    struct ReplaceJobPlanSvc<T: DdlService>(pub Arc<T>);
4716                    impl<
4717                        T: DdlService,
4718                    > tonic::server::UnaryService<super::ReplaceJobPlanRequest>
4719                    for ReplaceJobPlanSvc<T> {
4720                        type Response = super::ReplaceJobPlanResponse;
4721                        type Future = BoxFuture<
4722                            tonic::Response<Self::Response>,
4723                            tonic::Status,
4724                        >;
4725                        fn call(
4726                            &mut self,
4727                            request: tonic::Request<super::ReplaceJobPlanRequest>,
4728                        ) -> Self::Future {
4729                            let inner = Arc::clone(&self.0);
4730                            let fut = async move {
4731                                <T as DdlService>::replace_job_plan(&inner, request).await
4732                            };
4733                            Box::pin(fut)
4734                        }
4735                    }
4736                    let accept_compression_encodings = self.accept_compression_encodings;
4737                    let send_compression_encodings = self.send_compression_encodings;
4738                    let max_decoding_message_size = self.max_decoding_message_size;
4739                    let max_encoding_message_size = self.max_encoding_message_size;
4740                    let inner = self.inner.clone();
4741                    let fut = async move {
4742                        let method = ReplaceJobPlanSvc(inner);
4743                        let codec = tonic_prost::ProstCodec::default();
4744                        let mut grpc = tonic::server::Grpc::new(codec)
4745                            .apply_compression_config(
4746                                accept_compression_encodings,
4747                                send_compression_encodings,
4748                            )
4749                            .apply_max_message_size_config(
4750                                max_decoding_message_size,
4751                                max_encoding_message_size,
4752                            );
4753                        let res = grpc.unary(method, req).await;
4754                        Ok(res)
4755                    };
4756                    Box::pin(fut)
4757                }
4758                "/ddl_service.DdlService/GetTable" => {
4759                    #[allow(non_camel_case_types)]
4760                    struct GetTableSvc<T: DdlService>(pub Arc<T>);
4761                    impl<
4762                        T: DdlService,
4763                    > tonic::server::UnaryService<super::GetTableRequest>
4764                    for GetTableSvc<T> {
4765                        type Response = super::GetTableResponse;
4766                        type Future = BoxFuture<
4767                            tonic::Response<Self::Response>,
4768                            tonic::Status,
4769                        >;
4770                        fn call(
4771                            &mut self,
4772                            request: tonic::Request<super::GetTableRequest>,
4773                        ) -> Self::Future {
4774                            let inner = Arc::clone(&self.0);
4775                            let fut = async move {
4776                                <T as DdlService>::get_table(&inner, request).await
4777                            };
4778                            Box::pin(fut)
4779                        }
4780                    }
4781                    let accept_compression_encodings = self.accept_compression_encodings;
4782                    let send_compression_encodings = self.send_compression_encodings;
4783                    let max_decoding_message_size = self.max_decoding_message_size;
4784                    let max_encoding_message_size = self.max_encoding_message_size;
4785                    let inner = self.inner.clone();
4786                    let fut = async move {
4787                        let method = GetTableSvc(inner);
4788                        let codec = tonic_prost::ProstCodec::default();
4789                        let mut grpc = tonic::server::Grpc::new(codec)
4790                            .apply_compression_config(
4791                                accept_compression_encodings,
4792                                send_compression_encodings,
4793                            )
4794                            .apply_max_message_size_config(
4795                                max_decoding_message_size,
4796                                max_encoding_message_size,
4797                            );
4798                        let res = grpc.unary(method, req).await;
4799                        Ok(res)
4800                    };
4801                    Box::pin(fut)
4802                }
4803                "/ddl_service.DdlService/GetDdlProgress" => {
4804                    #[allow(non_camel_case_types)]
4805                    struct GetDdlProgressSvc<T: DdlService>(pub Arc<T>);
4806                    impl<
4807                        T: DdlService,
4808                    > tonic::server::UnaryService<super::GetDdlProgressRequest>
4809                    for GetDdlProgressSvc<T> {
4810                        type Response = super::GetDdlProgressResponse;
4811                        type Future = BoxFuture<
4812                            tonic::Response<Self::Response>,
4813                            tonic::Status,
4814                        >;
4815                        fn call(
4816                            &mut self,
4817                            request: tonic::Request<super::GetDdlProgressRequest>,
4818                        ) -> Self::Future {
4819                            let inner = Arc::clone(&self.0);
4820                            let fut = async move {
4821                                <T as DdlService>::get_ddl_progress(&inner, request).await
4822                            };
4823                            Box::pin(fut)
4824                        }
4825                    }
4826                    let accept_compression_encodings = self.accept_compression_encodings;
4827                    let send_compression_encodings = self.send_compression_encodings;
4828                    let max_decoding_message_size = self.max_decoding_message_size;
4829                    let max_encoding_message_size = self.max_encoding_message_size;
4830                    let inner = self.inner.clone();
4831                    let fut = async move {
4832                        let method = GetDdlProgressSvc(inner);
4833                        let codec = tonic_prost::ProstCodec::default();
4834                        let mut grpc = tonic::server::Grpc::new(codec)
4835                            .apply_compression_config(
4836                                accept_compression_encodings,
4837                                send_compression_encodings,
4838                            )
4839                            .apply_max_message_size_config(
4840                                max_decoding_message_size,
4841                                max_encoding_message_size,
4842                            );
4843                        let res = grpc.unary(method, req).await;
4844                        Ok(res)
4845                    };
4846                    Box::pin(fut)
4847                }
4848                "/ddl_service.DdlService/CreateConnection" => {
4849                    #[allow(non_camel_case_types)]
4850                    struct CreateConnectionSvc<T: DdlService>(pub Arc<T>);
4851                    impl<
4852                        T: DdlService,
4853                    > tonic::server::UnaryService<super::CreateConnectionRequest>
4854                    for CreateConnectionSvc<T> {
4855                        type Response = super::CreateConnectionResponse;
4856                        type Future = BoxFuture<
4857                            tonic::Response<Self::Response>,
4858                            tonic::Status,
4859                        >;
4860                        fn call(
4861                            &mut self,
4862                            request: tonic::Request<super::CreateConnectionRequest>,
4863                        ) -> Self::Future {
4864                            let inner = Arc::clone(&self.0);
4865                            let fut = async move {
4866                                <T as DdlService>::create_connection(&inner, request).await
4867                            };
4868                            Box::pin(fut)
4869                        }
4870                    }
4871                    let accept_compression_encodings = self.accept_compression_encodings;
4872                    let send_compression_encodings = self.send_compression_encodings;
4873                    let max_decoding_message_size = self.max_decoding_message_size;
4874                    let max_encoding_message_size = self.max_encoding_message_size;
4875                    let inner = self.inner.clone();
4876                    let fut = async move {
4877                        let method = CreateConnectionSvc(inner);
4878                        let codec = tonic_prost::ProstCodec::default();
4879                        let mut grpc = tonic::server::Grpc::new(codec)
4880                            .apply_compression_config(
4881                                accept_compression_encodings,
4882                                send_compression_encodings,
4883                            )
4884                            .apply_max_message_size_config(
4885                                max_decoding_message_size,
4886                                max_encoding_message_size,
4887                            );
4888                        let res = grpc.unary(method, req).await;
4889                        Ok(res)
4890                    };
4891                    Box::pin(fut)
4892                }
4893                "/ddl_service.DdlService/ListConnections" => {
4894                    #[allow(non_camel_case_types)]
4895                    struct ListConnectionsSvc<T: DdlService>(pub Arc<T>);
4896                    impl<
4897                        T: DdlService,
4898                    > tonic::server::UnaryService<super::ListConnectionsRequest>
4899                    for ListConnectionsSvc<T> {
4900                        type Response = super::ListConnectionsResponse;
4901                        type Future = BoxFuture<
4902                            tonic::Response<Self::Response>,
4903                            tonic::Status,
4904                        >;
4905                        fn call(
4906                            &mut self,
4907                            request: tonic::Request<super::ListConnectionsRequest>,
4908                        ) -> Self::Future {
4909                            let inner = Arc::clone(&self.0);
4910                            let fut = async move {
4911                                <T as DdlService>::list_connections(&inner, request).await
4912                            };
4913                            Box::pin(fut)
4914                        }
4915                    }
4916                    let accept_compression_encodings = self.accept_compression_encodings;
4917                    let send_compression_encodings = self.send_compression_encodings;
4918                    let max_decoding_message_size = self.max_decoding_message_size;
4919                    let max_encoding_message_size = self.max_encoding_message_size;
4920                    let inner = self.inner.clone();
4921                    let fut = async move {
4922                        let method = ListConnectionsSvc(inner);
4923                        let codec = tonic_prost::ProstCodec::default();
4924                        let mut grpc = tonic::server::Grpc::new(codec)
4925                            .apply_compression_config(
4926                                accept_compression_encodings,
4927                                send_compression_encodings,
4928                            )
4929                            .apply_max_message_size_config(
4930                                max_decoding_message_size,
4931                                max_encoding_message_size,
4932                            );
4933                        let res = grpc.unary(method, req).await;
4934                        Ok(res)
4935                    };
4936                    Box::pin(fut)
4937                }
4938                "/ddl_service.DdlService/DropConnection" => {
4939                    #[allow(non_camel_case_types)]
4940                    struct DropConnectionSvc<T: DdlService>(pub Arc<T>);
4941                    impl<
4942                        T: DdlService,
4943                    > tonic::server::UnaryService<super::DropConnectionRequest>
4944                    for DropConnectionSvc<T> {
4945                        type Response = super::DropConnectionResponse;
4946                        type Future = BoxFuture<
4947                            tonic::Response<Self::Response>,
4948                            tonic::Status,
4949                        >;
4950                        fn call(
4951                            &mut self,
4952                            request: tonic::Request<super::DropConnectionRequest>,
4953                        ) -> Self::Future {
4954                            let inner = Arc::clone(&self.0);
4955                            let fut = async move {
4956                                <T as DdlService>::drop_connection(&inner, request).await
4957                            };
4958                            Box::pin(fut)
4959                        }
4960                    }
4961                    let accept_compression_encodings = self.accept_compression_encodings;
4962                    let send_compression_encodings = self.send_compression_encodings;
4963                    let max_decoding_message_size = self.max_decoding_message_size;
4964                    let max_encoding_message_size = self.max_encoding_message_size;
4965                    let inner = self.inner.clone();
4966                    let fut = async move {
4967                        let method = DropConnectionSvc(inner);
4968                        let codec = tonic_prost::ProstCodec::default();
4969                        let mut grpc = tonic::server::Grpc::new(codec)
4970                            .apply_compression_config(
4971                                accept_compression_encodings,
4972                                send_compression_encodings,
4973                            )
4974                            .apply_max_message_size_config(
4975                                max_decoding_message_size,
4976                                max_encoding_message_size,
4977                            );
4978                        let res = grpc.unary(method, req).await;
4979                        Ok(res)
4980                    };
4981                    Box::pin(fut)
4982                }
4983                "/ddl_service.DdlService/GetTables" => {
4984                    #[allow(non_camel_case_types)]
4985                    struct GetTablesSvc<T: DdlService>(pub Arc<T>);
4986                    impl<
4987                        T: DdlService,
4988                    > tonic::server::UnaryService<super::GetTablesRequest>
4989                    for GetTablesSvc<T> {
4990                        type Response = super::GetTablesResponse;
4991                        type Future = BoxFuture<
4992                            tonic::Response<Self::Response>,
4993                            tonic::Status,
4994                        >;
4995                        fn call(
4996                            &mut self,
4997                            request: tonic::Request<super::GetTablesRequest>,
4998                        ) -> Self::Future {
4999                            let inner = Arc::clone(&self.0);
5000                            let fut = async move {
5001                                <T as DdlService>::get_tables(&inner, request).await
5002                            };
5003                            Box::pin(fut)
5004                        }
5005                    }
5006                    let accept_compression_encodings = self.accept_compression_encodings;
5007                    let send_compression_encodings = self.send_compression_encodings;
5008                    let max_decoding_message_size = self.max_decoding_message_size;
5009                    let max_encoding_message_size = self.max_encoding_message_size;
5010                    let inner = self.inner.clone();
5011                    let fut = async move {
5012                        let method = GetTablesSvc(inner);
5013                        let codec = tonic_prost::ProstCodec::default();
5014                        let mut grpc = tonic::server::Grpc::new(codec)
5015                            .apply_compression_config(
5016                                accept_compression_encodings,
5017                                send_compression_encodings,
5018                            )
5019                            .apply_max_message_size_config(
5020                                max_decoding_message_size,
5021                                max_encoding_message_size,
5022                            );
5023                        let res = grpc.unary(method, req).await;
5024                        Ok(res)
5025                    };
5026                    Box::pin(fut)
5027                }
5028                "/ddl_service.DdlService/Wait" => {
5029                    #[allow(non_camel_case_types)]
5030                    struct WaitSvc<T: DdlService>(pub Arc<T>);
5031                    impl<T: DdlService> tonic::server::UnaryService<super::WaitRequest>
5032                    for WaitSvc<T> {
5033                        type Response = super::WaitResponse;
5034                        type Future = BoxFuture<
5035                            tonic::Response<Self::Response>,
5036                            tonic::Status,
5037                        >;
5038                        fn call(
5039                            &mut self,
5040                            request: tonic::Request<super::WaitRequest>,
5041                        ) -> Self::Future {
5042                            let inner = Arc::clone(&self.0);
5043                            let fut = async move {
5044                                <T as DdlService>::wait(&inner, request).await
5045                            };
5046                            Box::pin(fut)
5047                        }
5048                    }
5049                    let accept_compression_encodings = self.accept_compression_encodings;
5050                    let send_compression_encodings = self.send_compression_encodings;
5051                    let max_decoding_message_size = self.max_decoding_message_size;
5052                    let max_encoding_message_size = self.max_encoding_message_size;
5053                    let inner = self.inner.clone();
5054                    let fut = async move {
5055                        let method = WaitSvc(inner);
5056                        let codec = tonic_prost::ProstCodec::default();
5057                        let mut grpc = tonic::server::Grpc::new(codec)
5058                            .apply_compression_config(
5059                                accept_compression_encodings,
5060                                send_compression_encodings,
5061                            )
5062                            .apply_max_message_size_config(
5063                                max_decoding_message_size,
5064                                max_encoding_message_size,
5065                            );
5066                        let res = grpc.unary(method, req).await;
5067                        Ok(res)
5068                    };
5069                    Box::pin(fut)
5070                }
5071                "/ddl_service.DdlService/CommentOn" => {
5072                    #[allow(non_camel_case_types)]
5073                    struct CommentOnSvc<T: DdlService>(pub Arc<T>);
5074                    impl<
5075                        T: DdlService,
5076                    > tonic::server::UnaryService<super::CommentOnRequest>
5077                    for CommentOnSvc<T> {
5078                        type Response = super::CommentOnResponse;
5079                        type Future = BoxFuture<
5080                            tonic::Response<Self::Response>,
5081                            tonic::Status,
5082                        >;
5083                        fn call(
5084                            &mut self,
5085                            request: tonic::Request<super::CommentOnRequest>,
5086                        ) -> Self::Future {
5087                            let inner = Arc::clone(&self.0);
5088                            let fut = async move {
5089                                <T as DdlService>::comment_on(&inner, request).await
5090                            };
5091                            Box::pin(fut)
5092                        }
5093                    }
5094                    let accept_compression_encodings = self.accept_compression_encodings;
5095                    let send_compression_encodings = self.send_compression_encodings;
5096                    let max_decoding_message_size = self.max_decoding_message_size;
5097                    let max_encoding_message_size = self.max_encoding_message_size;
5098                    let inner = self.inner.clone();
5099                    let fut = async move {
5100                        let method = CommentOnSvc(inner);
5101                        let codec = tonic_prost::ProstCodec::default();
5102                        let mut grpc = tonic::server::Grpc::new(codec)
5103                            .apply_compression_config(
5104                                accept_compression_encodings,
5105                                send_compression_encodings,
5106                            )
5107                            .apply_max_message_size_config(
5108                                max_decoding_message_size,
5109                                max_encoding_message_size,
5110                            );
5111                        let res = grpc.unary(method, req).await;
5112                        Ok(res)
5113                    };
5114                    Box::pin(fut)
5115                }
5116                "/ddl_service.DdlService/AutoSchemaChange" => {
5117                    #[allow(non_camel_case_types)]
5118                    struct AutoSchemaChangeSvc<T: DdlService>(pub Arc<T>);
5119                    impl<
5120                        T: DdlService,
5121                    > tonic::server::UnaryService<super::AutoSchemaChangeRequest>
5122                    for AutoSchemaChangeSvc<T> {
5123                        type Response = super::AutoSchemaChangeResponse;
5124                        type Future = BoxFuture<
5125                            tonic::Response<Self::Response>,
5126                            tonic::Status,
5127                        >;
5128                        fn call(
5129                            &mut self,
5130                            request: tonic::Request<super::AutoSchemaChangeRequest>,
5131                        ) -> Self::Future {
5132                            let inner = Arc::clone(&self.0);
5133                            let fut = async move {
5134                                <T as DdlService>::auto_schema_change(&inner, request).await
5135                            };
5136                            Box::pin(fut)
5137                        }
5138                    }
5139                    let accept_compression_encodings = self.accept_compression_encodings;
5140                    let send_compression_encodings = self.send_compression_encodings;
5141                    let max_decoding_message_size = self.max_decoding_message_size;
5142                    let max_encoding_message_size = self.max_encoding_message_size;
5143                    let inner = self.inner.clone();
5144                    let fut = async move {
5145                        let method = AutoSchemaChangeSvc(inner);
5146                        let codec = tonic_prost::ProstCodec::default();
5147                        let mut grpc = tonic::server::Grpc::new(codec)
5148                            .apply_compression_config(
5149                                accept_compression_encodings,
5150                                send_compression_encodings,
5151                            )
5152                            .apply_max_message_size_config(
5153                                max_decoding_message_size,
5154                                max_encoding_message_size,
5155                            );
5156                        let res = grpc.unary(method, req).await;
5157                        Ok(res)
5158                    };
5159                    Box::pin(fut)
5160                }
5161                "/ddl_service.DdlService/AlterSwapRename" => {
5162                    #[allow(non_camel_case_types)]
5163                    struct AlterSwapRenameSvc<T: DdlService>(pub Arc<T>);
5164                    impl<
5165                        T: DdlService,
5166                    > tonic::server::UnaryService<super::AlterSwapRenameRequest>
5167                    for AlterSwapRenameSvc<T> {
5168                        type Response = super::AlterSwapRenameResponse;
5169                        type Future = BoxFuture<
5170                            tonic::Response<Self::Response>,
5171                            tonic::Status,
5172                        >;
5173                        fn call(
5174                            &mut self,
5175                            request: tonic::Request<super::AlterSwapRenameRequest>,
5176                        ) -> Self::Future {
5177                            let inner = Arc::clone(&self.0);
5178                            let fut = async move {
5179                                <T as DdlService>::alter_swap_rename(&inner, request).await
5180                            };
5181                            Box::pin(fut)
5182                        }
5183                    }
5184                    let accept_compression_encodings = self.accept_compression_encodings;
5185                    let send_compression_encodings = self.send_compression_encodings;
5186                    let max_decoding_message_size = self.max_decoding_message_size;
5187                    let max_encoding_message_size = self.max_encoding_message_size;
5188                    let inner = self.inner.clone();
5189                    let fut = async move {
5190                        let method = AlterSwapRenameSvc(inner);
5191                        let codec = tonic_prost::ProstCodec::default();
5192                        let mut grpc = tonic::server::Grpc::new(codec)
5193                            .apply_compression_config(
5194                                accept_compression_encodings,
5195                                send_compression_encodings,
5196                            )
5197                            .apply_max_message_size_config(
5198                                max_decoding_message_size,
5199                                max_encoding_message_size,
5200                            );
5201                        let res = grpc.unary(method, req).await;
5202                        Ok(res)
5203                    };
5204                    Box::pin(fut)
5205                }
5206                "/ddl_service.DdlService/AlterDatabaseParam" => {
5207                    #[allow(non_camel_case_types)]
5208                    struct AlterDatabaseParamSvc<T: DdlService>(pub Arc<T>);
5209                    impl<
5210                        T: DdlService,
5211                    > tonic::server::UnaryService<super::AlterDatabaseParamRequest>
5212                    for AlterDatabaseParamSvc<T> {
5213                        type Response = super::AlterDatabaseParamResponse;
5214                        type Future = BoxFuture<
5215                            tonic::Response<Self::Response>,
5216                            tonic::Status,
5217                        >;
5218                        fn call(
5219                            &mut self,
5220                            request: tonic::Request<super::AlterDatabaseParamRequest>,
5221                        ) -> Self::Future {
5222                            let inner = Arc::clone(&self.0);
5223                            let fut = async move {
5224                                <T as DdlService>::alter_database_param(&inner, request)
5225                                    .await
5226                            };
5227                            Box::pin(fut)
5228                        }
5229                    }
5230                    let accept_compression_encodings = self.accept_compression_encodings;
5231                    let send_compression_encodings = self.send_compression_encodings;
5232                    let max_decoding_message_size = self.max_decoding_message_size;
5233                    let max_encoding_message_size = self.max_encoding_message_size;
5234                    let inner = self.inner.clone();
5235                    let fut = async move {
5236                        let method = AlterDatabaseParamSvc(inner);
5237                        let codec = tonic_prost::ProstCodec::default();
5238                        let mut grpc = tonic::server::Grpc::new(codec)
5239                            .apply_compression_config(
5240                                accept_compression_encodings,
5241                                send_compression_encodings,
5242                            )
5243                            .apply_max_message_size_config(
5244                                max_decoding_message_size,
5245                                max_encoding_message_size,
5246                            );
5247                        let res = grpc.unary(method, req).await;
5248                        Ok(res)
5249                    };
5250                    Box::pin(fut)
5251                }
5252                "/ddl_service.DdlService/CompactIcebergTable" => {
5253                    #[allow(non_camel_case_types)]
5254                    struct CompactIcebergTableSvc<T: DdlService>(pub Arc<T>);
5255                    impl<
5256                        T: DdlService,
5257                    > tonic::server::UnaryService<super::CompactIcebergTableRequest>
5258                    for CompactIcebergTableSvc<T> {
5259                        type Response = super::CompactIcebergTableResponse;
5260                        type Future = BoxFuture<
5261                            tonic::Response<Self::Response>,
5262                            tonic::Status,
5263                        >;
5264                        fn call(
5265                            &mut self,
5266                            request: tonic::Request<super::CompactIcebergTableRequest>,
5267                        ) -> Self::Future {
5268                            let inner = Arc::clone(&self.0);
5269                            let fut = async move {
5270                                <T as DdlService>::compact_iceberg_table(&inner, request)
5271                                    .await
5272                            };
5273                            Box::pin(fut)
5274                        }
5275                    }
5276                    let accept_compression_encodings = self.accept_compression_encodings;
5277                    let send_compression_encodings = self.send_compression_encodings;
5278                    let max_decoding_message_size = self.max_decoding_message_size;
5279                    let max_encoding_message_size = self.max_encoding_message_size;
5280                    let inner = self.inner.clone();
5281                    let fut = async move {
5282                        let method = CompactIcebergTableSvc(inner);
5283                        let codec = tonic_prost::ProstCodec::default();
5284                        let mut grpc = tonic::server::Grpc::new(codec)
5285                            .apply_compression_config(
5286                                accept_compression_encodings,
5287                                send_compression_encodings,
5288                            )
5289                            .apply_max_message_size_config(
5290                                max_decoding_message_size,
5291                                max_encoding_message_size,
5292                            );
5293                        let res = grpc.unary(method, req).await;
5294                        Ok(res)
5295                    };
5296                    Box::pin(fut)
5297                }
5298                "/ddl_service.DdlService/ExpireIcebergTableSnapshots" => {
5299                    #[allow(non_camel_case_types)]
5300                    struct ExpireIcebergTableSnapshotsSvc<T: DdlService>(pub Arc<T>);
5301                    impl<
5302                        T: DdlService,
5303                    > tonic::server::UnaryService<
5304                        super::ExpireIcebergTableSnapshotsRequest,
5305                    > for ExpireIcebergTableSnapshotsSvc<T> {
5306                        type Response = super::ExpireIcebergTableSnapshotsResponse;
5307                        type Future = BoxFuture<
5308                            tonic::Response<Self::Response>,
5309                            tonic::Status,
5310                        >;
5311                        fn call(
5312                            &mut self,
5313                            request: tonic::Request<
5314                                super::ExpireIcebergTableSnapshotsRequest,
5315                            >,
5316                        ) -> Self::Future {
5317                            let inner = Arc::clone(&self.0);
5318                            let fut = async move {
5319                                <T as DdlService>::expire_iceberg_table_snapshots(
5320                                        &inner,
5321                                        request,
5322                                    )
5323                                    .await
5324                            };
5325                            Box::pin(fut)
5326                        }
5327                    }
5328                    let accept_compression_encodings = self.accept_compression_encodings;
5329                    let send_compression_encodings = self.send_compression_encodings;
5330                    let max_decoding_message_size = self.max_decoding_message_size;
5331                    let max_encoding_message_size = self.max_encoding_message_size;
5332                    let inner = self.inner.clone();
5333                    let fut = async move {
5334                        let method = ExpireIcebergTableSnapshotsSvc(inner);
5335                        let codec = tonic_prost::ProstCodec::default();
5336                        let mut grpc = tonic::server::Grpc::new(codec)
5337                            .apply_compression_config(
5338                                accept_compression_encodings,
5339                                send_compression_encodings,
5340                            )
5341                            .apply_max_message_size_config(
5342                                max_decoding_message_size,
5343                                max_encoding_message_size,
5344                            );
5345                        let res = grpc.unary(method, req).await;
5346                        Ok(res)
5347                    };
5348                    Box::pin(fut)
5349                }
5350                "/ddl_service.DdlService/AlterCdcTableBackfillParallelism" => {
5351                    #[allow(non_camel_case_types)]
5352                    struct AlterCdcTableBackfillParallelismSvc<T: DdlService>(
5353                        pub Arc<T>,
5354                    );
5355                    impl<
5356                        T: DdlService,
5357                    > tonic::server::UnaryService<
5358                        super::AlterCdcTableBackfillParallelismRequest,
5359                    > for AlterCdcTableBackfillParallelismSvc<T> {
5360                        type Response = super::AlterCdcTableBackfillParallelismResponse;
5361                        type Future = BoxFuture<
5362                            tonic::Response<Self::Response>,
5363                            tonic::Status,
5364                        >;
5365                        fn call(
5366                            &mut self,
5367                            request: tonic::Request<
5368                                super::AlterCdcTableBackfillParallelismRequest,
5369                            >,
5370                        ) -> Self::Future {
5371                            let inner = Arc::clone(&self.0);
5372                            let fut = async move {
5373                                <T as DdlService>::alter_cdc_table_backfill_parallelism(
5374                                        &inner,
5375                                        request,
5376                                    )
5377                                    .await
5378                            };
5379                            Box::pin(fut)
5380                        }
5381                    }
5382                    let accept_compression_encodings = self.accept_compression_encodings;
5383                    let send_compression_encodings = self.send_compression_encodings;
5384                    let max_decoding_message_size = self.max_decoding_message_size;
5385                    let max_encoding_message_size = self.max_encoding_message_size;
5386                    let inner = self.inner.clone();
5387                    let fut = async move {
5388                        let method = AlterCdcTableBackfillParallelismSvc(inner);
5389                        let codec = tonic_prost::ProstCodec::default();
5390                        let mut grpc = tonic::server::Grpc::new(codec)
5391                            .apply_compression_config(
5392                                accept_compression_encodings,
5393                                send_compression_encodings,
5394                            )
5395                            .apply_max_message_size_config(
5396                                max_decoding_message_size,
5397                                max_encoding_message_size,
5398                            );
5399                        let res = grpc.unary(method, req).await;
5400                        Ok(res)
5401                    };
5402                    Box::pin(fut)
5403                }
5404                "/ddl_service.DdlService/AlterStreamingJobConfig" => {
5405                    #[allow(non_camel_case_types)]
5406                    struct AlterStreamingJobConfigSvc<T: DdlService>(pub Arc<T>);
5407                    impl<
5408                        T: DdlService,
5409                    > tonic::server::UnaryService<super::AlterStreamingJobConfigRequest>
5410                    for AlterStreamingJobConfigSvc<T> {
5411                        type Response = super::AlterStreamingJobConfigResponse;
5412                        type Future = BoxFuture<
5413                            tonic::Response<Self::Response>,
5414                            tonic::Status,
5415                        >;
5416                        fn call(
5417                            &mut self,
5418                            request: tonic::Request<
5419                                super::AlterStreamingJobConfigRequest,
5420                            >,
5421                        ) -> Self::Future {
5422                            let inner = Arc::clone(&self.0);
5423                            let fut = async move {
5424                                <T as DdlService>::alter_streaming_job_config(
5425                                        &inner,
5426                                        request,
5427                                    )
5428                                    .await
5429                            };
5430                            Box::pin(fut)
5431                        }
5432                    }
5433                    let accept_compression_encodings = self.accept_compression_encodings;
5434                    let send_compression_encodings = self.send_compression_encodings;
5435                    let max_decoding_message_size = self.max_decoding_message_size;
5436                    let max_encoding_message_size = self.max_encoding_message_size;
5437                    let inner = self.inner.clone();
5438                    let fut = async move {
5439                        let method = AlterStreamingJobConfigSvc(inner);
5440                        let codec = tonic_prost::ProstCodec::default();
5441                        let mut grpc = tonic::server::Grpc::new(codec)
5442                            .apply_compression_config(
5443                                accept_compression_encodings,
5444                                send_compression_encodings,
5445                            )
5446                            .apply_max_message_size_config(
5447                                max_decoding_message_size,
5448                                max_encoding_message_size,
5449                            );
5450                        let res = grpc.unary(method, req).await;
5451                        Ok(res)
5452                    };
5453                    Box::pin(fut)
5454                }
5455                _ => {
5456                    Box::pin(async move {
5457                        let mut response = http::Response::new(
5458                            tonic::body::Body::default(),
5459                        );
5460                        let headers = response.headers_mut();
5461                        headers
5462                            .insert(
5463                                tonic::Status::GRPC_STATUS,
5464                                (tonic::Code::Unimplemented as i32).into(),
5465                            );
5466                        headers
5467                            .insert(
5468                                http::header::CONTENT_TYPE,
5469                                tonic::metadata::GRPC_CONTENT_TYPE,
5470                            );
5471                        Ok(response)
5472                    })
5473                }
5474            }
5475        }
5476    }
5477    impl<T> Clone for DdlServiceServer<T> {
5478        fn clone(&self) -> Self {
5479            let inner = self.inner.clone();
5480            Self {
5481                inner,
5482                accept_compression_encodings: self.accept_compression_encodings,
5483                send_compression_encodings: self.send_compression_encodings,
5484                max_decoding_message_size: self.max_decoding_message_size,
5485                max_encoding_message_size: self.max_encoding_message_size,
5486            }
5487        }
5488    }
5489    /// Generated gRPC service name
5490    pub const SERVICE_NAME: &str = "ddl_service.DdlService";
5491    impl<T> tonic::server::NamedService for DdlServiceServer<T> {
5492        const NAME: &'static str = SERVICE_NAME;
5493    }
5494}