OpenSolaris

Printable Version Enter a New Search
Bug ID 6738349
Synopsis zfs promote fails without enough space
State 10-Fix Delivered (Fix available in build)
Category:Subcategory kernel:zfs
Keywords
Responsible Engineer Matthew Ahrens
Reported Against snv_86
Duplicate Of
Introduced In solaris_nevada
Commit to Fix snv_98
Fixed In snv_98
Release Fixed solaris_nevada(snv_98)
Related Bugs 6452872
Submit Date 18-August-2008
Last Update Date 9-October-2008
Description
Trying to promote a dataset doesn't work if less than approximately 100% of the space used by the dataset is also free. I.e. I have a rpool which is 93% full with 1.94GB available, and when I try to promote a dataset I get ENOSPC. I've attached a truss and a zfs list output.

This bug looks similar to 6452872 but happens when significant space is still available. Similarly, this bug is tracked as a bug with beadm(1) at http://defect.opensolaris.org/bz/show_bug.cgi?id=2302 as it has significant OpenSolaris impact.
We've seen this with as much a 6GB still available on the system. We're also
seeing this on systems with as much as 40% of the pool still available.

For example:
# zfs promote rpool/ROOT/opensolaris-2
cannot promote 'rpool/ROOT/opensolaris-2': out of space

# zfs list -o used,available,name rpool
 USED  AVAIL  NAME
4.32G  3.13G  rpool

# df -h
Filesystem             size   used  avail capacity  Mounted on
rpool/ROOT/opensolaris
                       7.4G   4.3G   3.1G    58%    /
/devices                 0K     0K     0K     0%    /devices
/dev                     0K     0K     0K     0%    /dev
ctfs                     0K     0K     0K     0%    /system/contract
proc                     0K     0K     0K     0%    /proc
mnttab                   0K     0K     0K     0%    /etc/mnttab
swap                   1.6G   324K   1.6G     1%    /etc/svc/volatile
objfs                    0K     0K     0K     0%    /system/object
sharefs                  0K     0K     0K     0%    /etc/dfs/sharetab
/usr/lib/libc/libc_hwcap3.so.1
                       7.4G   4.3G   3.1G    58%    /lib/libc.so.1
fd                       0K     0K     0K     0%    /dev/fd
swap                   1.6G    12K   1.6G     1%    /tmp
swap                   1.6G    40K   1.6G     1%    /var/run
rpool/ROOT/opensolaris/opt
                       7.4G   3.6M   3.1G     1%    /opt
rpool/export           7.4G    19K   3.1G     1%    /export


#zfs list
NAME                                       USED  AVAIL  REFER  MOUNTPOINT
rpool                                     4.32G  3.13G    58K  /rpool
rpool@install                             17.5K      -  57.5K  -
rpool/ROOT                                4.32G  3.13G    18K  legacy
rpool/ROOT@install                            0      -    18K  -
rpool/ROOT/opensolaris                    4.32G  3.13G  4.30G  legacy
rpool/ROOT/opensolaris@install            3.63M      -  2.29G  -
rpool/ROOT/opensolaris@opensolaris-2      2.43M      -  4.30G  -
rpool/ROOT/opensolaris-2                  70.5K  3.13G  4.30G  legacy
rpool/ROOT/opensolaris-2/opt                  0  3.13G  3.60M  /opt
rpool/ROOT/opensolaris/opt                3.60M  3.13G  3.60M  /opt
rpool/ROOT/opensolaris/opt@install            0      -  3.60M  -
rpool/ROOT/opensolaris/opt@opensolaris-2      0      -  3.60M  -
rpool/export                               511K  3.13G    19K  /export
rpool/export@install                          0      -    19K  -
rpool/export/home                          492K  3.13G   474K  /export/home
rpool/export/home@install                   18K      -    21K  -
Work Around
N/A
Comments
N/A