среда, 14 декабря 2011 г.

Обновление Cyrus 2.1 на 2.2

После апгрейда убунты на 10,04 перестал запускаться cyrus. Вылитает ошибка:
/etc/init.d/cyrus2.2: Database backends mismatch! You must manually
/etc/init.d/cyrus2.2: verify and update the Cyrus databases to the
/etc/init.d/cyrus2.2: new backends.
/etc/init.d/cyrus2.2: Please refer to /usr/share/doc/cyrus-common-2.2/README.Debian
/etc/init.d/cyrus2.2: for instructions.
Лекарство:
# делаем бекап системных файлов
cd /var/lib
tar cfvz cyrus-backup.tgz cyrus
# при необходимости бекап почтовых ящиков
tar cfvz cyrus-spool-backup.tgz /var/spool/cyrus

#
rm /usr/lib/cyrus/cyrus-db-types.active
sudo chown -R cyrus:mail /var/lib/cyrus
dpkg-reconfigure cyrus-common-2.2

пятница, 2 декабря 2011 г.

Doctrine Versionable: получить все версии объекта

Процесс создания модели у которой ведётся сохрание изменений
http://www.doctrine-project.org/documentation/manual/1_0/en/behaviors#core-behaviors:versionable

там описана возможность получить текущую версию объекта
$blogPost->version;

и откатить изменения при помощи метода

$blogPost->revert(1);
Чтобы получить все версии $blogPost:
$blogPost->getVersion()