215 похожих чатов

И второй вопрос - в случае восстановление данных ноды не

через WAL а через скачивание snap - в этом случае получается before_replace не вызывается на каждой записи?

3 ответов

23 просмотра

зависит от того момента, в который поставлен триггер. начиная с 2.* есть триггер box.ctl.on_schema_init() который вызывается в момент когда собрана схема, и появился box.space но сам снапшот еще не прочитан. внутри него можно выставить пирамиду триггеров, чтобы поставить *_replace на спейс до начала чтения данных самого спейса из снапшота. но я надеюсь, так никто не делает. в 1.10 так сделать технически нельзя, поэтому да, при подъеме из снапов/джойне новой реплики триггеры не могут работать

Игрь-Минеев Автор вопроса

> но я надеюсь, так никто не делает Изначальная задача - иметь такую БД чтобы все записи удовлетворяли некоторому локальному условию. При том возможен византийский отказ. В таком случае на 1.10 нужно после восстановления из snap пройтись по всем записям видимо?

Игрь Минеев
> но я надеюсь, так никто не делает Изначальная з...

в случае 1.10 просто и отказоустойчиво сделать кажется не выйдет. имеет смвсл обновиться на 2.10-2.11 там хоть пирамиду триггеров можно построить. с другой стороны, если получится гарантировать, что в снапшоте всегда исполняется требуемое локальное условие — то перепроверять сам снапшот не нужно. то есть, все что легло в диск (снапшот и хлоги) всегда приведут базу к корректному локальному состоянию

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта