Skip to content

Commit 9c6879e

Browse files
author
Valeriya Popova
committed
add unknown item type to scheme ls
1 parent 320bd12 commit 9c6879e

File tree

2 files changed

+10
-6
lines changed

2 files changed

+10
-6
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
* Fixed error message while get token from metadata with asyncio iam
22
* Add `SnapshotReadOnly` transaction mode support to `session.transaction`
3+
* Support `UNKNOWN` item type to scheme ls
34

45
## 2.11.1 ##
56
* Regenerate protobuf code from public api protos (some private protobufs was removed)

ydb/scheme.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,11 @@ class SchemeEntryType(enum.IntEnum):
2323
SEQUENCE = 15
2424
REPLICATION = 16
2525
TOPIC = 17
26+
UNKNOWN = 18
27+
28+
@classmethod
29+
def _missing_(cls, value):
30+
return cls.UNKNOWN
2631

2732
@staticmethod
2833
def is_table(entry):
@@ -299,7 +304,7 @@ def _wrap_scheme_entry(entry_pb, scheme_entry_cls=None, *args, **kwargs):
299304
return scheme_entry_cls(
300305
entry_pb.name,
301306
entry_pb.owner,
302-
getattr(SchemeEntryType, _apis.ydb_scheme.Entry.Type.Name(entry_pb.type)),
307+
SchemeEntryType(entry_pb.type),
303308
_wrap_permissions(entry_pb.effective_permissions),
304309
_wrap_permissions(entry_pb.permissions),
305310
entry_pb.size_bytes,
@@ -318,7 +323,7 @@ def _wrap_list_directory_response(rpc_state, response):
318323
message = _apis.ydb_scheme.ListDirectoryResult()
319324
response.operation.result.Unpack(message)
320325
children = []
321-
supported_items = set([i.value for i in SchemeEntryType])
326+
supported_items = set(i.value for i in SchemeEntryType)
322327
for children_item in message.children:
323328
if children_item.type not in supported_items:
324329
continue
@@ -328,12 +333,10 @@ def _wrap_list_directory_response(rpc_state, response):
328333
return Directory(
329334
message.self.name,
330335
message.self.owner,
331-
getattr(SchemeEntryType, _apis.ydb_scheme.Entry.Type.Name(message.self.type)),
336+
SchemeEntryType(message.self.type),
332337
_wrap_permissions(message.self.effective_permissions),
333338
_wrap_permissions(message.self.permissions),
334-
tuple(
335-
children,
336-
),
339+
tuple(children),
337340
)
338341

339342

0 commit comments

Comments
 (0)