When couchdb gets a request  for / it responds with

{"couchdb":"welcome","version":"0.7.3a797"}

could it instead respond with something like:

{"couchdb":"welcome","version":"0.7.3a797","servername":"Alan's OLPC XO laptop","dbmodified":"20070315 10:12:13","docmodified":"20070317 21:00:00"}

with whatever syntax timestamps are supposed to be in.
dbmodified would be the last date a database was added or removed from the server docmodified would be the last date a document was modified in any (non excluded) database on the server This would mean that one couchdb server could easily see if another server has any new databases it might want to replicate with and it would be able to see if there have been any updates since the last time. Each server would maintain a database of other servers it knows about along with their dbmodifed and docmodified dates. Basically store the responses it gets from other servers as couchdb documents. This would then be used to automatically discover databases to replicate with and would allow a lightweight check to see if it is worth replicating now. I want to get to a point of opportunistic realtime replication over a wireless mesh network.

Alan.

Reply via email to