Thanks for the crosscheck.  I'm not aware of anything in the node finder that 
would cause it to struggle mightily with healthy DBs.  It pretty much ignores 
the health of the DB, in fact.  Would be interested to hear more.

On Aug 10, 2010, at 1:59 PM, Robert Newson wrote:

> I verified the new code's ability to repair the testwritesdb. system
> load was smooth from start to finish.
> 
> I started a further test on a different (healthy) database and system
> load was severe again, just collecting the roots (the lost+found db
> was not yet created when I aborted the attempt). I suspect the fact
> that it's healthy is the issue, so if I'm right, perhaps a warning is
> useful.
> 
> B.
> 
> 
> 
> On Tue, Aug 10, 2010 at 6:53 PM, Adam Kocoloski <[email protected]> wrote:
>> Another update.  This morning I took a different tack and, rather than try 
>> to find root nodes, I just looked for all kv_nodes in the file and treated 
>> each of those as a separate virtual DB to be replicated.  This reduces the 
>> algorithmic complexity of the repair, and it looks like testwritesdb repairs 
>> in ~30 minutes or so.  Also, this method results in the lost+found DB 
>> containing every document, not just the missing ones.
>> 
>> My branch does not currently include Randall's parallelization of the 
>> replications.  It's still CPU-limited, so that may be a worthwhile 
>> optimization.  On the other hand, I think we may be reaching a stage at 
>> which performance for this repair tool is 'good enough', and pmaps can make 
>> error handling a bit dicey.
>> 
>> In short, I think this tool is now in good shape.
>> 
>> http://github.com/kocolosk/couchdb/tree/db_repair
>> 

Reply via email to