|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Поздравляю! :) Анатолий (weltling) там человек добрый, русский, работает в MS, Германии. Наверное отвечает за php под windows, во многом помогал при правке багов. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2018, 19:11 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Наконец-то в ветку PHP 7.4 приняли мой патч для нативной поддержки типа BOOLEAN во входных параметрах PDO firebird support type Boolean in input parameters ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2019, 17:31 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Симонов ДенисНаконец-то в ветку PHP 7.4 приняли мой патч для нативной поддержки типа BOOLEAN во входных параметрах PDO firebird support type Boolean in input parameters Поздравляю ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2019, 18:00 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
В PHP 7.4 PDO будет поддерживать базы данных в 1 диалекте. Мой патчи применили Add support for Interbase 1 dialect ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2019, 09:19 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Dorin Marcoci Насчет execute block и обработка параметров, вот что есть щас: https://gist.github.com/madorin/83300eaf3d9044bc6e56a710b3700368 new_sql - полученный результат, в хэш списке - именные параметры. Логика там простая и быстрая, но есть проколы, например не учитывает и комменты (--, /* */). Супер навороченный парсер/лексер врядли там понадобится но хочется красивое решение. Нужно в начале определить если "execute block (" и обработать до ")" с существующем алгортиме и все что после передать как есть. Надо еще учитывать комменты, пробелы, табы и ретурны LF/CRLF. Все гики и параноики по оптимизации приветствуется :) hvlad Dorin MarcociНасчет execute block и обработка параметров https://github.com/FirebirdSQL/firebird/blob/master/src/jrd/extds/ExtDS.cpp см. Statement::preprocess() и getToken() строки с 1001 по 1240 сделал https://github.com/php/php-src/pull/4920 вроде работает. Осталось дождаться ревьювера и оформить по их правилам, и написать тесты. Владу спасибо за подсказку ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2019, 17:10 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
;) Денис, это невероятно круто, спасибо за труд! Есть еще какие-то косяки помню с транзакциями (параметры и несколько паралельных) и вообще получится конфетка. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2019, 16:28 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Dorin Marcoci, ну пока это не приняли, я ничего нового делать не буду. Там это рихтовать скорее всего ещё придётся. Если вспомнишь в чём именно косяки посмотрю потом. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2019, 16:36 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Dorin Marcoci, если ты про несколько транзакций внутри соединения, то на это проще забить. PDO архитектурно этого не поддерживает, ибо интерфейс у него обобщённый на разные СУБД. А такое поддерживает только 2 (IB и FB). Впрочем в пыхе оно и не сильно надо ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2019, 16:41 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Симонов Денис если ты про несколько транзакций внутри соединения, то на это проще забить. PDO архитектурно этого не поддерживает, ибо интерфейс у него обобщённый на разные СУБД. А такое поддерживает только 2 (IB и FB). Впрочем в пыхе оно и не сильно надо Это я знаю ) но думал теоретически может как в файрдаке добавить какой-то PDOTransaction обьект Еще параметры транзакций были вшиты как read-commited или точно помню что там было что-то, проверю ) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2019, 17:00 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Dorin MarcociЭто я знаю ) но думал теоретически может как в файрдаке добавить какой-то PDOTransaction обьект теоретически можно, но боюсь коммунити такое изменение зарежет на корню. Ибо этот PDOTransaction надо передавать в PDOStatement::execute. А не так как сделали в ibase_ (они к prepare привязали) Лучше уж тогда написать нормальный нативный драйвер. Dorin MarcociЕще параметры транзакций были вшиты как read-commited или точно помню что там было что-то, проверю ) там SNAPSHOT. Если нужны другие уровни изолированности, то можно стартовать транзакцию через Код: php 1.
по идее. Надо проверить кстати работает ли. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2019, 17:47 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Было бы удобно передать изолированность транзакции в конструкторе PDO обьекта. Другие драйверы делают что-то подобное. public PDO::__construct ( string $dsn [, string $username [, string $passwd [, array $options ]]] ) << здесь Кто-то даже начал очень давно такое: https://github.com/php/php-src/blob/e208d236b3f8af855e219ea3abc796b8dd9d0d5d/ext/pdo_firebird/firebird_driver.c#L276 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2019, 19:20 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Симонов Денис теоретически можно, но боюсь коммунити такое изменение зарежет на корню. Ибо этот PDOTransaction надо передавать в PDOStatement::execute. А не так как сделали в ibase_ (они к prepare привязали) Можно же менее хардкорно, например Код: php 1. 2.
И весь существующий код будет работать и не мешать другим :) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2019, 21:37 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Dorin Marcoci, а толку то? Ещё повторю подготовленные запросы не привязаны к транзакции и далее могут выполняться сколько угодно раз в разных транзакциях ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2019, 22:19 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Симонов Денис подготовленные запросы не привязаны к транзакции ок, а так? тоже не ломает совместимость. Код: php 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2019, 11:59 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
ну наконец-то применили мой патч Fix #64937: Firebird PDO preprocessing sql Теперь в PHP 8.0 - параметры внутри однострочных и многострочных комментариев игнорируются - можно выполнять операторы {CREATE [OR ALTER] |ALTER|RECREATE} {PROCEDURE|FUNCTION}. Двоеточие внутри тела процедуры, функции, триггера, анонимного блока или пакета не рассматривается как маркер параметра. Для заголовков EXECUTE BLOCK происходит отдельная обработка (параметры обрабатываются только между EXECUTE BLOCK и AS). Теперь этот оператор можно смело использовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2020, 09:13 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Симонов Денис ну наконец-то применили мой патч ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2020, 10:41 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Симонов Денис, молодец ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2020, 10:49 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Симонов Денис Для заголовков EXECUTE BLOCK происходит отдельная обработка (параметры обрабатываются только между EXECUTE BLOCK и AS) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2020, 18:33 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Здравствуйте. Осваиваю работу с FB через PDO. Пока не понял как правильно работать с транзакциями. Можно ли по дефлоту всегда использовать режим read commited, nowait? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2021, 15:46 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
avp_ Можно ли по дефлоту всегда использовать режим read commited, nowait? ответ: нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2021, 15:56 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
avp_, можно, а зачем? Чем не устраивает стандартный SNAPSHOT? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2021, 16:00 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
avp_, собственно, Денис уже ответил, а вся другая дока по ФБ на русском (включая его статью) есть тут http://www.ibase.ru/develop/ ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2021, 18:52 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
kdv> есть тут http://ibase.ru/develop/ Ты бы когда дизайн менял лучше бы контент (структуру) причесал: - почему раздел (адрес) документация называется "develop", а не doc[umentaion]? сделай редирект, это ведь несложно; - почему он вообще идёт подразделом раздела "Статьи", а не отдельным пунктом? - почему библиотеки, драйверы (не статьи о них, а ссылки) и пр. идут в разделе "Статьи"? Ну и т.д. Понятно, что так колхоз исторически сложился, но таки 2021 год на дворе... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2021, 22:17 |
|
|
start [/forum/topic.php?fid=40&msg=40002447&tid=1559821]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
51ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 178ms |
0 / 0 |