The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Один из разработчиков MySQL раскритиковал проект и рекомендовал использовать PostgreSQL, opennews (??), 06-Дек-21, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


75. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от funny.falcon (?), 06-Дек-21, 14:31 
А можно ссылочки на развал БД при краше?
Ответить | Правка | Наверх | Cообщить модератору

96. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  –2 +/
Сообщение от Наме (?), 06-Дек-21, 16:10 
> А можно ссылочки на развал БД при краше?

Разверни. Запусти длительную транзакцию, не завершая её выруби питание. Т.к. данные UNDO скорее всего в полном объёме не попадут в журнал, то при обратном проигрывании при восстановлении получить несогласованную БД. Тут должны, конечно, звёзды сойтись. Чтобы грязные блоки уже попали на диск, но при этом вектор UNDO ещё нет. Но во "взрослых" СУБД это принципиально невозможно, а в Инно вполне под рабочей нагрузкой. Хотя это практически, объективно говоря, маловероятно, но при случае проблем при восстановлении добавит.

Ответить | Правка | Наверх | Cообщить модератору

119. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от nik (??), 06-Дек-21, 19:57 
че за бред ?? -- все изменения в данных и в том же UNDO сохраняются в REDO, и пофиг длинная там транзакция или короткая, при сбросе питания все откатится до последнего COMMIT, а то что "не успело" -- вернется в пред. состояние из UNDO.
Ответить | Правка | Наверх | Cообщить модератору

141. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от Мимо_проходил (?), 06-Дек-21, 21:09 
> че за бред ?? -- все изменения в данных и в том
> же UNDO сохраняются в REDO, и пофиг длинная там транзакция или
> короткая, при сбросе питания все откатится до последнего COMMIT, а то
> что "не успело" -- вернется в пред. состояние из UNDO.

Нет, это не так. Возможны состояния, когда UNDO не оказалось в REDO, а изменённые блоки уже на диске.

Ответить | Правка | Наверх | Cообщить модератору

133. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от Онаним (?), 06-Дек-21, 20:55 
Бред.
Ну или эксплуатация на системе, не умеющей в write barrier - там что угодно развалится, не только InnoDB.
Ответить | Правка | К родителю #96 | Наверх | Cообщить модератору

139. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от Мимо_проходил (?), 06-Дек-21, 21:07 
> Бред.
> Ну или эксплуатация на системе, не умеющей в write barrier - там
> что угодно развалится, не только InnoDB.

Словья-то какие воспроизводим. Ещё бы знали, что это значит )))) Write barrier тут вообще не причём. Причём тут то, что Inno не обеспечивает WAL для UNDO. Вот и всё. Сделано это из соображений, да, скорости. И, в общем, имеет право на жизнь.

Ответить | Правка | Наверх | Cообщить модератору

140. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от Онаним (?), 06-Дек-21, 21:08 
Короче я не знаю, как ты умудрился InnoDB развалить - у меня за долгие годы не получилось.
Ответить | Правка | Наверх | Cообщить модератору

195. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от 1 (??), 07-Дек-21, 11:21 
У тебя просто не было длинных транзакций ...

А так разваливается и при резком выключении питания (гасится ИБП) так и при нехватке свободного места ... гасится мониторингом.

А так ... Ну что спорить-то какой нож лучше ?

Ответить | Правка | Наверх | Cообщить модератору

220. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от Онаним (?), 07-Дек-21, 15:28 
Ну короче да, смысла спорить нет - я хз как вы умудряетесь InnoDB развалить, видимо руки должны быть правильно заточены.
Ответить | Правка | Наверх | Cообщить модератору

142. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от Онаним (?), 06-Дек-21, 21:10 
И что значит при чём тут WB.
Когда двиг выставляет fsync()/fdatasync()/sync_file_range(), он ожидает, что на диске к моменту завершения будет всё, что он отписал, и заказал. Если WB нет - с энной вероятностью хрен оно будет на диске вовремя, и рандомное выключение приведёт к интересному.
Ответить | Правка | К родителю #139 | Наверх | Cообщить модератору

143. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от Онаним (?), 06-Дек-21, 21:20 
Ну и да, какой WAL для UNDO вы вообще собрались писать, если к моменту коммита в REDO данные только в REDO. Далее его флашим в таблицу как придётся, когда по нагрузке посвободнее например, даже если что-то отвалится, делаем рефлаш. Двойная нагрузка на флаш, ещё и с чтением из REDO, если из буфера вылетело, выйдет только когда REDO заполнен.

Это две разные парадигмы - либо пишем в REDO и флашим в таблицу потом, либо сразу пишем в таблицу и далее начинаются пляски с UNDO: мы либо переносим, и тогда получаем двойную нагрузку в момент транзакции, либо как в постгресном, пишем CoW'ом, и тогда надо вакуумить. Если у нас UNDO есть, REDO уже не нужен.

Ответить | Правка | К родителю #139 | Наверх | Cообщить модератору

144. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от Онаним (?), 06-Дек-21, 21:26 
Могу ещё подсказать как без WB редо развалить.

Всё не просто, а очень просто: мы флашим редо, выставляем синк на таблицу, выставляем синк на поинтеры редо. Если таблица на диск не попала, а поинтеры внезапно попали - имеем лютый 3.14ц, в таблице старые данные, в редо уже ничего.

С андо попроще, с андо корова конечно решает, но зато корову вакуумить надо регулярно.

Ответить | Правка | К родителю #139 | Наверх | Cообщить модератору

155. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от Онаним (?), 06-Дек-21, 23:18 
Похоже как раз на частичный коммит REDO в отсутствии WB.
Ответить | Правка | К родителю #96 | Наверх | Cообщить модератору

156. "Один из разработчиков MySQL раскритиковал проект и рекомендо..."  +/
Сообщение от Онаним (?), 06-Дек-21, 23:18 
Ну или fsync кто-то бездумно выключил xD
Ответить | Правка | К родителю #96 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру