|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Щас проверим, знаю только что при insert returning тип тоже был isc_info_sql_stmt_exec_procedure. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 13:17 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Симонов ДенисПавел Ишенин, запросы с returning возвращают isc_info_sql_stmt_exec_procedure Спасибо, не знал об этом. Тогда видимо проблем с патчем Dorin Marcoci быть не должно. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 13:23 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Все работает правильно: Код: php 1. 2. 3.
Курсор не открывается. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 13:23 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Денис, вчерашняя статья на хабре учетная, поздравляю! Кстати, нужно добавить доддержку файра и для Doctrine. Очень многие фрэймворки используют ее, и следовательно будет и продвижение. Вот в phpbb3,4 выкинули поддержку :( Получается DBMS хорошая, а продвижение и маркетинг - почти ноль. А то, будет медленно умирать как десктопная дб для делфи... Или может нанять маркетолога. Еще и сайт файра на бутстрапе чтоб респонсив был. Заодно и где-то и список сайтов, built with Firebird :) У нас есть кучка. Вот такой вот маленький оффтоп. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 13:40 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Dorin Marcoci, Спасибо. Как только исправление по returning попадёт в драйвер PDO, выпилю кусок гавнокода из моего драйвера Laravel, а то там для тройки прыжки в ширину приходилось делать. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 13:55 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Хэллоу! Все проснулись? С праздником! Я пилил в своем брэнче фичу чтоб целые типы (SMALLINT, INTEGER, BIGINT) возвращались как целые в PHP а не как щас - строки. Если кому-то интересно протестировать, буду очень рад, так как не хочется сломать что-то другое, особенно на x86. Исходники: https://github.com/madorin/php-src/tree/fb_native ... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2017, 18:14 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Dorin MarcociХэллоу! Все проснулись? С праздником! Привет. Я и не ложился. С праздником тебя!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2017, 18:38 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Денис, сегодня вышел 7.0.15 и 7.1.1 с * Fixed bug #72931 (PDO_FIREBIRD with Firebird 3.0 not work on returning statement). ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2017, 17:26 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Dorin Marcoci, отлично. Спасибо. Подкручу свой модуль для Laravel ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2017, 17:41 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Добавил поддержку булеан полей: https://github.com/php/php-src/pull/2522 Testers are welcome :) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2017, 17:38 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Заметил утечку памяти при работе с blob-полями (тестировалось на Yii). Сделаю на днях тест на чистом pdo_firebird. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2018, 16:50 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Павел Ишенин, с этим не сюда, а в Yii. Если бы утечка была в ФБ, об этом давно было бы известно и исправлено. А так - хрен знает что компонентописатели пишут. Может и с утечкой. Но исправлять-то тогда Yii надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2018, 19:12 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
kdv, не в fb и не Yii, а в pdo драйвере. Раз уж Dorin Marcoci взялся в нём ошибки править, то логично к нему постучаться. Само сообщество PHP довольно вялое. По крайней мере баги в PDO драйвере для Firebird них не в приоритете, вот если в mysql-ом драйвере ошибку нашли то реагируют значительно быстрее. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2018, 19:38 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Yii тут не причем. Вот код на чистом php: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
Вот итоги использования памяти: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2018, 04:38 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Забыл добавить, что тестировалось на php 7.1.18 windows. В таблице 2 блоб поля для которых используется следующий домен: Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2018, 05:03 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
При анализе кода pdo_firebird вот первое за что цепляется глаз: Код: plaintext 1.
Зачем там erealloc? Разве где-то память выделяется ранее? И если нет, то всегда ли там null? Под все остальные типы используется следующая конструкция: Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2018, 06:19 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Симонов Денисkdv, не в fb и не Yii, а в pdo драйвере. Раз уж Dorin Marcoci взялся в нём ошибки править, то логично к нему постучаться. Само сообщество PHP довольно вялое. По крайней мере баги в PDO драйвере для Firebird них не в приоритете, вот если в mysql-ом драйвере ошибку нашли то реагируют значительно быстрее. самым правильным вариантом будет найти утечку, исправить и сделать пул реквест ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2018, 08:26 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
как минимум зарепортить, если такого тикета еще нет ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2018, 08:26 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Дегтярев Евгений, Для начала хотелось бы подтверждения от других участников, что - либо утечка действительно подтверждается - либо я что-то делаю не так. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2018, 09:12 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Павел Ишенин, не факт что утечка есть. Менеджер памяти PHP не обязан моментально освобождать память. Ну и не плохо бы проверить разные варианты, когда есть BLOB поле и когда его нет. Павел ИшенинЗачем там erealloc? Разве где-то память выделяется ранее? И если нет, то всегда ли там null? я не слишком разбираюсь во внутренностях PHP, но для BLOB заранее память может быть выделена разве что для ISC_QUAD и Null флага. А вот с самим содержимым BLOB намного сложнее, там как раз память должна выделяться если блоб не пустой. А вот когда оно должно освобождаться хз, по идее по правилам PHP ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2018, 09:34 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Павел Ишенин, а как тестируете? консольно вряд ли получится имеет смысл сделать скрипт, например test.php, в той же папке запустить php в режиме девсервера, дать нагрузку и смотреть за расходом памяти Код: sql 1. 2.
по завершении каждого запроса все ресурсы а соответственно и память, занятая ими, должны быть освобождены. если память постоянно будет расти то имеет место утечка зы проверьте тот же сценарий с расширением interbase (ibx_) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2018, 09:49 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Дегтярев Евгений, Тестирую именно консолью. Обратите внимание на скрипт - это просто последовательный запрос таблицы по 250 строк. На моей таблице > 200 тысяч строк я получаю превышение памяти в php. Я пробовал этот скрипт и с принудительной сборкой мусора и без. Если вдаваться в логику, то statement при смерти должен удалять буферы, и как следствие память не должна расти при запросе очередной порции строк. Более того, я проверил этот скрипт на postgres и там действительно нет роста памяти. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2018, 11:23 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Павел Ишенин, а что с ibase_? извиняюсь, в пред сообщении написал ibx ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2018, 11:34 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Дегтярев Евгенийа что с ibase_? извиняюсь, в пред сообщении написал ibx Может ли это помочь проблеме? И если да, то как? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2018, 11:44 |
|
PDO Firebird bugs
|
|||
---|---|---|---|
#18+
Дегтярев Евгений, в ibase_ работа с BLOB реализована чуток иначе. Там есть два режима вычитки блобов. 1. При фетче читается только blob_id из которого ibase_ функциями можно прочитать содержимое 2. Читается всё содержимое блоба при фетче (при соответствующем флаге) Я так понимаю эти два случая надо рассматривать отдельно. Скорее всего 1-ый случай работает без косяков, так как управление хендлами отдаётся на откуп пользователю (см. ibase_blob_close). ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2018, 11:48 |
|
|
start [/forum/topic.php?fid=40&msg=39367693&tid=1559821]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
37ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
others: | 250ms |
total: | 403ms |
0 / 0 |