1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
//// Common
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ImportProgress {}
/// Nested message and enum types in `ImportProgress`.
pub mod import_progress {
    #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
    #[repr(i32)]
    pub enum Progress {
        Unspecified = 0,
        Preparing = 1,
        TransferData = 2,
        BuildIndexes = 3,
        Done = 4,
        Cancellation = 5,
        Cancelled = 6,
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ImportItemProgress {
    #[prost(uint32, tag = "1")]
    pub parts_total: u32,
    #[prost(uint32, tag = "2")]
    pub parts_completed: u32,
    #[prost(message, optional, tag = "3")]
    pub start_time: ::core::option::Option<::prost_types::Timestamp>,
    #[prost(message, optional, tag = "4")]
    pub end_time: ::core::option::Option<::prost_types::Timestamp>,
}
//// S3
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ImportFromS3Settings {
    #[prost(string, tag = "1")]
    pub endpoint: ::prost::alloc::string::String,
    /// HTTPS if not specified
    #[prost(enumeration = "import_from_s3_settings::Scheme", tag = "2")]
    pub scheme: i32,
    #[prost(string, tag = "3")]
    pub bucket: ::prost::alloc::string::String,
    #[prost(string, tag = "4")]
    pub access_key: ::prost::alloc::string::String,
    #[prost(string, tag = "5")]
    pub secret_key: ::prost::alloc::string::String,
    #[prost(message, repeated, tag = "6")]
    pub items: ::prost::alloc::vec::Vec<import_from_s3_settings::Item>,
    #[prost(string, tag = "7")]
    pub description: ::prost::alloc::string::String,
    #[prost(uint32, tag = "8")]
    pub number_of_retries: u32,
}
/// Nested message and enum types in `ImportFromS3Settings`.
pub mod import_from_s3_settings {
    #[derive(Clone, PartialEq, ::prost::Message)]
    pub struct Item {
        /// YDB tables in S3 are stored in one or more objects (see ydb_export.proto).
        ///The object name begins with 'source_prefix'.
        ///This prefix is followed by:
        /// '/data_PartNumber', where 'PartNumber' represents the index of the part, starting at zero;
        /// '/scheme.pb' - object with information about scheme, indexes, etc.
        #[prost(string, tag = "1")]
        pub source_prefix: ::prost::alloc::string::String,
        /// Database path to a table to import to.
        #[prost(string, tag = "2")]
        pub destination_path: ::prost::alloc::string::String,
    }
    #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
    #[repr(i32)]
    pub enum Scheme {
        Unspecified = 0,
        Http = 1,
        Https = 2,
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ImportFromS3Result {}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ImportFromS3Metadata {
    #[prost(message, optional, tag = "1")]
    pub settings: ::core::option::Option<ImportFromS3Settings>,
    #[prost(enumeration = "import_progress::Progress", tag = "2")]
    pub progress: i32,
    #[prost(message, repeated, tag = "3")]
    pub items_progress: ::prost::alloc::vec::Vec<ImportItemProgress>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ImportFromS3Request {
    #[prost(message, optional, tag = "1")]
    pub operation_params: ::core::option::Option<super::operations::OperationParams>,
    #[prost(message, optional, tag = "2")]
    pub settings: ::core::option::Option<ImportFromS3Settings>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ImportFromS3Response {
    /// operation.result = ImportFromS3Result
    /// operation.metadata = ImportFromS3Metadata
    #[prost(message, optional, tag = "1")]
    pub operation: ::core::option::Option<super::operations::Operation>,
}
//// Data
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct YdbDumpFormat {
    #[prost(string, repeated, tag = "1")]
    pub columns: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ImportDataResult {}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ImportDataRequest {
    #[prost(message, optional, tag = "1")]
    pub operation_params: ::core::option::Option<super::operations::OperationParams>,
    /// Full path to table
    #[prost(string, tag = "2")]
    pub path: ::prost::alloc::string::String,
    /// Data serialized in the selected format. Restrictions:
    /// - sorted by primary key;
    /// - all keys must be from the same partition;
    /// - table has no global secondary indexes;
    /// - size of serialized data is limited to 8 MB.
    #[prost(bytes = "vec", tag = "3")]
    pub data: ::prost::alloc::vec::Vec<u8>,
    #[prost(oneof = "import_data_request::Format", tags = "4")]
    pub format: ::core::option::Option<import_data_request::Format>,
}
/// Nested message and enum types in `ImportDataRequest`.
pub mod import_data_request {
    #[derive(Clone, PartialEq, ::prost::Oneof)]
    pub enum Format {
        /// Result of `ydb tools dump`
        #[prost(message, tag = "4")]
        YdbDump(super::YdbDumpFormat),
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ImportDataResponse {
    /// operation.result = ImportDataResult
    #[prost(message, optional, tag = "1")]
    pub operation: ::core::option::Option<super::operations::Operation>,
}