users@glassfish.java.net

Slow instance replication performance with v2ur2

From: <michael_at_livia.co.nz>
Date: Mon, 24 Nov 2008 12:09:41 +1300

Hi all,

I'm running v2u2-b04 on Redhat 5.2, on x86-64, under VMWare, and I'm
noticing exceptionally slow performance when a nodeagent tries to
synchronize with the domain admin server.

Specifically, when a synchronization process is started, it can take
upwards of 20 minutes (!) to complete, with one thread stuck at 100%
CPU the whole time. Tracing the thread involved with strace reveals a
continuous cycle of:

    futex(0x43572694, FUTEX_WAKE_OP, 1, 1, 0x43572690, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_EQ, 0}) = 1
    futex(0x4350ce18, FUTEX_WAKE, 1) = 1
    futex(0x4382dd74, FUTEX_CMP_REQUEUE, 1, 2147483647, 0x4350cba8, 0) = 1
    futex(0x4350cba8, FUTEX_WAKE, 1) = 1
    futex(0x4350cee8, FUTEX_WAKE, 1) = 1
    futex(0x43698c00, FUTEX_WAKE, 1) = 1
    futex(0x43698c04, FUTEX_WAIT, 12725, NULL) = -1 EAGAIN (Resource temporarily unavailable)
    futex(0x4350cee8, FUTEX_WAKE, 1) = 0
    gettimeofday({1227481657, 933612}, NULL) = 0

I suspect having liferay deployed doesn't help, as it's a large
application (70MB WAR file).

Has anyone seen this problem, and can they shed any light on solutions?

My only workaround is to wrap "undeploy" and "deploy" around any restarts
of the instance, which is extremely undesirable...

    -- michael.