Hi.
I have tried to ingest a number of documents in parallel, but they seem
to congest in getIngestWriter in DefaultDOManager.
When looking at the source code I can see that this method is
synchronized, but I fail to understand why.
As far as I can tell ( I admit I have not read through the
of the Fedora codebase, and fresh eyes would be
good. The theme of the upcoming 3.6 release is performance and
scalability (without major architectural changes), and I think this
would fit right in.
- Chris
On Mon, Nov 7, 2011 at 4:29 PM, Jesper Damkjaer j...@dbc.dk wrote:
Hi.
I have tried
just removing the
synchronized keyword is the right move here.
- Chris
On Tue, Nov 8, 2011 at 4:49 AM, Jesper Damkjaer j...@dbc.dk wrote:
Hi Chris.
Actually I just tried to ingest about 20.000 objects in 10 parallel
threads, thereby noticing that the number of threads did not seem
Hi.
I have looked at some of the tests during my attempt to test
multi-threading in DefaultDOManager#getIngestWriter and discovered that
the currently used version of junit is 4.5. Is there any reason for
staying on an old version of junit?
I tried to run the tests using junit 4.10, by changing
Environment
the University of Virginia Library
On Nov 6, 2012, at 4:22 PM, Jesper Damkjaer wrote:
I just had a quick look at the code. As far as I can see (and I may not
be right) one problem may be the following:
Assume both threads with same PID are inside the method getIngestWriter
object representing the PID to be inserted would be
enough to prevent this, no ?
On 06/11/2012 23:51, Jesper Damkjaer wrote:
It might be possible to simply just move the call to
pidLock.getWriteLock() up before the call to objectExists().
Then the first thread will get the lock
I'll like to take a stab at this one.
I'm not sure though if I can create a branch or if I should create a
fork.
Which do You prefer?
-Jesper
On ons, 2012-11-07 at 12:09 +0100, Jesper Damkjaer wrote:
Yes, I think it would. The problem is that the PID cannot be determined
until just before
.
I have created a fork, implemented what I think is necessary, and is
currently testing it out.
I'll submit a pull request soon.
-Jesper
On ons, 2012-11-07 at 16:12 +0100, Jesper Damkjaer wrote:
I'll like to take a stab at this one.
I'm not sure though if I can create a branch or if I should
Environment
the University of Virginia Library
On Nov 12, 2012, at 9:08 AM, Jesper Damkjaer wrote:
This is a fix to fcrepo-1024.
The fix moves the call to getWriteLock up before the check on objectExists.
This way only one thread can be inside the part doing object creation
without