powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / PDO Firebird bugs
25 сообщений из 222, страница 8 из 9
PDO Firebird bugs
    #40072598
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

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

И вообще. Любой редирект - один хрен старая ссылка навечно. Потому что если ее поменять, как делают некоторые, ВСЕ ссылки на эту страницу извне протухают.
Колхоз-шмалхоз, лично мне до лампы, как эти ссылки называются. Статьи потому что в Документации тоже статьи.

По опыту - никто нихрена явно ссылок не помнит (кроме меня), сколько ни показывай или повторяй. Работает только явное указание на разделы от корня - "зайдите сюда, ткните сюда, и вот тут оно будет". И я сам, кстати, именно так и делаю.

Конечно, я могу сделать www.ibase.ru/doc/ . Только это doc чего? ibase.ru? Firebird? Embarcadero? ibase.com.tw?
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072680
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv> Потому что если ее поменять, как делают некоторые,
kdv> ВСЕ ссылки на эту страницу извне протухают.

ЯННП. Что протухает, если старая ссылка
(адрес) редиректится на новую страницу?

> Конечно, я могу сделать www.ibase.ru/doc/ .
> Только это doc чего? ibase.ru? Firebird?

ibase.ru конечно. Щас он чего develop Документация ?


P.S. В общем, если не надо - и хрен с ним.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072683
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

ок, тогда сделаем шаг назад.
Документация находится по ссылке /develop/, а надо чтобы /doc/ или /documentation/. Это чтобы что? Чтобы было красиво, или ...?
У меня механизм хождения по сайтам такой - я открываю либо центральный сайт, либо сохраненную ссылку внутрь сайта.
И мне до лампочки как там называются ссылки, если я тыкаю в страницы.
Поэтому я вот этой мысли про "красивый редирект" не очень понимаю.

Просто вот пример. Была статическая страница ibase.ru/gbak.html (или htm, уже не помню). При переводе на динамику ее сделали
ibase.ru/gbak/. Однако, понятно, на куче сайтов есть старые ссылки на gbak.html. Делаем редирект, с gbak.html на /gbak/, чтобы не выдавало 404
(в конкретном примере данный редирект куда-то пропал, х.з. по чему, надо перепроверять все редиректы).

Так. Теперь, делаем редирект с несуществующего /doc/ на существующий /develop/ (или как?). Теперь у нас ДВЕ ссылки, которые - одна уже массово расползлась (старая), и новая, которая будет расползаться. Допустим, меняем физически - /doc/ существует а /develop/ стал редиректом. Но /develop/ все равно будет существовать на туче внешних сайтов, еще хрен знает сколько лет.
То есть, красота не спасает мир. И зачем тогда это всё?
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072692
Dorin Marcoci
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
@kdv, а чего боятся редиректов? Главное чтобы были обоснованные.
Можно просто в нгинксе сделать отдельный от сайта резолвер с большим списком если не находит изначально линк.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072696
ggreggory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На статьи ibase часто ссылаются, лучше не трогать. А то будет как с microsoft.com: сколько не находишь на форумах ссылок на материалы, чуть более старые всегда ведут в "пустоту".
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072708
avp_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис
avp_,
Чем не устраивает стандартный SNAPSHOT?


Т.е. если у меня на странице 10 читающих запросов, то при её построении будет запущено и закоммичено 10 снапшотных пишущих транзакций? Флаг read_only однако полезно было бы по дефлоту использовать.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072710
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
25.05.2021 12:54, avp_ пишет:
> Флаг read_only однако полезно было бы по дефлоту использовать.

кто мешает использовать его НЕ по дефолту?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072717
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
avp_Т.е. если у меня на странице 10 читающих запросов, то при её построении будет запущено и
закоммичено 10 снапшотных пишущих транзакций?

Нет, только если ты сделаешь идиотскую схему "каждому запросу отдельную транзакцию".

avp_Флаг read_only однако полезно было бы по дефлоту использовать.

Любая транзакция по дефолту read_only пока ничего не записала.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072718
avp_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При попытке явного управления из статьи выдаёт странную ошибку:
Код: php
1.
2.
3.
$db = new PDO($dbname, $dbuser, $dbpass,  [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,  PDO::ATTR_PERSISTENT => true]);
$db->setAttribute(PDO::ATTR_AUTOCOMMIT, false);
$db->exec("SET TRANSACTION READ ONLY ISOLATION LEVEL READ COMMITTED NO WAIT");


Код: plaintext
1.
Fatal error: Uncaught PDOException: SQLSTATE[HY000]: General error: -104 Dynamic SQL Error SQL error code = -104 Token unknown - line 1, column 61 WAIT
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072720
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не управляй транзакциями через SQL, для этого есть методы.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072721
avp_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov

Нет, только если ты сделаешь идиотскую схему "каждому запросу отдельную транзакцию".

Почему? Autocommit же по умолчанию включен?

Dimitry Sibiryakov

Любая транзакция по дефолту read_only пока ничего не записала.

Это больше из соображений гигиены. Зачем куче читающих запросов давать потенциально пишущую транзакцию?
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072722
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
avp_,

ещё раз спрашиваю. Чем это плохо?
В Firebird 3.0 счётчик транзакций довольно большой, так что лишний старт транзакции ничем не грозит.
Если вам надо стартовать одну транзакцию на несколько запросов, то это можно сделать только явно.

