-
Notifications
You must be signed in to change notification settings - Fork 52
Ru:1.0to1.1
AlexeyDsov edited this page Jul 18, 2012
·
20 revisions
Сейчас пока 1.1 это мастер. По мере дополнения новыми фичами статья будет расширяться.
- Переименование классов Memcached -> SocketMemcached
- Добавлен более статический вариант Enumeration - Enum. Для перехода на него нужно изменить в наследнике параметр
protected $names = array(...);
на$protected static $names = array()
. API Класса тот же самый что и Enumeration + дополнен несколькими статическими методами, которых так не хватало. Требует php 5.3. Класс Enumeration никуда не пропал. - Переименования в классах работающих с мемкешом. Решает проблему пересечения имен с php классом Memcached
- В DB добавлена работа с savepoint'ами.
- Добавлены классы InnerTransaction и InnerTransactionWrapper, для упрощения создания вложенных транзакций на savepoint'ах. Т.е. позволяет не задумываться - находимся ли мы в текущий момент внутри транзакции или нет.
- Переписано раскешивание, теперь оно работает через специальные классы Uncachers. Это позволило сделать корректным раскешивание внутри транзакции - оно происходит после "COMMIT;" в базе данных. Само же кэширование внутри транзакции использует теперь всегда RuntimeMemory, что может увеличить число запросов в базу, но позволяет не портить общий кэш незакомиченными данными.
- Улучшена логика сравнения старого и нового объектов в *DAO::merge() + сама логика сравнения вынесена большей частью в AbstractProtoClass и LightMetaProperty
Список еще не закончен.
- Обновление CurlHttpClient
- TimestampTZ
- Использование InnerTransaction внутри onPHP кода.