Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
28.02.2015, 12:59
|
|||
|---|---|---|---|
ActivePerl и MongoDB, не выходит каменный цветок |
|||
|
#18+
Есть сервер под Windows, на который установлен ActivePerl версии 5.14. У ActivePerl свой репозиторий, в нем есть MongoDB версии 0.45, более старшей, увы, нет. Есть другой сервер под Debian, на котором установлен Perl версии 5.14, но в нем модуль MongoDB более свежий, версии 0.708. На Debian-сервере есть скрипт, который корректно работает с MongoDB и изменяет нужные данные. Теперь мне нужно перенести этот скрипт на сервер с Windows. Проблема в том, что между версиями модуля MongoDB 0.708 и 0.45 существуют довольно существенные изменения. Во-первых, в более старой версии нет MongoDB::MongoClient, но это удалось обойти. Во-вторых, в более старой версии нет MongoDB::BSON. В репозитории ActivePerl этот модуль отсутствует, но есть модуль BSON, для которого указано, что это pure-perl имплементация сериализации MongoDB::BSON. Но видимо эта имплементация нерабочая, если я подключаю модуль BSON и в скрипте использую my $id = BSON::Binary->new, то возникают всякие ошибки в модуле MongoDB. Если модуль BSON отключаю, а в скрипте использую MongoDB::BSON::Binary->new, то Perl ругается, что не может найти метод new и возможно я не загрузил библиотеку MongoDB::BSON::Binary. Не подскажите, как это можно обойти? Может быть кто-то сериализацией данных MongoDB занимался и подскажет другой способ? ________________________ Мы смотрим с оптимизмом... ...в оптический прицел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.02.2015, 13:49
|
|||
|---|---|---|---|
ActivePerl и MongoDB, не выходит каменный цветок |
|||
|
#18+
Пока что решил вопрос грубым хаком — переделал скрипт на использование Mango (вместо MongoDB) и подправил исходники скрипта, добавив в модуль Mango::BSON поддержку субтипа 0x03 (устаревший UUID, он мне нужен). Но хотелось бы нормального решения, чтобы в один прекрасный момент скрипт не перестал работать, когда я забуду про эти особенности и обновлю репозиторий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.03.2015, 04:47
|
|||
|---|---|---|---|
ActivePerl и MongoDB, не выходит каменный цветок |
|||
|
#18+
Послать ActivePerl на свалку истории и перейти ну хоть на Strawberry? Во времена жизни на AP, я просто брал с cpan'а исходники модулей и вручную их собирал. А репозиторий... он был сам по себе, а я сам по себе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.03.2015, 08:47
|
|||
|---|---|---|---|
ActivePerl и MongoDB, не выходит каменный цветок |
|||
|
#18+
Я про Strawberry и не знал. Судя по тому, что в комплект входит gcc, я смогу использовать обычный CPAN? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.03.2015, 20:17
|
|||
|---|---|---|---|
ActivePerl и MongoDB, не выходит каменный цветок |
|||
|
#18+
Спасибо за подсказку с клубникой. Небо и земля. Единственное, что видел на скриншотах и не удалось получить - отладчик (в IDE Padre), так и не понял, как брейкпойнты ставить. У кого-нибудь получалось? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=23&tablet=1&tid=1461964]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
45ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 258ms |
| total: | 372ms |

| 0 / 0 |
