Me and Adam were just mulling over a similar endpoint the other night
that could be used to generate plain-text backups similar to what
couchdb-dump and couchdb-load were doing. With the idea that there
would be some special sauce to pipe from one _dump endpoint directly
into a different _load handler. Obvious downfall was incremental-ness
of this. Seems like it'd be doable, but I'm not entirely certain on
the best method.

I was also considering this as our full-proof 100% reliable method for
migrating data between different CouchDB versions which we seem to
screw up fairly regularly.

+1 on the idea. Not sure about raw couch files as it limits the wider
usefulness (and we already have scp).

On Tue, Aug 16, 2011 at 10:24 AM, Jan Lehnardt <j...@apache.org> wrote:
> This is only slightly related, but I'm dreaming of /db/_dump and /db/_restore 
> endpoints (the names don't matter, could be one with GET / PUT) that just 
> ships verbatim .couch files over HTTP. It would be for admins only, it would 
> not be incremental (although we might be able to add that), and I haven't yet 
> thought through all the concurrency and error case implications, the above 
> solves more than the proposed problem and in a very different, but I thought 
> I throw it in the mix.
>
> Cheers
> Jan
> --
>
> On Aug 16, 2011, at 5:08 PM, Robert Newson wrote:
>
>> +1 on the intention but we'll need to be careful. The use case is
>> specifically to allow verbatim migration of databases between servers.
>> A separate role makes sense as I'm not sure of the consequences of
>> explicitly granting this ability to the existing _admin role.
>>
>> B.
>>
>> On 16 August 2011 15:26, Adam Kocoloski <kocol...@apache.org> wrote:
>>> One of the principal uses of the replicator is to "make this database look 
>>> like that one".  We're unable to do that in the general case today because 
>>> of the combination of validation functions and out-of-order document 
>>> transfers.  It's entirely possible for a document to be saved in the source 
>>> DB prior to the installation of a ddoc containing a validation function 
>>> that would have rejected the document, for the replicator to install the 
>>> ddoc in the target DB before replicating the other document, and for the 
>>> other document to then be rejected by the target DB.
>>>
>>> I propose we add a role which allows a user to bypass validation, or else 
>>> extend that privilege to the _admin role.  We should still validate updates 
>>> by default and add a way (a new qs param, for instance) to indicate that 
>>> validation should be skipped for a particular update.  Thoughts?
>>>
>>> Adam
>
>

Reply via email to