PDO_OCI: Не выбирается Clob при работе в связке nginx+php-fpm
При переносе проекта с apache+mod_php на nginx+php-fpm, столкнулся с довольно непонятной проблемой при работе с Ораклом через PDO. Дело в том что, как я писал раннее, чтобы выбрать значение *LOB поля из Оракла, нужно сделать определенные манипуляции, и получив при fetch’e php_stream, сами данные получить путем stream_get_contents. Так вот, один и тот-же код под apache возвращает валидный stream, и соответственно все хорошо работает, а под nginx + php-fpm - пустую строку. Где копать непонятно, гугл очень немного знает про связку оракл+pdo+php-fpm, не говоря уже об nginx. Может быть у кого-то есть идеи?
Код такой:
function getNewsContent($id) {
$newsq = $this->DBO->prepare("select id,subject,news_body,create_date,owner_id from news where id=:id");
$newsq->execute(array(":id" => $id));
$data = $newsq->fetch(PDO::FETCH_OBJ);
$data->NEWS_BODY = stream_get_contents($data->NEWS_BODY);
return $data;
}
если последовать мануалу, и добавить туда bindParam() таким образом:
function getNewsContent($id) {
$newsq = $this->DBO->prepare("select id,subject,news_body,create_date,owner_id from news where id=:id");
$newsq->execute(array(":id" => $id));
#$newsq->bindColumn(3, $lob, PDO::PARAM_LOB);
$data = $newsq->fetch(PDO::FETCH_OBJ);
$data->NEWS_BODY = stream_get_contents($lob);
return $data;
}
то php-fpm вообще вылетает с дампом памяти в логе, и ошибкой OCI-21500, которая по сути является “внутренней ошибкой без описания”. Вобщем вилы, куда копать непонятно, но врагу не сдается наш гордый варяг ))
Если кто-то в курсе, или работал в такой связке - помогите пожалуйста )))
1 comment »
-
By Levik 19/06/2010 at 19h43
![["Mmmmushrooms"] ["Mmmmushrooms"]](http://farm3.staticflickr.com/2750/4440914014_ce2e626c90_s.jpg)
![["Mmmmushrooms"] ["Mmmmushrooms"]](http://farm5.staticflickr.com/4031/4440138905_494b0ae318_s.jpg)
![["Sin"] ["Sin"]](http://farm5.staticflickr.com/4056/4440915036_4b02f62401_s.jpg)
![["Monkey business"] ["Monkey business"]](http://farm5.staticflickr.com/4019/4668221289_c6a5e57727_s.jpg)
2microskin, сайт ведь и сделан на WordPress - в подвале “is proudly powered by WordPress”
А вот с php-fpm часто непонятные ситуации возникают.. напильник и бубен.. в помощь. (надеюсь, со времени написания поста уже не требуется)