Paul B. Henson
2008-Oct-11 03:17 UTC
[zfs-discuss] occasional very slow zfs commands on x4500 with SolarisExpress 97
I''ve been playing with Solaris express community edition on some x4500 servers (SunOS kenny 5.11 snv_97 i86pc i386 i86pc), trying to get a head start on a configuration for U6 when it comes out (soon I hope). Sometimes zfs commands take extremely long to execute, other times they are very fast. I know SolarisExpress isn''t production software, but I thought I''d mention the problem just to see if it was known or if anybody had an opinion on it. I ran truss on a ''zfs create'', the entire output is too much to list, but I''ve excerpted the following: It scrolled by too fast to see up until the end of this section: 1289: open("/dev/zfs", O_RDWR) = 3 1289: fstat64(3, 0x08047BD0) = 0 1289: stat64("/dev/pts/0", 0x08047C60) = 0 1289: open("/etc/mnttab", O_RDONLY) = 4 1289: fstat64(4, 0x08047B70) = 0 1289: open("/etc/dfs/sharetab", O_RDONLY) = 5 1289: fstat64(5, 0x08047B70) = 0 1289: open("/etc/mnttab", O_RDONLY) = 6 1289: fstat64(6, 0x08047B90) = 0 1289: xstat(2, "/lib/libnvpair.so.1", 0x08047338) = 0 1289: resolvepath("/lib/libnvpair.so.1", "/lib/libnvpair.so.1", 1023) 19 1289: open("/lib/libnvpair.so.1", O_RDONLY) = 7 1289: mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 7, 0) = 0xFEA10000 1289: mmap(0x00010000, 102400, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFE9F0000 1289: mmap(0xFE9F0000, 32614, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 7, 0) = 0xFE9F0000 1289: mmap(0xFEA08000, 804, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 7, 32768) = 0xFEA08000 1289: munmap(0xFE9F8000, 65536) = 0 1289: memcntl(0xFE9F0000, 11716, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 1289: close(7) = 0 1289: munmap(0xFEA10000, 32768) = 0 1289: ioctl(3, ZFS_IOC_OBJSET_STATS, 0x08045230) = 0 1289: ioctl(3, ZFS_IOC_OBJSET_STATS, 0x08043190) = 0 1289: brk(0x08092000) = 0 1289: brk(0x080A3000) = 0 1289: ioctl(3, ZFS_IOC_POOL_STATS, 0x08043110) = 0 1289: brk(0x080B3000) = 0 1289: zone_lookup(0x00000000) = 0 1289: ioctl(3, ZFS_IOC_OBJSET_STATS, 0x080446D0) Err#2 ENOENT Right here, it paused for about 40 seconds between the above line and the below line. 1289: ioctl(3, ZFS_IOC_CREATE, 0x080467C0) = 0 1289: ioctl(3, ZFS_IOC_OBJSET_STATS, 0x08045850) = 0 1289: ioctl(3, ZFS_IOC_POOL_GET_PROPS, 0x08045DF0) = 0 1289: lxstat(2, "/export/test5", 0x08047C58) Err#2 ENOENT>From this point on it executed very quickly. This same pattern appears inother zfs commands, with a long delay in the middle of the truss output, seemingly doing nothing. I haven''t seen this problem on some x4100''s I''ve also been running with SolarisExpress, but it''s occurred on both x4500''s I''ve been playing with. Just curious if it''s a known issue... Thanks... -- Paul B. Henson | (909) 979-6361 | http://www.csupomona.edu/~henson/ Operating Systems and Network Analyst | henson at csupomona.edu California State Polytechnic University | Pomona CA 91768