diff options
author | nsofya <nsofya@yandex-team.com> | 2023-04-04 19:31:00 +0300 |
---|---|---|
committer | nsofya <nsofya@yandex-team.com> | 2023-04-04 19:31:00 +0300 |
commit | 9c844c132d2f12b82fff2fff1bd0f7048fa96b28 (patch) | |
tree | 1cf6d55d949d97acb09406991d13e3fb3370e0d0 /.github | |
parent | 3f75ec8cd3385bb1b3218186ed863714070c3b47 (diff) | |
download | ydb-9c844c132d2f12b82fff2fff1bd0f7048fa96b28.tar.gz |
Table schema modification prepare
Что сделала тут:
1. И основное, преобразовала класс TOlapScheme так, чтобы разделить логику построения схемы (сам TOlapSchema) и логику парсинга запроса (TOlapSchemaUpdate). И в итоге имеем прозрачную и читаемую логику: распарсил дифф (новая таблица - это тоже дифф к пустой схеме) -> наложил на существующую схему -> серилизовал результат и сохранил. По идее должно завестись на AddColumn , как только уберем проверку, которая не позволяет сейчас схему передавать просто во входящем протобуфе. Но полностью это я смогу протестировать, когда поддержку на уровне колумншарда работу с разными версиями схем.
2. Сделала пару полезных функций внутри схемашарда: по поиску транзакции и проверки стейта (а то везде с разной степенью надежности пишутся эти проверки) и по инициализации транзакции внутри схемашарда - InitializeSchemaTx . Пока делала использование только в тех файлах, которые правила.
Diffstat (limited to '.github')
0 files changed, 0 insertions, 0 deletions