| 3 Dec 2025 |
raitobezarius | it might be we are holding it wrong too but we are corrupting way too much integrity | 14:12:43 |
griff | I am curious how small of an upper bound on data? | 15:59:10 |
raitobezarius | 1994 bytes is one we decided to stop after | 15:59:32 |
raitobezarius | (the upperbound might be even lower…) | 15:59:50 |
raitobezarius | * (the tight upperbound might be even lower…) | 15:59:56 |
raitobezarius | like you could definitely write a meta.description that will eat towards it significantly | 16:00:25 |
raitobezarius | * like you could definitely write a meta.longDescription that will eat towards it significantly | 16:00:50 |
griff | I was thinking more to store NarInfo there to guard against corruption. | 16:01:16 |
raitobezarius | we wanted to remove the SQLite DB and store the data directly in xattrs dir inodes | 16:01:29 |
griff | But 1994 is VERY tight | 16:01:30 |
raitobezarius | unfortunately a graph cannot fit into 1994b | 16:01:37 |
raitobezarius | hence why we gave up on this | 16:01:43 |
raitobezarius | it seems like this is mostly a linux problem for the record | 16:01:51 |
raitobezarius | i think macOS and Windows have very comfortable margins | 16:01:57 |
raitobezarius | then also the code that writes "big xattrs" in ext4 frightened me a bit | 16:02:18 |
raitobezarius | and i could see the day where a fs stops remounting because this part of ext4 code is not super well tested | 16:02:29 |
raitobezarius | FTR, ext4 is 4040 bytes max | 16:02:41 |
raitobezarius | (in ~default settings) | 16:02:46 |
griff | I knew that one. It is not just 4040 max it takes up 4K even if you store a couple of bytes. Filled up my drive once learning that. | 16:04:13 |
aloisw | Do we have a reproducer for that? I sometimes (but rarely) run into the retry warning, but never saw the deadlock thing myself. | 16:05:00 |
aloisw | Regarding xattrs, it's also easy to lose them when transferring files, and then wonder what's going on. | 16:06:07 |
Qyriad | well if it's just meta, that's fine — the same derivation can have different meta attrs after all | 16:12:45 |
raitobezarius | why can the exact same derivation have different meta attrs? | 18:17:56 |
raitobezarius | ah i see what you mean | 18:18:07 |
raitobezarius | Drv → Meta is not injective | 18:18:13 |
raitobezarius | that's right | 18:18:16 |
raitobezarius | but like if people starts depending on them via xattrs, that sounds ugh | 18:18:35 |
raitobezarius | basically large scale CI, nej workloads | 18:18:41 |
raitobezarius | It doesn't deadlock though | 18:18:49 |
raitobezarius | It's just way too slow | 18:18:51 |