Ask HN: Is there any need for new file systems or GTFO we are full?
1–10 of 11 posts
Re: Ask HN: Is there any need for new file systems or GTFO we are full?
#2revision control systems are littered with filesystem projects that have died on the tree.
Re: Ask HN: Is there any need for new file systems or GTFO we are full?
#3Re: Ask HN: Is there any need for new file systems or GTFO we are full?
#4 begin transaction
create file X if it doesn't exist, otherwise abort transaction
write some stuff to file X
open file Y
overwrite some data in file Y
if commit transaction
end transaction
Nested transactions would be required as you'd have no idea whether you're already in a transaction.Something like this can be coded (painfully) with renames, but it's unreliable, hard to test, and hard/impossible to coordinate with higher-level modules.
Re: Ask HN: Is there any need for new file systems or GTFO we are full?
#5One feature I wish filesystems had is transaction support, ie: begin transaction create file X if it doesn't exist, otherwise abort transaction write some stuff to file X open file Y overwrite some data in file Y if commit transaction end transaction Nested transactions would be required as you'd have no idea whether you're already in a transaction. Something like this can be coded (painfully) with renames, but it's…
Re: Ask HN: Is there any need for new file systems or GTFO we are full?
#6Re: Ask HN: Is there any need for new file systems or GTFO we are full?
#7One feature I wish filesystems had is transaction support, ie: begin transaction create file X if it doesn't exist, otherwise abort transaction write some stuff to file X open file Y overwrite some data in file Y if commit transaction end transaction Nested transactions would be required as you'd have no idea whether you're already in a transaction. Something like this can be coded (painfully) with renames, but it's…
Looks beautiful, but what's the real life use case?
Trying to coordinate all the filesystem operations to make that atomic is not that simple in my experience. It's hard to test too.
Re: Ask HN: Is there any need for new file systems or GTFO we are full?
#8Earlier quoted context omitted.
Looks beautiful, but what's the real life use case?
You have 2 databases to update. Either both have to be updated or neither, because you're installing a new version of a program. Actually, installing the new program should also be part of the transaction! Either the whole thing works, or you are back at the original (working) version of the program. Trying to coordinate all the filesystem operations to make that atomic is not that simple in my experience. It's hard…
Re: Ask HN: Is there any need for new file systems or GTFO we are full?
#9One feature I wish filesystems had is transaction support, ie: begin transaction create file X if it doesn't exist, otherwise abort transaction write some stuff to file X open file Y overwrite some data in file Y if commit transaction end transaction Nested transactions would be required as you'd have no idea whether you're already in a transaction. Something like this can be coded (painfully) with renames, but it's…
Re: Ask HN: Is there any need for new file systems or GTFO we are full?
#10There's also all sorts of FSes that aren't based on hardware, like eCryptFS/EncFS for encrypted directories, s3fs for using AWS S3 as an FS, sshfs for remotely mounting a directory from another machine, btfs for mounting a bittorrent as an FS. The number of things that can be done as an FS seems almost boundless.