solaris 8/9, memcached consumes all CPU after request

Jim Lawson jtl+memcached at uvm.edu
Fri Nov 5 11:09:38 PST 2004


I guess attachments are stripped by the mailing list.  I'll put it inline.

Jim Lawson wrote:
> I have attached an edited transcript of "truss" against the running 
> memcached which shows the behavior.  This may be just a configuration 
> issue, but I'm afraid it's out of my league.  Any pointers?
> 
> Jim

execve("/usr/local/bin/memcached", 0xFFBFFD5C, 0xFFBFFD6C)  argc = 3
resolvepath("/usr/local/bin/memcached", "/usr/local/bin/memcached", 
1023) = 24
resolvepath("/usr/lib/ld.so.1", "/usr/lib/ld.so.1", 1023) = 16
stat("/usr/local/bin/memcached", 0xFFBFFB30)    = 0
open("/var/ld/ld.config", O_RDONLY)             = 3

[... lots of loading libraries and other setup]

write(5, "\0\0\003\001\0\0", 8)                 = 8
time()                                          = 1099680817
write(5, "\0\0\0\b\001\0\0", 8)                 = 8
ioctl(5, DP_POLL, 0xFFBFFBB0)   (sleeping...)
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 0
time()                                          = 1099680822
ioctl(5, DP_POLL, 0xFFBFFBB0)   (sleeping...)
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 0
time()                                          = 1099680827
ioctl(5, DP_POLL, 0xFFBFFBB0)   (sleeping...)
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
accept(3, 0xFFBFFAC8, 0xFFBFFAC4, 1)            = 7
fcntl(7, F_GETFL, 0x00000000)                   = 130
fcntl(7, F_SETFL, 0x00000082)                   = 0
brk(0x0052DA40)                                 = 0
brk(0x0052E240)                                 = 0
brk(0x0052E240)                                 = 0
brk(0x0052EA40)                                 = 0
brk(0x0052EA40)                                 = 0
brk(0x0052F240)                                 = 0

[... about here we get the connection]

write(5, "\0\0\007\001\0\0", 8)                 = 8
accept(3, 0xFFBFFAC8, 0xFFBFFAC4, 1)            Err#11 EAGAIN
ioctl(5, DP_POLL, 0xFFBFFBB0)   (sleeping...)
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 0
time()                                          = 1099680832
ioctl(5, DP_POLL, 0xFFBFFBB0)   (sleeping...)
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
read(7, " v e r s i o n\r\n", 2048)             = 9
read(7, 0x0052DA89, 2039)                       Err#11 EAGAIN
write(7, " V E R S I O N   1 . 1 .".., 16)      = 16
read(7, 0x0052DA80, 2048)                       Err#11 EAGAIN
ioctl(5, DP_POLL, 0xFFBFFBB0)   (sleeping...)
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
read(7, 0x0052DA80, 2048)                       = 0
write(5, "\0\0\007\b01\0\0", 8)                 = 8

[... here the connection closes out]

close(7)                                        = 0
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
time()                                          = 1099680822
ioctl(5, DP_POLL, 0xFFBFFBB0)   (sleeping...)
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 0
time()                                          = 1099680827
ioctl(5, DP_POLL, 0xFFBFFBB0)   (sleeping...)
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
accept(3, 0xFFBFFAC8, 0xFFBFFAC4, 1)            = 7
fcntl(7, F_GETFL, 0x00000000)                   = 130
fcntl(7, F_SETFL, 0x00000082)                   = 0
brk(0x0052DA40)                                 = 0
brk(0x0052E240)                                 = 0
brk(0x0052E240)                                 = 0
brk(0x0052EA40)                                 = 0
brk(0x0052EA40)                                 = 0
brk(0x0052F240)                                 = 0

[... about here we get the connection]

write(5, "\0\0\007\001\0\0", 8)                 = 8
accept(3, 0xFFBFFAC8, 0xFFBFFAC4, 1)            Err#11 EAGAIN
ioctl(5, DP_POLL, 0xFFBFFBB0)   (sleeping...)
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 0
time()                                          = 1099680832
ioctl(5, DP_POLL, 0xFFBFFBB0)   (sleeping...)
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
read(7, " v e r s i o n\r\n", 2048)             = 9
read(7, 0x0052DA89, 2039)                       Err#11 EAGAIN
write(7, " V E R S I O N   1 . 1 .".., 16)      = 16
read(7, 0x0052DA80, 2048)                       Err#11 EAGAIN
ioctl(5, DP_POLL, 0xFFBFFBB0)   (sleeping...)
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
read(7, 0x0052DA80, 2048)                       = 0
write(5, "\0\0\007\b01\0\0", 8)                 = 8

[... here the connection closes out]

close(7)                                        = 0
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1
ioctl(5, DP_POLL, 0xFFBFFBB0)                   = 1

[... memcached loops like this forever at 100% CPU]


More information about the memcached mailing list