Skip to content

Commit 4d951ae

Browse files
authored
Merge pull request #217 Sync from arcadia
2 parents 4ea228c + 52a3856 commit 4d951ae

File tree

4 files changed

+16
-12
lines changed

4 files changed

+16
-12
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
* fixed in to make compressed backups possible
2+
* Add snapshot to read table responses
3+
14
## 2.12.4 ##
25
* Added functions for global change behaviour for compatible with future sdk version: ydb.global_allow_truncated_result and global_allow_split_transactions
36

ydb/_session_impl.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -407,7 +407,8 @@ def bulk_upsert_request_factory(table, rows, column_types):
407407

408408
def wrap_read_table_response(response):
409409
issues._process_response(response)
410-
return convert.ResultSet.from_message(response.result.result_set)
410+
snapshot = response.snapshot if response.HasField("snapshot") else None
411+
return convert.ResultSet.from_message(response.result.result_set, snapshot=snapshot)
411412

412413

413414
class SessionState(object):

ydb/convert.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -313,15 +313,15 @@ def _unwrap_optionality(column):
313313

314314

315315
class _ResultSet(object):
316-
__slots__ = ("columns", "rows", "truncated")
316+
__slots__ = ("columns", "rows", "truncated", "snapshot")
317317

318-
def __init__(self, columns, rows, truncated):
318+
def __init__(self, columns, rows, truncated, snapshot=None):
319319
self.columns = columns
320320
self.rows = rows
321321
self.truncated = truncated
322322

323323
@classmethod
324-
def from_message(cls, message, table_client_settings=None):
324+
def from_message(cls, message, table_client_settings=None, snapshot=None):
325325
rows = []
326326
# prepare columnn parsers before actuall parsing
327327
column_parsers = []
@@ -348,12 +348,12 @@ def from_message(cls, message, table_client_settings=None):
348348
unwrapped_type, value, table_client_settings
349349
)
350350
rows.append(row)
351-
return cls(message.columns, rows, message.truncated)
351+
return cls(message.columns, rows, message.truncated, snapshot)
352352

353353
@classmethod
354-
def lazy_from_message(cls, message, table_client_settings=None):
354+
def lazy_from_message(cls, message, table_client_settings=None, snapshot=None):
355355
rows = _LazyRows(message.rows, table_client_settings, message.columns)
356-
return cls(message.columns, rows, message.truncated)
356+
return cls(message.columns, rows, message.truncated, snapshot)
357357

358358

359359
ResultSet = _ResultSet

ydb/export.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ def __init__(self):
131131
self.secret_key = None
132132
self.number_of_retries = 0
133133
self.storage_class = None
134-
self.compression = None
134+
self.export_compression = None
135135

136136
def with_scheme(self, scheme):
137137
self.scheme = scheme
@@ -141,8 +141,8 @@ def with_storage_class(self, storage_class):
141141
self.storage_class = storage_class
142142
return self
143143

144-
def with_compression(self, compression):
145-
self.compression = compression
144+
def with_export_compression(self, compression):
145+
self.export_compression = compression
146146
return self
147147

148148
def with_bucket(self, bucket):
@@ -225,8 +225,8 @@ def _export_to_s3_request_factory(settings):
225225
if settings.number_of_retries > 0:
226226
request.settings.number_of_retries = settings.number_of_retries
227227

228-
if settings.compression is not None:
229-
request.settings.compression = settings.compression
228+
if settings.export_compression is not None:
229+
request.settings.compression = settings.export_compression
230230

231231
for source_path, destination_prefix in settings.items:
232232
request.settings.items.add(

0 commit comments

Comments
 (0)