[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: EDEADLK in svn_repos_fs_begin_txn_for_commit2

From: Philip Martin <philip.martin_at_wandisco.com>
Date: Wed, 26 Jan 2011 12:57:07 +0000

Philip Martin <philip.martin_at_wandisco.com> writes:

> Create two repositories with a pre-commit hook that sleeps for 20
> seconds. Start two threaded svnserve processes listening on different
> ports.
> svnserve -Tdr.
> svnserve -Tdr. --listen-port 3691
> Commit:
> svn mkdir -mm svn://localhost/repoA/X1
> svn mkdir -mm svn://localhost:3691/repoB/X1
> svn mkdir -mm svn://localhost/repoB/X2
> svn mkdir -mm svn://localhost:3691/repoA/X2
> All four commits complete. Do I need to cause the thread to spin rather
> than wait for a hook script?

That's not right, it just tests commit contention. What I need to do is
make the server spin while holding the txn-current-lock, that will
require some temporary code. I still don't see how it can deadlock.

Received on 2011-01-26 13:57:51 CET

This is an archived mail posted to the Subversion Dev mailing list.