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