powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / PDO Firebird bugs
25 сообщений из 222, страница 2 из 9
PDO Firebird bugs
    #39306841
Dorin Marcoci
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovВозможное продвижение Firebird в изначально сомнительную нишу без всякого полезного выхлопа? Бесперспективняк.

Зря вы это говорите. Хотим мы или нет, но веб проэкты все больше вытисняют десктопные. И тренд неутишительный.
В Штатах уже практически все бизнес приложения в облаке, а фэйс юзеров на хтмл.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39309522
Dorin Marcoci
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Оказывается все-таки глюк есть, проверял 100 раз :(
https://bugs.php.net/bug.php?id=73087

Проявляется при следующем запросе, если в предыдущем был блоб параметр с utf8 текстом.
Примите на заметку и запасаемся надеждой что кто-то исправит...
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39342386
Dorin Marcoci
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ура, Товарищи!
Мой фикс с блоб параметрами был принят в мэйнстрим: https://github.com/php/php-src/pull/2183
Заодно фиксил ставка NULLов если такие передаются. Раньше переобразовались в пустую строку.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39342414
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dorin Marcoci,

молодец! Спасибо. Если есть возможность посмотри почему PDO не работает с INSERT ... RETURNING в 3.0. В 2.5 всё отрабатывает без ошибок.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39342425
Dorin Marcoci
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

Ок, проверю. Если надо будет помощь по внутреннестями API птички, будьте рядом.

Еще на очереди этот глюк https://bugs.php.net/bug.php?id=65689
Не вызывается isc_dsql_free_statement в PDO->exec() и кушается память на стороне Firebird-a.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39342427
Фотография krapotkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а этот баг тоже считается?
я столкнулся с необходимостью следить
Код: php
1.
2.
3.
4.
5.
6.
7.
// !!!! баг - 32 бит INT идут как 64 бит UINT
            if (PHP_INT_SIZE == 8) {
                foreach ($agendaRepeats as &$a) {
                    if ($a['CNT_ROUND'] > 0x7FFFFFFF)
                        $a['CNT_ROUND'] -= 0x100000000;
                }
            }
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39342437
Dorin Marcoci
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Krapotkin,

Это только на x64, да?

Если несложно, создай плиз тестовый скрипт.
Можешь еще регистрировать глюк здесь: https://bugs.php.net/search.php?cmd=display&package_name []=PDO+Firebird

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

это ссылка на bug https://bugs.php.net/bug.php?id=72931

На последних снапшотах он проявляется иначе. Пишет что-то вроде cursor not open
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39342445
Фотография krapotkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dorin Marcoci,
Да, на х64. Сейчас уже и нет других-то серверов, по сути.

Код: sql
1.
2.
3.
CREATE TABLE TABLE1 (INT_FIELD INTEGER);
INSERT INTO TABLE1 (INT_FIELD) VALUES (-1);
SELECT FIRST 1 INT_FIELD FROM TABLE1;



получаем 2147483648
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39342455
Dorin Marcoci
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Krapotkin,

У меня не воспроизводится.

INT SIZE: 8
array(1) { [0]=> array(1) { ["finter"]=> string(2) "-1" } }

Все на x64. Debian, пакет PHP7 из тестинг.

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
echo 'INT SIZE: '.PHP_INT_SIZE.'<br>';

$S = $C['kind'].':dbname='.$C['host'].':'.$C['base'].';charset='.$C['charset'];
$D = new PDO($S, $C['user'], $C['password'], $C['options']);

$Q = $D->prepare('select t.finter from ta_test t');
$Q->execute();
$D = $Q->fetchAll();

var_dump($D);
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39342465
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krapotkin,

какой PHP точная версия и разрядность?
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39342478
Фотография krapotkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Черт, сейчас проверил, не воспроизводится.
Но я на днях поднял новую базу, т.к. мой хостер прекратил поддержку Firebird на хостинге. пришлось покупать VDS

а код из рабочего сайта взят, поэтому ошибка точно была...
была PHP 5.6 на apache 2.2 и подключалась к FB 2.5
сейчас сайт остался на хостинге пока, а база переехала на VDS. Там я поставил FB 3.0
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39342481
Фотография krapotkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот ссылка
http://ftsso.ru/new.php
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39342483
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krapotkin,

sweb? Была аналогичная ситуация с хостером, но я ставил PHP7.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39342485
Фотография krapotkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, sweb.
и у них 7 появилась совсем недавно. я решил от греха не менять, мало ли опять какие модули не установлены
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39356500
Павел Ишенин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Баг https://bugs.php.net/bug.php?id=72931 . Пишет
Код: plaintext
SQLSTATE[HY000]: General error: -902 Cursor is not open

Версия Firebird 3.0.1
Версия php 5.4.3
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39356510
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Павел Ишенин,

ага 19864789
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39356531
Павел Ишенин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис, да, я все лишь хотел подтвердить, что проблема имеется и делает пока невозможным использование FB3 с некоторыми PHP-фреймворками (например с Yii).
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39356760
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Павел Ишенинпроблема имеется и делает пока невозможным использование FB3 с некоторыми PHP-фреймворками
(например с Yii).

Или лучше сказать, она делает невозможным использование некоторых фреймворков с FB3.
Поскольку баг-то в фреймворках, а не Firebird.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39356761
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

не в фреймворках, а в PDO. Хотя FB 2.5 нормально работал.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39356769
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисне в фреймворках, а в PDO.
А PDO это, типа, не фреймворк, ага...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39356773
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

в фреймворках бага нет. Они честно делают запрос insert ... returning. То что PDO не может догадаться, что это не курсор, скорее всего баг PDO. Но вот почему-то в Firebird 2.5 запросы с returning нормально выполнялись. Причём ошибка происходит и fbclient версии 2.5, значит изменения произошли где-то глубже в самом ядре.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39356783
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

PDO - это абстрактный слой для работы с различными типами БД. Считай компонент доступа вроде FireDac, UniDac и т.д., но только являющийся частью ядра PHP. В зависимости от DSN PDO подгружает драйвер для работы с конкретной СУБД. Так вот ошибка где-то в этом драйвере, ибо тот же самый Postgres отрабатывает insert ... returning без проблем.

Кстати набор функций ibase_* работает нормально, но они не очень удобны для использования в фреймворках, потому что тем удобнее пользоваться унифицированным интерфейсом.
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39356787
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисзначит изменения произошли где-то глубже в самом ядре.
В ядре, конечно, произошла туева хуча изменений, но для returning как возвращалось
isc_info_stmt_execute_procedure, так и возвращается.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
PDO Firebird bugs
    #39356803
Dorin Marcoci
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Покопаюсь к пятницу, суботу насчет этой баги.
Мы пока на FB2.5 сидим, и там работает без проблем.
Но в будущем планируем пересесть на FB3.
...
Рейтинг: 0 / 0
25 сообщений из 222, страница 2 из 9
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / PDO Firebird bugs
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (1): Анонимы (1)
Читали форум (1): Анонимы (1)
Пользователи онлайн (6): Анонимы (4), Bing Bot, Yandex Bot 2 мин.
x
x
Закрыть


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