I have been running urbackup in a FreeNAS 9.10 jail for years, and it worked great. I love teh program. I took the plunge recently to update the FreeNAS to 11.3, and since then urbackupsrv is crashing on startup.
I tried creating a new jail and setting up a fresh copy of urbackup. On the first run, it worked. I was able to get in to the web interface and point the backup data directory to the mounted zfs datastore and create an admin user. After restarting it however, it also crashes on start.
I compiled urbackup server from the latest source, 2.4.13.
uname -a
FreeBSD urbackup-test 11.3-RELEASE-p14 FreeBSD 11.3-RELEASE-p14 #0 r325575+c936002dbe2(HEAD): Mon Sep 28 10:46:56 EDT 2020 root@tnbuilds05.tn.ixsystems.net:/freenas-releng/freenas/_BE/objs/freenas-releng/freenas/_BE/os/sys/FreeNAS.amd64 amd64
The logs look like this:
2020-10-30 10:12:39: Starting HTTP-Server on port 55414
2020-10-30 10:12:39: HTTP: Server started up successfully!
2020-10-30 10:12:39: SQLite: recovered 4 frames from WAL file /usr/local/var/urbackup/backup_server.db-wal code: 283
2020-10-30 10:12:39: SQLite: recovered 1 frames from WAL file /usr/local/var/urbackup/backup_server_link_journal.db-wal code: 283
2020-10-30 10:12:39: SQLite: recovered 10 frames from WAL file /usr/local/var/urbackup/backup_server_settings.db-wal code: 283
2020-10-30 10:12:39: SQLite: recovered 4 frames from WAL file /usr/local/var/urbackup/backup_server.db-wal code: 283
2020-10-30 10:12:39: SQLite: recovered 10 frames from WAL file /usr/local/var/urbackup/backup_server_settings.db-wal code: 283
2020-10-30 10:12:39: SQLite: recovered 1 frames from WAL file /usr/local/var/urbackup/backup_server_link_journal.db-wal code: 283
Running it through tmux and gdb, I get the following three crashes:
(gdb) run
Starting program: /usr/local/bin/urbackupsrv run -g 104857600 -u root -v debug
2020-10-30 10:09:44: Starting HTTP-Server on port 55414
2020-10-30 10:09:44: HTTP: Server started up successfully!
2020-10-30 10:09:44: SQLite: recovered 4 frames from WAL file /usr/local/var/urbackup/backup_server.db-wal code: 283
2020-10-30 10:09:44: SQLite: recovered 1 frames from WAL file /usr/local/var/urbackup/backup_server_link_journal.db-wal code: 283
2020-10-30 10:09:44: SQLite: recovered 10 frames from WAL file /usr/local/var/urbackup/backup_server_settings.db-wal code: 283
Program received signal SIGFPE, Arithmetic exception.
0x0000000000511eec in sqlite3StartTable (pParse=, pName1=, pName2=, isTemp=89079625,
isView=, isVirtual=, noErr=0) at sqlite/sqlite3.c:31595
31595 h = strHash(pKey) % pH->htsize;
Current language: auto; currently minimal
(gdb) bt
#0 0x0000000000511eec in sqlite3StartTable (pParse=, pName1=, pName2=, isTemp=89079625,
isView=, isVirtual=, noErr=0) at sqlite/sqlite3.c:31595
Segmentation fault
(gdb) run
Starting program: /usr/local/bin/urbackupsrv run -g 104857600 -u root -v debug
2020-10-30 10:11:13: Starting HTTP-Server on port 55414
2020-10-30 10:11:13: HTTP: Server started up successfully!
2020-10-30 10:11:13: SQLite: recovered 4 frames from WAL file /usr/local/var/urbackup/backup_server.db-wal code: 283
2020-10-30 10:11:13: SQLite: recovered 1 frames from WAL file /usr/local/var/urbackup/backup_server_link_journal.db-wal code: 283
2020-10-30 10:11:13: SQLite: recovered 10 frames from WAL file /usr/local/var/urbackup/backup_server_settings.db-wal code: 283
2020-10-30 10:11:13: SQLite: recovered 4 frames from WAL file /usr/local/var/urbackup/backup_server.db-wal code: 283
2020-10-30 10:11:13: SQLite: recovered 10 frames from WAL file /usr/local/var/urbackup/backup_server_settings.db-wal code: 283
2020-10-30 10:11:13: SQLite: recovered 1 frames from WAL file /usr/local/var/urbackup/backup_server_link_journal.db-wal code: 283
Program received signal SIGSEGV, Segmentation fault.
0x00000000004ba498 in sqlite3FindTable (db=0x805441208, zName=0x805508b68 “misc”, zDatabase=0x0)
Current language: auto; currently minimal
(gdb) bt
#0 0x00000000004ba498 in sqlite3FindTable (db=0x805441208, zName=0x805508b68 “misc”, zDatabase=0x0)
Segmentation fault
(gdb) run
Starting program: /usr/local/bin/urbackupsrv run -g 104857600 -u root -v debug
2020-10-30 10:12:45: Starting HTTP-Server on port 55414
2020-10-30 10:12:45: HTTP: Server started up successfully!
2020-10-30 10:12:45: SQLite: recovered 4 frames from WAL file /usr/local/var/urbackup/backup_server.db-wal code: 283
2020-10-30 10:12:45: SQLite: recovered 1 frames from WAL file /usr/local/var/urbackup/backup_server_link_journal.db-wal code: 283
2020-10-30 10:12:45: SQLite: recovered 10 frames from WAL file /usr/local/var/urbackup/backup_server_settings.db-wal code: 283
Program received signal SIGBUS, Bus error.
sqlite3MemSize (pPrior=0x5b8000000080541) at sqlite/sqlite3.c:22629
22629 return (int)p[0];
(gdb) bt
#0 sqlite3MemSize (pPrior=0x5b8000000080541) at sqlite/sqlite3.c:22629
Segmentation fault