Roundcube - DB Error: Table 'roundcubemail.session' doesn't exist

NethServer Version: NS8B2 on Debian12 Bare Metal
Module: Roundcube
Images:
localhost/podman-pause:4.3.1-0
docker.io/roundcube/roundcubemail:1.6.2-apache
docker.io/library/mariadb:10.11.5

After installation and setup when trying to access the login page i get an “Oops… something went wrong!”

Looking at the “System logs” for the roundcube app see errors regarding missing table.

Seems like the initializing of the DB is missing?

3 Likes

Can it be reproduced by someone else?

Note for bug reporting: please do not attach screenshot of logs, use cut/paste instead :pray:

1 Like

no, just installed it yesterday, so far no issue, do your hypervisor is on ssd on on spinning drive ?

It is a HP Mircroserver with Debian 12 on bare metal (no hypervisor).
3 disks are of type spinning, btrfs raid1.

1 Like

I need to test with a sloooooowwwwwww machine, thank

Hi all,

NethServer Version: NS8B2 on Debian12 minimal install
Module: Roundcube

VirtualBox 7.0.10 rt158379 (QT5.15.3)
DISK: 60GB on SSD
RAM 16GB // 2 CPU

vendor_id       : GenuineIntel
cpu family      : 6
model           : 26
model name      : Intel(R) Xeon(R) CPU           W3520  @ 2.67GHz
stepping        : 5
cpu MHz         : 2666.672
cache size      : 8192 KB
...
bogomips        : 5333.34

image

It happened to me many time before.

2023-09-26T11:18:04-04:00 [1:roundcubemail1:roundcubemail-app] No security vulnerability advisories found
2023-09-26T11:18:04-04:00 [1:roundcubemail1:roundcubemail-app] wait-for-it.sh: waiting 30 seconds for 127.0.0.1:3306
2023-09-26T11:18:04-04:00 [1:roundcubemail1:mariadb-app] 2023-09-26 15:18:04 4 [Warning] Aborted connection 4 to db: 'unconnected' user: 'unauthenticated' host: '127.0.0.1' (This connection closed normally without authentication)
2023-09-26T11:18:04-04:00 [1:roundcubemail1:roundcubemail-app] wait-for-it.sh: 127.0.0.1:3306 is available after 0 seconds
2023-09-26T11:18:04-04:00 [1:roundcubemail1:roundcubemail-app] Write Docker config to /var/www/html/config/config.docker.inc.php
2023-09-26T11:18:04-04:00 [1:roundcubemail1:roundcubemail-app] Checking for database schema updates...
2023-09-26T11:18:04-04:00 [1:roundcubemail1:roundcubemail-app] Updating database schema (2013061000)... [FAILED]
2023-09-26T11:18:04-04:00 [1:roundcubemail1:roundcubemail-app] ERROR: Error in DDL upgrade 2013061000: [1146] Table 'roundcubemail.cache' doesn't exist
2023-09-26T11:18:04-04:00 [1:roundcubemail1:roundcubemail-app] Failed to initialize/update the database. Please start with an empty database and restart the container.
2023-09-26T11:18:04-04:00 [1:roundcubemail1:roundcubemail-app] Generating locales (this might take a while)...
2023-09-26T11:18:06-04:00 [1:roundcubemail1:roundcubemail-app]   en_US.UTF-8... done
2023-09-26T11:18:06-04:00 [1:roundcubemail1:roundcubemail-app] Generation complete.
2023-09-26T11:18:06-04:00 [1:roundcubemail1:roundcubemail-app] AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 10.0.2.100. Set the 'ServerName' directive globally to suppress this message
2023-09-26T11:18:06-04:00 [1:roundcubemail1:roundcubemail-app] AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 10.0.2.100. Set the 'ServerName' directive globally to suppress this message
2023-09-26T11:18:06-04:00 [1:roundcubemail1:roundcubemail-app] [Tue Sep 26 15:18:06.656174 2023] [mpm_prefork:notice] [pid 1] AH00163: Apache/2.4.57 (Debian) PHP/8.1.22 configured -- resuming normal operations
2023-09-26T11:18:06-04:00 [1:roundcubemail1:roundcubemail-app] [Tue Sep 26 15:18:06.656350 2023] [core:notice] [pid 1] AH00094: Command line: 'apache2 -D FOREGROUND'
2023-09-26T11:20:48-04:00 [1:roundcubemail1:agent@roundcubemail1] task/module/roundcubemail1/2a27df48-1bc9-4d47-aad3-81781d9424f1: get-name/50get_name is starting
2023-09-26T11:20:48-04:00 [1:roundcubemail1:agent@roundcubemail1] task/module/roundcubemail1/d98f0641-d487-4c25-a7e6-5922bd255902: get-status/20read is starting
2023-09-26T11:20:48-04:00 [1:roundcubemail1:agent@roundcubemail1] task/module/roundcubemail1/2a27df48-1bc9-4d47-aad3-81781d9424f1: action "get-name" status is "completed" (0) at step 50get_name
2023-09-26T11:20:49-04:00 [1:roundcubemail1:agent@roundcubemail1] task/module/roundcubemail1/d98f0641-d487-4c25-a7e6-5922bd255902: action "get-status" status is "completed" (0) at step validate-output.json
2023-09-26T11:20:50-04:00 [1:roundcubemail1:agent@roundcubemail1] task/module/roundcubemail1/a16a9296-9a28-4bed-ba8e-8e748785909a: get-configuration/20read is starting
2023-09-26T11:20:51-04:00 [1:roundcubemail1:agent@roundcubemail1] task/module/roundcubemail1/a16a9296-9a28-4bed-ba8e-8e748785909a: action "get-configuration" status is "completed" (0) at step validate-output.json
2023-09-26T11:21:00-04:00 [1:roundcubemail1:roundcubemail-app] errors: <c32777d0> DB Error: [1146] Table 'roundcubemail.session' doesn't exist (SQL Query: SELECT `vars`, `ip`, `changed`, now() AS ts, CASE WHEN `changed` < now() - INTERVAL 600 SECOND THEN 1 ELSE 0 END AS expired FROM `session` WHERE `sess_id` = 'c32777d05f00dff4e19d54f6feee1d90') in /var/www/html/program/lib/Roundcube/rcube_db.php on line 567 (GET /)
2023-09-26T11:21:00-04:00 [1:roundcubemail1:roundcubemail-app] errors: <c32777d0> DB Error: [1146] Table 'roundcubemail.session' doesn't exist (SQL Query: INSERT INTO `session` (`sess_id`, `vars`, `ip`, `changed`) VALUES ('c32777d05f00dff4e19d54f6feee1d90', 'dGVtcHxiOjE7bGFuZ3VhZ2V8czo1OiJmcl9GUiI7dGFza3xzOjU6ImxvZ2luIjtza2luX2NvbmZpZ3xhOjc6e3M6MTc6InN1cHBvcnRlZF9sYXlvdXRzIjthOjE6e2k6MDtzOjEwOiJ3aWRlc2NyZWVuIjt9czoyMjoianF1ZXJ5X3VpX2NvbG9yc190aGVtZSI7czo5OiJib290c3RyYXAiO3M6MTg6ImVtYmVkX2Nzc19sb2NhdGlvbiI7czoxNzoiL3N0eWxlcy9lbWJlZC5jc3MiO3M6MTk6ImVkaXRvcl9jc3NfbG9jYXRpb24iO3M6MTc6Ii9zdHlsZXMvZW1iZWQuY3NzIjtzOjE3OiJkYXJrX21vZGVfc3VwcG9ydCI7YjoxO3M6MjY6Im1lZGlhX2Jyb3dzZXJfY3NzX2xvY2F0aW9uIjtzOjQ6Im5vbmUiO3M6MjE6ImFkZGl0aW9uYWxfbG9nb190eXBlcyI7YTozOntpOjA7czo0OiJkYXJrIjtpOjE7czo1OiJzbWFsbCI7aToyO3M6MTA6InNtYWxsLWRhcmsiO319', '10.0.2.100', now())) in /var/www/html/program/lib/Roundcube/rcube_db.php on line 567 (GET /)
2023-09-26T11:21:00-04:00 [1:roundcubemail1:roundcubemail-app] 10.0.2.100 - - [26/Sep/2023:15:21:00 +0000] "GET / HTTP/1.1" 200 950 "-" "Mozilla/5.0 (Windows NT 6.3; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0"
2023-09-26T11:21:00-04:00 [1:roundcubemail1:roundcubemail-app] 10.0.2.100 - - [26/Sep/2023:15:21:00 +0000] "GET /favicon.ico HTTP/1.1" 200 1991 "https://roundcubemail.debian.toto-dev.org/" "Mozilla/5.0 (Windows NT 6.3; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0"

