to post messages and comments.

Подозрительно успешно и без проблем собрался из сорцов и поставился новый второтег для убунты 12.04. На рабочий комп с арчом он приехал сам через два для после релиза :3

Why I'm Walking Away From CouchDB
donpark.org
Вкратце: Почему я больше не использую CouchDB?
1. Я использовал базу, оптимизированную на чтение для задач, где важнее скорость записи.
2. Я не читал документацию и не поддерживал индексы в актуальном состоянии, так что первый запрос на чтение результата view-функции после множества записанных документов сильно обламывался в скорости.
3. У меня закончилось место на SSD дисках.
4. ...
5. Аццтой!

View indexes are only updated when queried — insertion does not update the index. That means you have to write a script to periodically run all your views, unless you want them to be surprisingly slow when they haven’t been queried in a while. In practice we always preferred view availability to any performance boost obtained by not updating indexes on insertion, but writing reliable scripts to keep view indexes up to date was tricky.

Security Alert — Please reset your npm registry account
gist.github.com

Да, очень поздно они закрыли публичный доступ к _users, хотя не понятно, чем занимались админы npm т.к. поведение известное уже много релизов как и первый же security audit выявил бы эту проблему. Anyway, хорошо что исправились и дали проблеме огласку — в 1.2.0 проблему закрыли из коробки, правда релиз пока задерживается из-за двух багов, один из которых сулит хорошую прибавку к скорости индексации. Тем временем, чтобы не проверять свои сервера ручками, уже есть две тулзы для автоматизации процесса:
1. nodejs: github.com
2. python: code.google.com
Обе помогут провести анализа всего сервера или конкретной базы, определить что находится в паблике, а куда вход разрешен только специальным пользователям, сколько админов на сервере и не много ли их и т.п.

Такие дела. Берегите данные своих пользователей(:

Анонсировали тут TouchDB — CouchDB совместимую базу для мобильных устройств:
github.com
Как заявляет разработчик: "Если CouchDB — это MySQL, то TouchDB — это SQLite". В целом более компактная и шустрая реализация(если смотреть по дискламеру), но при этом старается сохранить родной протокол. К слову, репликации работают так же как и у большого брата. Пока на iOS, но планируется выпуск версии под андроид. Stay tuned(;

Записался на курсы введения в разработку CouchDB. Здесь не анонсировал, поскольку сам получил письмо с анонсом в 2 ночи и, думаю, кому было бы интересно, тот читал [email protected] рассылку.
Курс будет длиться с 09.01.12 по 20.03.12 и будут включать в себя введение в общий смысл устройства и работы CouchDB(как с ним работать должно быть уже изучено), обучение эрлангу: январь и пол февраля уходит только на него, но охватывается достаточно много тем. В качестве источника для самостоятельного обучения предлагают learnyousomeerlang.com .Только после этого уже рассматривается устройство и реализация всех основных фич и модулей CouchDB. И последние две недели курса уходят на групповые проекты. Я так понимаю, будем закрывать тикеты-долгострои и/или реализовывать фичи для 2.0.
При этом тут не получится ситуация, что записался, сидишь, слушаешь, выполняешь таски и как бы ты сам по себе: основным моментом является активная работа в команде — вся группа из 20 "студентов" делиться на более мелкие подгруппы по 2 человека, каждая группа обязана провести как минимум одно занятие в качестве докладчика.
В общем, отличное приключение я себе нашел на следующий год(: Посмотрим что из этого получится.

Волна паники по поводу отказа UbuntuOne от CouchDB все никак не утихнет. Да, отказался один из крупнейших клиентов, да не устроила их маштабируемость, которой нет в коробке и прикручивается отдельно, молодцы что решили изобрести что-то свое (больше велосипедов — интересней соревнования) и редиски, что не хотят допилить апстрим, но не конец света же — ну не понравилось им микроскопом кирпичи укладывать, расстрелять их теперь что ли?(:

Объяснение, почему попытка прикрутить версионирование документов к CouchDB через update notification handlers плохая идея:

Robert Newson:
Assuming you mean db_update_notification (and not _update handlers,
which are only called by clients) then, yes, they are triggered
whenever a db is updated. This sequence of events leads you to miss an
update, though;

1) Db updated
2) update notification fires
3) compaction occurs
4) processing update notification fetches doc

At step 3, all old revisions were met. Since the triggering of the
update notification and the subsequent exporting of the item are not
instantaneous, a window of data loss opens.

Storing old versions as attachments is a solid solution.