[Csync2] recursive selects with sqlite

Art -kwaak- van Breemen ard+csync2 at telegraafnet.nl
Thu Feb 19 21:15:36 CET 2009


Hello,

On Thu, Feb 19, 2009 at 08:27:13PM +0100, Christian Wiese wrote:
> -------------------------snip------------------------------------------
> # csync2 -rf /etc/opt/csync2
> Database Error: Mark file as to be forced [1]: UPDATE dirty SET force =
> 1 WHERE filename = '/etc/opt/csync2' UNION ALL SELECT filename from
> file where filename > '/etc/opt/csync2/' and filename <
> '/etc/opt/csync20'
> -------------------------snip------------------------------------------

That's a weird statement! But I do recognize the UNION part.

> If I revert the change made by r403 it seems to be fine though!

I will check that piece. The query is obviously broken (I was
probably to eager with fixing the selects), but it comes with a
note: since we can't use the union (obviously), it might fall
back to a pretty expensive update. The bigger your dirty table
gets, the worse the update gets (and the locking time).

Anyway: the sqlite locking is even in my version still a pain. I
guess that for high update and > M files setups we should look at a
different approach for keeping syncs.

-- 
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in email?


More information about the Csync2 mailing list