You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@couchdb.apache.org by Chris Petersen <ch...@gmail.com> on 2009/10/27 00:36:40 UTC

replication problems with attachments

Hi All,

I'm trying to replicate a database with approximately 3000 documents using
CouchDB 0.10.0. About 700 of these documents have 1 or more attached files.
Each attachment is under 200 Kb. When I replicate this database to another
database within the same CouchDB instance, the replication completes
successfully in ~30 seconds.   Here is the command I used to replicate
locally:

time curl -X POST -d '{"target":"example_db2","source":"example_db"}'
http://127.0.0.1:5984/_replicate

Here are the stats on the database being replicated:
> curl http://localhost:5984/example_db
{"db_name":"example_db","doc_count":2981,"doc_del_count":590,"update_seq":8478,"purge_seq":0,"compact_running":false,"disk_size":121864295,"instance_start_time":"1256598257637203","disk_format_version":4}

The problem occurs when I try to replicate this same database to another
instance of CouchDB 0.10.0 either running local on the same machine or
remotely on a different machine. We attempted both push and pull replication
in both cases.

Every time we started replication, the _active_tasks command shows the
source update getting stuck. It seems to get stuck on different numbers each
time. For instance, the following command (pull replication to a separate
instance of CouchDB running locally):

time curl -X POST -d '{"target":"example_db","source":"
http://localhost:5984/example_db"}' http://127.0.0.1:5985/_replicate

Never returned. Polling the _active_tasks method we reported it was stuck on
a single update sequence. We waited for >15 minutes and it never changed:

curl http://localhost:5985/_active_tasks
[{"type":"Replication","task":"87f641: http://localhost:5984/example_db/ ->
example_db","status":"W Processed source update #707","pid":"<0.82.0>"}]

We had the same result when we tried pushing from one database to another
locally, and when pull or push replicating to a remote CouchDB instance.

In short, we have a database (<150MB) with <3000 documents, with ~1000
attachments. We can replicate it locally within a single CouchDB instance,
but replication hangs when we try to replicate with another instance.

Has anyone seen similar behavior?

Chris