Files on container filesystem are larger than total disk space, yet no errors reported

I am running a Ubuntu container in a snap lxd on a Ubuntu 20.04 LTS v-server.

I have a ZFS-based pool that reports just under 18 GiB space available:

$ lxc storage info default
info:
  description: ""
  driver: zfs
  name: default
  space used: 15.58GiB
  total space: 17.92GiB
used by:
  images:
  - 9f7418d1db5ccfe14c775e8e2c54c694df28700eb99a9a8fe196a7f96e9411f0
  instances:
  - db-01
  - wp-01
  - ws-01
  profiles:
  - default

I have a container that reports ~15 GB total disk space:


$ df -h
Filesystem                Size  Used Avail Use% Mounted on
default/containers/ws-01   15G   12G  2.4G  84% /
none                      492K  4.0K  488K   1% /dev
udev                      1.9G     0  1.9G   0% /dev/tty
tmpfs                     100K     0  100K   0% /dev/lxd
tmpfs                     100K     0  100K   0% /dev/.lxd-mounts
tmpfs                     2.0G   16K  2.0G   1% /dev/shm
tmpfs                     394M  256K  393M   1% /run
tmpfs                     5.0M     0  5.0M   0% /run/lock
tmpfs                     2.0G     0  2.0G   0% /sys/fs/cgroup
snapfuse                   64M   64M     0 100% /snap/core20/1623
snapfuse                   44M   44M     0 100% /snap/certbot/2192
snapfuse                  114M  114M     0 100% /snap/core/13425
snapfuse                   62M   62M     0 100% /snap/core20/1611
snapfuse                  115M  115M     0 100% /snap/core/13741
snapfuse                   45M   45M     0 100% /snap/certbot/2344
tmpfs                     394M     0  394M   0% /run/user/1001

To my great astonishment, I extracted an archive in this container which, when extracted, ballooned to a reported ~25GB in size:

65774 -rw-rw-r-- 1 stephen stephen 26470608214 Sep 3 09:28 data.sql

I expected this to cause disk full errors, but it has not. Why not? What is going on here?

Here is the storage pool information from zfs:

$ zfs list
NAME                                                                                      USED  AVAIL     REFER  MOUNTPOINT
default                                                                                  15.6G  2.34G       24K  none
default/containers                                                                       13.6G  2.34G       24K  none
default/containers/db-01                                                                  796M  2.34G     1.11G  none
default/containers/wp-01                                                                  847M  2.34G     1.03G  none
default/containers/ws-01                                                                 12.0G  2.34G     11.7G  none
default/custom                                                                             24K  2.34G       24K  none
default/deleted                                                                           816M  2.34G       24K  none
default/deleted/containers                                                                 24K  2.34G       24K  none
default/deleted/custom                                                                     24K  2.34G       24K  none
default/deleted/images                                                                    816M  2.34G       24K  none
default/deleted/images/3dc53983cb37b781773e7dee3b651a24a306e6bff9facb2163970f9f3051c696   231M  2.34G      231M  none
default/deleted/images/7e8bbf2f24234c9414314019cfa275870f945a6a2ed52c944c3c11a16a98e4ef   585M  2.34G      585M  none
default/deleted/virtual-machines                                                           24K  2.34G       24K  none
default/images                                                                           1.19G  2.34G       24K  none
default/images/9f7418d1db5ccfe14c775e8e2c54c694df28700eb99a9a8fe196a7f96e9411f0          1.19G  2.34G     1.19G  none
default/virtual-machines                                                                   24K  2.34G       24K  none

Here is the pool information (more useful than zfs list :wink: )

$ zpool list
NAME      SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
default  18.5G  15.6G  2.90G        -         -    44%    84%  1.00x    ONLINE  -