Опять же не вижу причин использовать другие уровни изолированности и READ ONLY. Дело в том что в PHP транзакции долго не живут. В том смысле, что они не живут вечно. Транзакция в любом случае будет завершена после смерти php скрипта.

Это тебе не Дельфи где открыл грид, он отфетчил 500 записей из миллиона и держит транзакцию активной, пока любо приложение не завершили, либо грид не закрыли.

Даже если вам всё-таки потребовалось использовать транзакции с параметрами отличными от умолчательных, я показал как это можно сделать. Сам по себе голый PDO не удобно использовать, поэтому вы можете написать свою обёртку вокруг него и использовать такие транзакции какие захотите.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072723
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
avp_Autocommit же по умолчанию включен?

С этим - к PHP. У Firebird он по молчанию выключен.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072725
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
avp_
При попытке явного управления из статьи выдаёт странную ошибку:
Код: php
1.
2.
3.
$db = new PDO($dbname, $dbuser, $dbpass,  [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,  PDO::ATTR_PERSISTENT => true]);
$db->setAttribute(PDO::ATTR_AUTOCOMMIT, false);
$db->exec("SET TRANSACTION READ ONLY ISOLATION LEVEL READ COMMITTED NO WAIT");


Код: plaintext
1.
Fatal error: Uncaught PDOException: SQLSTATE[HY000]: General error: -104 Dynamic SQL Error SQL error code = -104 Token unknown - line 1, column 61 WAIT


а вот это я могу глянуть, как время появится
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072728
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
avp_,

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

Вот только делать это долго и муторно. Опять лезть и разбираться в ужасном сишном коде, брррр. Последний раз туда год назад заглядывал.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072733
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисВ Firebird 3.0 счётчик транзакций довольно большой, так что лишний старт транзакции ничем не грозит.
В 3.0 - да, но ... высокая частота старта транзакций = нагрузка на header page, а значит появление тормозов на блокировке к единственной странице.
Собственно, еще на ИБ 5.6 "чинил" одну базу - там веб-приложение, и разраб сделал формирование веб-страницы в одной транзакции (вытаскивание элементов из базы). Потом или другой пришел, или этому что стукнуло, и типа автокоммита включил или неявных транзакций.
И ... за неделю кончился счетчик транзакций. Не 2млрд, как должно быть, а из-за бага 5.6 с размером страницы там было где-то в 8 раз меньше. Но тем не менее.

Еще видел однопользовательское приложение, которое каким-то образом фигачило по 500 тыщ транзакций в день.
Проработало три года, доехало до 500млн транзакций, TIP стал размером 130 мегабайт (вся база была где-то 600мб). Зачем такое надо?
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072739
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvTIP стал размером 130 мегабайт (вся база была где-то 600мб).

Лет 10-15 назад я предлагал освобождать старые TIP, но всем лень.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072743
Fr0sT-Brutal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kdv
Симонов ДенисВ Firebird 3.0 счётчик транзакций довольно большой, так что лишний старт транзакции ничем не грозит.

В 3.0 - да, но ... высокая частота старта транзакций = нагрузка на header page, а значит появление тормозов на блокировке к единственной странице.
Очень интересно! Сейчас как раз воюю со случайными затормаживаниями старта транзакций (на 2-4 сек!) при частоте ~ 80 тр/сек. Не с этим ли связано?
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072748
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тормоза на 2-4 секунды могут дать только триггера с обращениями к таблицам мониторинга.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072754
Fr0sT-Brutal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

Тормоза на 2-4 секунды могут дать только триггера с обращениями к таблицам мониторинга.

Триггер на транзакцию есть, но там просто проверка параметров. 2-3 Rdb$Get_Context и сравнений.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072756
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv> Так. Теперь, делаем редирект с несуществующего /doc/
kdv> на существующий /develop/ (или как?)

Ниаборот! (с)


kdv> Но /develop/ все равно будет существовать на туче
kdv> внешних сайтов, еще хрен знает сколько лет.
kdv> То есть, красота не спасает мир. И зачем тогда это всё?

Да, нехай будет как есть.
И так сгодится. (с)
Так и живём.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072818
avp_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если я просто сделаю так
Код: php
1.
$db->setAttribute(PDO::ATTR_AUTOCOMMIT, false);


то как работать в таком режиме?
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072821
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
avp_как работать в таком режиме?

"В соответствии с документацией" не предлагать?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072850
avp_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov

"В соответствии с документацией" не предлагать?..


При снятии режима autocommit первый же запрос даёт ошибку:

Fatal error: Uncaught PDOException: SQLSTATE[HY000]: General error: -901 Dynamic SQL Error SQL error code = -901 invalid transaction handle (expecting explicit transaction start)
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #40072857
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтобы документация подействовала - её надо читать. Понюхать, полизать и на хвост нанизать
недостаточно, как мы все знаем из классики.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
25 сообщений из 222, страница 8 из 9
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / PDO Firebird bugs
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (2): Анонимы (1), Yandex Bot 7 мин.
Читали форум (3): Анонимы (1), Bing Bot 3 мин., Yandex Bot 7 мин.
Пользователи онлайн (6): Анонимы (4), Yandex Bot, Bing Bot 1 мин.
x
x
Закрыть


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