Ошибка кэширования CHDB при попытке сохранить массив - PullRequest
0 голосов
/ 09 октября 2011

Я пытаюсь использовать CHDB (кеширование хеш-таблицы) для PHP (http://pecl.php.net/package/chdb).

Я получаю эту ошибку:

Неустранимая ошибка: необработанное исключение «Исключение» с сообщением «Ошибка» создание 'd.chdb': невозможно выделить память 'в /var/www/b/site/test.php:18 Трассировка стека: # 0 /var/www/b/site/test.php(18): chdb_create ('d.chdb', Array) # 1 {main} добавляется в /var/www/site/b/test.php в строку 18

Кто-нибудь знает, откуда эта ошибка? Это из самого фреймворка PHP или откуда-то еще?

Я вручную установил CHDB в PHP на Fedora 11.

Мой код очень прост:

   $data = array('key1' => "val1");
   chdb_create("d.chdb", $data);

Любые полезные советы приветствуются!

Ответы [ 2 ]

1 голос
/ 11 ноября 2011

Программист chdb ответил на мой вопрос, и проблема в том, что библиотека cmph, используемая chdb, не позволяет хэшировать массивы с размером один.Я использовал одну запись только для проверки ...

Все просто: -).

Очевидно, что сообщение об ошибке немного неясно.

1 голос
/ 09 октября 2011

Я не рассматривал источник CHDB подробно, но вполне возможно, что сообщение «невозможно выделить память» фактически переводится как «невозможно открыть файл».

Я только что быстро просмотрел исходный код (вы можете найти его в https://github.com/lcastelli/chdb),, и это исключение, похоже, происходит от здесь , но я неИдея, где он на самом деле пытается записать свои файлы. Никогда не пытался использовать его сам.

...