Michel-André

1 Like

https://ark.intel.com/content/www/fr/fr/ark/products/39718/intel-xeon-processor-w3520-8m-cache-2-66-ghz-4-80-gts-intel-qpi.html

Intel(R) Xeon(R) CPU W3520 release date of the processor Q01/2009

probably a slow processor and roundcubemail is starting to request to mariadb before this one has not finished to start. We need to implement a check I think

trello card done

7 posts were split to a new topic: NS8 vs NS7: hardware requirements and security (feel free to change the title)

Sorry guys, your discussion is not really helpful for the topic.

Anyhow, i installed a similar setup but with virtualbox on an zbook, this works lightning fast compared to my old firend the HP microserver.

And no issues with the database.

1 Like

Hi @Viking

Note a notebook, especially a zbook, is not concepted for 24*7 use, neither is Virtualbox.

Both are Workstation (PC) software / hardware.

You probably will have issues soon!

NethServer is server software, and should run on “server” hardware, built for 24*7 operations…

My 2 cents
Andy

Hi @Andy_Wismer,

Obviously not… but for testing as NS8B2 also should only be used for, this is quite nice.

BR,
/Erik

1 Like

add-module ghcr.io/nethserver/roundcubemail:mariadb_check

Try to see if roundcubemail-app is well started after mariadb-app

Use the log page and filter by the module id of roundcubemail eg roundcubemail1 for example

Thanks @stephdl,

This works as expected.
In the log one can see that the connection to the database re-checked until it finally becomes operational.
This seems to solve the race condition. :slight_smile:

/Erik

2 Likes

No matter Erik it is interesting to test with slower server than our race horse we use as developer.

@michelandre there was nothing offending in my statement and I would apologize if you took it badly

1 Like