risingwave_pb/
ddl_service.rs

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