I'm seeing replication behavior that I don't understand. I wonder if it's stalled.

I've got two couchdb servers, each with four databases. A cron job runs once a minute and tells each server to do continuous replication from each database on the other server. What I'm seeing for one of the databases has me confused: I see, in the couch.log for the "source" database, 'GET' entries consistent with the source database fetching documents and their attachments. But on the destination database, the fetched documents and attachments do not appear.

To answer the question, "Are the GET entries coming from some other instance of couchdb?", I stopped couchdb on the destination server. The 'GET' entries in the log of the source server stopped. I then restarted the destination couchdb server and the log entries resumed.

Futon on the source database shows:
  Overview:
    Name: ps
    Size: 181.5 GB
    Number of Documents: 43,090
    Update Seq: 43,741
  Status:
    Type: Replication
    Object: 49a5c5: http://carbon:5984/ps/ -> ps
    PID: <0.14439.1841>
    Status: MR Processed source update #6114

Futon on the destination database shows:
  Overview:
    Name: ps
    Size: 58.3 GB
    Number of Documents: 6,107
    Update Seq: 6,114
  Status:
    Type: Replication
    Object: 0c52c5: http://sodium:5984/ps/ -> ps
    PID: <0.234.0>
    Status: Starting

The status on the destination database has been "Starting" since I restarted couchdb on the destination server about 15 minutes ago.

Both the source and destination databases are being written to by user processes on an intermittent basis: anywhere from 0 to a few dozen documents per minute, each document with up to a few dozen megabytes of attachments.

I see no error entries in either the source or destination server's couch.log.

Versions:
  Couchdb: 1.0.2
  OS: Linux 2.6.32 (AMD 64)

Why don't I see any documents being added to the destination database?

Reply via email to