powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Каков механизм порчи базы?
19 сообщений из 44, страница 2 из 2
Каков механизм порчи базы?
    #39016154
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ques,

это не ошибка.

SQL> COMMIT;
-- в этом месте во избежание DEADLOCK-а останавливаем апдейты в клиентском приложении
SQL> UPDATE TBL SET BLAH_BLAH_BLAH = 0;
-- запускаем клиентские апдейты
-- на самом в этом месте приложение уже успело навтыкать много новых записей
SQL> COMMIT;
-- никаких ошибок нет, во всех записях значение поля BLAH_BLAH_BLAH должно равняться 0
-- да щаз смотри выше
SQL> SELECT COUNT(*) FROM TBL WHERE BLAH_BLAH_BLAH IS NULL;
COUNT
============
74
-- имеются записи, в которых значение BLAH_BLAH_BLAH есть NULL
-- что подтверждает выше сказанное
SQL> COMMIT;
SQL>

Теперь закрываем клиентское приложение и выходим из ISQL
Опять заходим в ISQL
Пока ты думал оно ещё навставляло

SQL> SELECT COUNT(*) FROM TBL WHERE BLAH_BLAH_BLAH IS NULL;

COUNT
============
5070
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016157
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗимарглТак что свои фантазии вы либо изо рта не вытаскивайте, либо обратно в ***у засуньте.Почитай на досуге фантазии, выдуманные из пальца вот в этих тикетах ФБ-трекера:
429
467
916
1032
1093
1208
1289
1800
2167
2253
2283
2696
3082
3279
3529
3574
3610
3660
3700
4783
4800

И пусть твой хрустальный самолёт linter никогда не напорется на что-либо из перечисленного.
Удачи на дорогах, наездник.
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016158
ques
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денисэто не ошибка.

Ну, тогда вопрос закрыт.
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016159
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ques,

нет не закрыт. То что ты описал это вполне нормально. А вот это

quesПосле коммита запрос count(*) этой таблицы вызывает ошибку. gfix показал наличие большого количества wrong page type. Опция -mend базу не вылечила. Пришлось восстанавливаться из ночного бекапа.

нет
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016160
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

например - CORE-2696, Фернандо вроде склероз поразил, потому что default у добавленного столбца выводится, но не хранится.

То есть, на грабли легко можно попасть создав
add field int not null default 0.
После добавления мы увидим якобы 0 в добавленном столбце, а на самом деле этого столбца физически не существует в записях старого формата.

Мне кажется, что проблемы такого типа весьма геморройны в решении. И "защита от дурака" тут разве что запретительная, или запретительно-принудительная. Например - добавил столбец, значит с этого мгновения:
- всем, кто не видит новый формат записи, категорически запретить записи менять
- принудительно сделать update всем (миллионам, миллиардам) записям такой таблицы.

А потом, ласково поглаживая по голове "умельца", спросить - ну что, понравилось тебе на ходу метаданные менять? :-)
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016161
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

когда-то были баги, при которых после изменения метаданных (даже просто триггеров таблицы) в многопользовательской среде портилась база. Но несколько не так, т.е. не с такими как у автора последствиями. Либо автор не про 2.5.4 говорит.
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016162
ques
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Дениснет не закрыт

К сожалению, воспроизвести ошибку не удалось. Как с порчей базы, так и с непонятным сообщением о нарушении уникальности, которой быть по идее не должно.

Вот думаю, размер БД может играть значение? Убитая БД была размером 14 GB.
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016163
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
quesразмер БД может играть значение?
нет, не может.
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016164
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
quesс непонятным сообщением о нарушении уникальности, которой быть по идее не
должно.
Эту-то ошибку воспроизвести легко: просто выполни свой "ALTER TABLE TBL ADD BLAH_BLAH_BLAH
INTEGER" два раза подряд.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016166
ques
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kdvЛибо автор не про 2.5.4 говорит.

Server version: WI-V6.3.3.26780 Firebird 2.5
Client library version: 6.3.3.26780
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016168
ques
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakovquesс непонятным сообщением о нарушении уникальности, которой быть по идее не
должно.
Эту-то ошибку воспроизвести легко: просто выполни свой "ALTER TABLE TBL ADD BLAH_BLAH_BLAH
INTEGER" два раза подряд.


Кстати, вполне возможно. Извиняюсь, был напуган :-)
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016169
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
queskdvЛибо автор не про 2.5.4 говорит.

Server version: WI-V6.3.3.26780 Firebird 2.5
Client library version: 6.3.3.26780Это 2.5.3
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016172
ques
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hvladЭто 2.5.3

Э-э-э... Это версия FB у меня дома. Завтра уточню, какая именно версия в продакшн.
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016225
fb user
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ques7. Выясняется, что в таблице имеется какое-то количество записей, в которых значение добавленного поля NULL.
Неожиданно. Более предпочтительным было бы если бы значение не затиралось.
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016261
oleg_m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
архитектура сервера может влиять?
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016384
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvнапример - CORE-2696, Фернандо вроде склероз поразил, потому что default у добавленного столбца выводится, но не хранится.

То есть, на грабли легко можно попасть создав
add field int not null default 0.
После добавления мы увидим якобы 0 в добавленном столбце, а на самом деле этого столбца физически не существует в записях старого формата.
так было раньше, в 3.0 такое невозможно. Так что никакого склероза нет. И теперь дефолты привязаны к формату и таки хранятся. В общем, отстал ты от жизни :-)
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016392
ques
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
queshvladЭто 2.5.3

Э-э-э... Это версия FB у меня дома. Завтра уточню, какая именно версия в продакшн.

Уточнил:
WI-V2.5.4.26856 Firebird 2.5
Установлен как Classic Server
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39016534
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
анонимосы всегда гонят пургу насосом.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Каков механизм порчи базы?
    #39017347
ques
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мимопроходящийанонимосы всегда гонят пургу насосом.

А если бы я зарегистрировался и написал все то же самое, то это уже не было бы пургой?
...
Рейтинг: 0 / 0
19 сообщений из 44, страница 2 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Каков механизм порчи базы?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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