In a nutshell yes.
It is confusing a bit from user perspective,zfs used/usedsnap etc.
I would recommend reading about snapshots and COW in general.
Any tech that uses those, basically works on same principle.
Range is from filesystems (zfs,brtfs etc.) to enterprise storage systems with proprietary HW/SW.
Everything works the same way more or less.
Lets say blocks need to be modified due to write request.
Instead of overwriting blocks, zfs will write a change a new blocks, while old blocks will still contain old data, and that data will remain on disk until needed and is considered free.
This is what enables snapshots,clones, rollback etc. which is fundamental design of zfs filesystem/volume manager.
If there is a snapshot (pointers to old blocks at the time snapshot is taken), those will not be considered free but will remain unchanged (read the blog i posted, it is extremely good).
This is what enables snapshots,clones, rollback etc.
ZFS is a great and fairly complex product code wise with a lot of time and effort put into it.
One can only put a hat down to those SUN engineers behind it.
Those guys were ahead of their time.
Also, i must apologize upfront for information given in this post due to minor alcohol intoxication
This happens you know, when you are in automation business.
As a folks say here
'An idle mind is a devils workshop'
Regards
Peasant.