Re:FFMPEG from Zero to Hero
by zdw on Sunday March 07, 2021 @12:05AM
(#26373311)
Per the docs on zfs program:
Which would be somewhat hard to ensure with an external language.
[ Parent
| on HN ]
This just sounds like when the script is run, a lock is taken. It seems like a pretty fast and loose definition of "atomic" (as in, not the ACID sense), as it says below:
If a fatal error is returned, the channel program may have not executed at all, may have partially executed, or may have fully executed but failed to pass a return value back to userland.
If an external tool is allowed to acquire this kind of exclusive lock, I don't see the difference.
Re:FFMPEG from Zero to Hero
by magicalhippo on Sunday March 07, 2021 @04:56AM
(#26374602)
> If an external tool is allowed to acquire this kind of exclusive lock, I don't see the difference.
That's the whole point, as I understand it. The channel programs are executed in the kernel, in a way that cannot be done by external programs. Some more details here[1].
edit: I also think you should have included the note, which says
Note: ZFS API functions do not generate Fatal Errors when correctly invoked, they return an error code and the channel program continues executing.
So while it's not quite ACID-level, its not as bad as it sounds without that note.