Hi there,

Thanks in advance for helping with this.

I'm executing a batch update that looks something like this:

Collection<? extends Query> queries = data
    .parallelStream()
    .map(datum -> create
        .update(t)
        .set(t.col1, datum.col1)
        .where(t.id.eq(datum.id)))
   .collect(toList()); // list size is ~4,000

System.out.println("Updating " + queries.size() + " columns");
create.batch(queries).execute();
System.out.println("done");

This seems to hang indefinitely. The "Updating" line prints, but "done" 
never does. It doesn't hang every time -- it hangs about 20 minutes into 
running a program that calls this method frequently. When it doesn't hang, 
the batch completes in approximately a second.

I'm using MySQL with "rewriteBatchedStatements=true". No deadlock is 
reported by "SHOW ENGINE INNODB STATUS;". I don't really have anything to 
go on at the moment. The process is quite complex, and a lot of components 
interact, so I can't be sure the problem is even jOOQ -- it might be that 
the thread is getting starved in some other way, but my profiling thus far 
is inconclusive. I figured I'd post this just in case anyone else has 
encountered something like this.

Cheers,
Tim

-- 
You received this message because you are subscribed to the Google Groups "jOOQ 
User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to