| 3 Dec 2025 |
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 |
aloisw | Hm yes, that's where I have seen these messages. Not noticed any excessive slowness though, but I can see different bottlenecks showing up there depending on machine speed. | 18:20:07 |
aloisw | For example, one thread not being enough to saturate the disk, transaction commit being stuck in fsync, deadlock on shitty code. | 18:21:23 |
aloisw | Not sure how much better other databases are on most of these points, except the first obviously. | 18:22:50 |
aloisw | SQL> CONNECT 'meow.db';
Statement failed, SQLSTATE = 08001
I/O error during "lock" operation for file "/home/aloisw/meow.db"
-Database already opened with engine instance, incompatible with current
Am I doing something wrong or does it not support concurrency at all? | 19:07:59 |
K900 | You have to use WAL mode | 19:08:17 |
K900 | To get single writer multiple readers | 19:08:22 |
aloisw | This is firebird, not SQLite. | 19:09:05 |
aloisw | Looks like it only supports concurrency in server mode. I suppose that's not so great for the Lix use case? (I would guess embedded support is why it was brough up to begin with?) | 19:15:51 |
raitobezarius | ah if it doesn't support it in embedded mode, meh… | 19:29:40 |
raitobezarius | we never went so far yet alois | 19:29:51 |
raitobezarius | so thanks for checking | 19:29:53 |
aloisw | "Deadlock" is not quite the right word here I guess, what I mean is the problem where idle transactions will still block others. | 19:36:24 |
aloisw | To be clear this is 10 minute experimentation, maybe there are some weird non-default flags that make it work, but I somewhat doubt it. | 19:36:58 |
Qyriad | hm, I mean server mode is fine when we have the daemon running so long as we can do writes without it | 19:41:09 |
K900 | At that point we might as well run postgres lol | 19:41:45 |
Qyriad | postgres has a file mode? | 19:42:05 |
aloisw | No, but if you accept running a server then it doesn't matter from the complexity perspective whether that server is Firebird or Postgres. | 19:42:43 |