Skip to main content
Topic: Fatal: Invalid database size (Read 408 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Fatal: Invalid database size

Hello,

I’m having kind of a scary issue. I tried installing gdm-s6. After doing so (and uninstalling/removing the service for sddm), I touched a file called gdm in /etc/s6/adminsv/contents.d/, and then ran s6-db-reload. Everything compiled, and I restarted. Nothing booted, and s6 was complaining about something to do with gdm/type needing to be longrun or whatever. OK, no problem. I uninstalled gdm-s6 and gdm, and tried to reload the db again. It was still upset about gdm as a service, so I manually removed it from the sv directory. Reloaded db, it worked, and I restart.

Now I get an error:
Code: [Select]
s6-rc-init: fatal: invalid database size in /etc/s6/rc/compiled
I’ve been clearing the rc folder, reloading the database, and then trying to update to the new compiled database, but the locks wont come off. I’m kind of stuck here.

The scary thing is that in tty7 where I’ve been working, it no longer sees my home folder and ls /home/ is completely empty.

Please help me out!

Re: Fatal: Invalid database size

Reply #1
Crap. So the gdm-s6 package had an old hack for upgrading from an old version when the s6 backend was way different. sddm-s6 had a similar hack too. I completely forgot to remove those (which should have been done like last year some time) and somehow it has never broken anyone's machine until just now. I've just upgraded both packages to remove that junk.

The scary thing is that in tty7 where I’ve been working, it no longer sees my home folder and ls /home/ is completely empty.

That just means your /home isn't mounted. No need to panic. You probably need to manually make/update the database at this point to recover. Try these sets of commands (root of course). Make sure you do not have any gdm/sddm folders or files lying around in /etc/s6/sv or /etc/s6/adminsv.

Code: [Select]
TIMESTAMP=$(date +%s%N)
s6-rc-compile /etc/s6/rc/compiled-${TIMESTAMP} /etc/s6/sv /etc/s6/adminsv
ln -sf /etc/s6/rc/compiled-${TIMESTAMP} /etc/s6/rc/compiled && mv -f /etc/s6/rc/compiled/compiled /etc/s6/rc

Hopefully, nothing goes wrong there. After that, give the machine a reboot and it should back up again.

Re: Fatal: Invalid database size

Reply #2
 Thank you for this. I tried the given set of commands and it doesn’t seem to help. Same error when I boot. I also tried moving /etc/s6/rc/compiled/compiled-${TIMESTAMP} instead and it doesn’t seem to change anything; in any case, when I run the last command I get a message from mv saying the files are the same.

Any other ideas?

Re: Fatal: Invalid database size

Reply #3
Hmm maybe just try nuking all your databases. I'd say chroot into the system to be on the safe side so s6-rc isn't currently running. Once you've done the artix-chroot

Code: [Select]
rm -r /etc/s6/rc/*
TIMESTAMP=$(date +%s%N)
s6-rc-compile /etc/s6/rc/compiled-${TIMESTAMP} /etc/s6/sv /etc/s6/adminsv
ln -sf /etc/s6/rc/compiled-${TIMESTAMP} /etc/s6/rc/compiled

Should be OK after a reboot provided that your service definitions are all good and s6-rc-compile doesn't error on you.

 

Re: Fatal: Invalid database size

Reply #4
Gotcha, I’ll try this on Monday and let you know if it goes alright.