On 24 Jun 2010, at 14:48, Petr Rockai wrote:
Dan Pascu <d...@ag-projects.com> writes:
Any idea what could be causing this?
I should mention that none is doing any write operations in those
repositories
except the cron job that does pull regularly. Otherwise the
repositories are
used by trac-darcs in a read-only mode (show patches, files, ...).
Is it
possible that a read-only operation that trac-darcs uses to
inspect the repo
may lock it so a pull is not possible at that moment?
The following commands use withRepoLock:
Add.lhs
AmendRecord.lhs
Apply.lhs
Convert.lhs
Get.lhs
MarkConflicts.lhs
Move.lhs
Optimize.lhs
Pull.lhs
Record.lhs
Remove.lhs
Repair.lhs
Replace.lhs
Revert.lhs
Rollback.lhs
SetPref.lhs
Tag.lhs
Unrecord.lhs
Unrevert.lhs
so if any of those commands was running at the time, this would
manifest
as waiting for repository lock...
Another option is that some darcs process previously died without
cleaning up the lock, but the result would be a stuck repository in
that
case: I presume the operation just waits for a bit and proceeds?
It's not stuck. The cron job calls darcs pull every 5 minutes. I get
the error once in a while (like 1-2 messages every few days). None
does anything to manually unlock the repository after the error
occurs. It just goes away. If I get the error now, 5 minutes later
when cron calls darcs pull again it works just fine. The error is just
sporadic and not persistent once it happens.
One option would be to have darcs write some explanatory text into
_darcs/lock (like, what command it is running and maybe its pid) so
that
the waiting process could provide that info along the "waiting for
lock"
informational message...
It would be also helpful if you could file this in the tracker so it
does not get lost.
Thanks,
Petr.
--
Dan
_______________________________________________
darcs-users mailing list
darcs-users@darcs.net
http://lists.osuosl.org/mailman/listinfo/darcs-users