Size: a a a

2020 October 08

AT

Alexander Turenko in Tarantool
Опять же, она по репликации приезжает, что добавляет сложностей в картину.
источник

AK

Alexey Kuzin in Tarantool
Alexander Turenko
Чтобы просто работало, без вот этого «выждать момент без запросов и быстро обновить схему» :)
Так ведь если не указывать схему, то при совместимых изменениях проблем не будет, а при несовместимых надо код клиента менять, нельзя продолжать фигачить запросы
источник

AT

Alexander Turenko in Tarantool
источник

AT

Alexander Turenko in Tarantool
Вот это поможет.
источник

AT

Alexander Turenko in Tarantool
Alexey Kuzin
Так ведь если не указывать схему, то при совместимых изменениях проблем не будет, а при несовместимых надо код клиента менять, нельзя продолжать фигачить запросы
Вот такой кейс может быть:

s → s_tmp
t → s
s_tmp → t
источник

AT

Alexander Turenko in Tarantool
Типа, спейсы именами поменяли.
источник

AT

Alexander Turenko in Tarantool
Не знаю, зачем.
источник

AK

Alexey Kuzin in Tarantool
Да, это то что ты описал выше. Но это несовместимые изменения
источник

AK

Alexey Kuzin in Tarantool
И по-хорошему это делается на резервном сервере, а не том что под нагрузкой, запросы все идут на старый
источник

AK

Alexey Kuzin in Tarantool
Потом старый переходит в ридонли, запросы переключаются на новый с новой схемой
источник

AT

Alexander Turenko in Tarantool
Ридонли все по репликации получит.
источник

AK

Alexey Kuzin in Tarantool
Да, но запросы на него не идут
источник

AT

Alexander Turenko in Tarantool
Если ты хочешь бесшовное обновление, то должен обе схемы поддерживать какое-то время.
источник

AK

Alexey Kuzin in Tarantool
Ну вот таким нехитрым способом, с помощью резервирования, сервис дискавери и пулинга соединений
источник

AK

Alexey Kuzin in Tarantool
Примерно это я попытался изобразить у себя в драйвере
источник

AT

Alexander Turenko in Tarantool
Мне кажется, ты подразумеваешь временное выключение write-запросов.
источник

AT

Alexander Turenko in Tarantool
В общем, неважно.
источник

AT

Alexander Turenko in Tarantool
Есть общий кейс, есть частности.
источник

AK

Alexey Kuzin in Tarantool
Alexander Turenko
Если ты хочешь бесшовное обновление, то должен обе схемы поддерживать какое-то время.
Новые соединения получают нов схему, старые работают со старым сервером по старой пока все запросы не пройдут
источник

AT

Alexander Turenko in Tarantool
У тебя старый и новый в одном репликасете?
источник