powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / InnoDB - отмена запроса
11 сообщений из 11, страница 1 из 1
InnoDB - отмена запроса
    #38475239
qwerp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть таблица InnoDB с миллиардом записей.

С ней ошибочно производится массовая (затрагивающая все записи т.е. с пустым условием WHERE) операция UPDATE (скажем, "UPDATE test SET field1 = field1 + 1").

Через несколько секунд после отправки этой команды человек обнаруживает ошибку и останавливает процесс: KILL <номер процесса>.

Последующее сравнение таблицы c её архивной версией (месячной давности) показывает отсутствие расхождений по полю field1.

Есть ли гарантия, что и среди остальных записей (младше одного месяца, по которым нет архива) ни одна запись не изменилась?
...
Рейтинг: 0 / 0
InnoDB - отмена запроса
    #38475256
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwerp, исходя из принципов заложенных в innodb , при условии стандартных настроек, изменения убитой таким образом транзакции, не должны сохраниться.
однако, например, поискав в багтрекере можно найти много всякого разного не работающего: http://bugs.mysql.com/bug.php?id=45309, http://bugs.mysql.com/bug.php?id=68051.

"Полную гарантию может дать только господь бог и страховой полис".
...
Рейтинг: 0 / 0
InnoDB - отмена запроса
    #38475273
qwerp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В архивной таблице 900 млн записей, в рабочей около миллиарда. Если среди 900 млн записей никаких изменений нет, то какова вероятность, что среди остальных 100 млн записей есть изменившиеся? Вообще, в каком порядке производится обновление записей при пустом WHERE? Ведь старые записи должны обновиться раньше новых (с учётом, что операций удаления никогда не было т.е. записи находятся в том порядке, в котором добавлялись в таблицу)?
...
Рейтинг: 0 / 0
InnoDB - отмена запроса
    #38475274
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Если среди 900 млн записей никаких изменений нет, то какова вероятность, что среди остальных 100 млн записей есть изменившиеся?
50%. либо изменились, либо нет.

Да откуда нам знать что там у вас за условиях, какие настройки и как оно все там на самом деле было?


>Вообще, в каком порядке производится обновление записей при пустом WHERE?
в произвольном.
...
Рейтинг: 0 / 0
InnoDB - отмена запроса
    #38475275
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwind>Вообще, в каком порядке производится обновление записей при пустом WHERE?
в произвольном.
хотя нет, если речь об innodb, то в порядке первичного ключа. явного либо суррогатного.
...
Рейтинг: 0 / 0
InnoDB - отмена запроса
    #38475278
qwerp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, ещё: проведённый эксперимент (отправка такой же команды UPDATE и убой процесса) на той же машине, с той же самой субд, той же версии, с теми же настройками - показывает отсутствие всяких изменений после убоя процесса.

Вопрос в том, могли ли (с некоторой вероятностью) какие-то из 100 млн записей, которых нет в архиве, всё же измениться?
...
Рейтинг: 0 / 0
InnoDB - отмена запроса
    #38475279
qwerp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwindхотя нет, если речь об innodb, то в порядке первичного ключа. явного либо суррогатного.Первичный ключ - автоинкрементный integer.
...
Рейтинг: 0 / 0
InnoDB - отмена запроса
    #38475344
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwerpДа, ещё: проведённый эксперимент (отправка такой же команды UPDATE и убой процесса) на той же машине, с той же самой субд, той же версии, с теми же настройками - показывает отсутствие всяких изменений после убоя процесса.

Вопрос в том, могли ли (с некоторой вероятностью) какие-то из 100 млн записей, которых нет в архиве, всё же измениться?

Могли. С некоторой вероятностью. Хотя по задумке и не должны.

Зачем спрашивать одно и то же 10 раз ?Вы чего тут пытаетесь добиться ? Пацанам покажете ответы и тогда вас оставят в живых ?
...
Рейтинг: 0 / 0
InnoDB - отмена запроса
    #38476083
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwindqwerp, исходя из принципов заложенных в innodb , при условии стандартных настроек, изменения убитой таким образом транзакции, не должны сохраниться.
однако, например, поискав в багтрекере можно найти много всякого разного не работающего: http://bugs.mysql.com/bug.php?id=45309, http://bugs.mysql.com/bug.php?id=68051.

"Полную гарантию может дать только господь бог и страховой полис".

а вот те правда жизни. Страховой полиз даёт не гарантию а обещание!
(если я беру у тебя сбор на общий телефон и сможеш им звонить когда надо - это обещание. если я оставлю взамен кожанные новые сапоги с условием - они твои если я тебе не дам общим телефоном позвонить - вот это будет гарантия!)


ну а господь бог, ...как говорят - если человек даёт обещания богу - это религия, если бог чтото обещает человеку - это психиатрия!
...
Рейтинг: 0 / 0
InnoDB - отмена запроса
    #38476320
Arhat109
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex564657498765453,

+5. Только осталось непонятно: "психиатрия" - у того кто услышал или у бога? :)
...
Рейтинг: 0 / 0
InnoDB - отмена запроса
    #38476343
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex564657498765453, автором этой фразы был был Альберт Эйн Остап Бендер.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / InnoDB - отмена запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]