Skip to main content

risingwave_pb/
ddl_service.rs

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