• Please be aware: Kaspersky Anti-Virus has been deprecated
    With the upgrade to Plesk Obsidian 18.0.64, "Kaspersky Anti-Virus for Servers" will be automatically removed from the servers it is installed on. We recommend that you migrate to Sophos Anti-Virus for Servers.
  • The Horde webmail has been deprecated. Its complete removal is scheduled for April 2025. For details and recommended actions, see the Feature and Deprecation Plan.
  • We’re working on enhancing the Monitoring feature in Plesk, and we could really use your expertise! If you’re open to sharing your experiences with server and website monitoring or providing feedback, we’d love to have a one-hour online meeting with you.

BUG Plesk 11.5.30 and Horde Webmailer: A fatal error has occurred

Fl0Wde

New Pleskian
Hi folks,

i updated Plesk to the latest version 11.5.30 #1 and have a big problem: Horde Webmailer isnn't working anymore.

For every client at the server by loging in at Horde this fault occur in webbrowser:

HTML:
<html>
<head><title>Horde :: Fatal Error</title></head>
<body style="background:#fff; color:#000"><h1>A fatal error has occurred</h1><h3>SQLSTATE[42S22]: Column not found: 1054 Unknown column 'share_parents' in 'field list'</h3><h3>Details have been logged for the administrator.</h3></body></html>

The log file tells me the following:

Code:
2013-06-27T08:45:33+00:00 ERR: HORDE [kronolith] SQL QUERY FAILED: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'share_parents' in 'field list'
        INSERT INTO kronolith_shares (share_name, share_parents, share_owner,
          attribute_name, attribute_color, perm_creator, perm_default,
          perm_guest, share_flags) VALUES ('xxxxxxxxxxxxxxxxxxxxxxx', NULL,
          '[email protected]', 'Calendar of [email protected]',
          '#7450bd', 0, 0, 0, 0) [pid 21530 on line 815 of "/usr/share/psa-pear/pear/php/Horde/Db/Adapter/Base.php"]
2013-06-27T08:45:33+00:00 ERR: HORDE [kronolith] SQLSTATE[42S22]: Column not found: 1054 Unknown column 'share_parents' in 'field list' [pid 21530 on line 311 of "/usr/share/psa-pear/pear/php/Horde/Share/Object/Sql.php"]
2013-06-27T08:45:33+00:00 EMERG: HORDE [horde] SQLSTATE[42S22]: Column not found: 1054 Unknown column 'share_parents' in 'field list' [pid 21530 on line 1601 of "/usr/share/psa-pear/pear/php/Horde/Registry.php"]

As i can see there is a insert problem by horde into the database. I hope you can do some fix or tell me/us a workarround.

Thanks, greets Fl0W
 
It would be nice to have Horde-related entries from upgrade logs (look in /tmp). Otherwise it's really hard to understand why you have a broken configuration.


[Edited below for newcomers to the thread]

Stop right there!

Don't read any further, search for a solution in another thread instead. Instructions in this thread may damage your Plesk installation!


The issue has long been fixed and instructions posted here are no longer applicable. If you're still experiencing Horde DB errors after several upgrades, your last resort is using this instruction.
 
Last edited:
It would be nice to have Horde-related entries from upgrade logs (look in /tmp). Otherwise it's really hard to understand why you have a broken configuration.

which log exactly do you mean? these ones from ugrading Plesk?

Code:
root@me:/tmp# ls -h
MU24-reconfigure_server.log
autoinstaller3.log
autoinstaller3_2013-05-31_1237.log
cache_604ab4184cc5afc0d82108d7ab1052ab
horde_cache_gc
mchk.log
monitrc.chk
plesk-relink-vhost-logs-async-task.log
plesk-whc-installation.log
plesk_11.0.9_installation.log
plesk_11.0.9_installation_problems.log
plesk_11.5.29_installation.log
plesk_11.5.30_installation.log
psa-installer.lock
repo_transport_tmp_8HNzPc
repo_transport_tmp_8ceG4a
repo_transport_tmp_Ag6cpd
repo_transport_tmp_BkYQRi
repo_transport_tmp_JnbvPb
repo_transport_tmp_RXrreT
repo_transport_tmp_RbaZbf
repo_transport_tmp_SMjnmf
repo_transport_tmp_absmWf
repo_transport_tmp_ccbRL6
repo_transport_tmp_h5FwS2
repo_transport_tmp_iLiIgj
repo_transport_tmp_lwwIxW
repo_transport_tmp_nqLsQy
repo_transport_tmp_rKAhCr
repo_transport_tmp_rYXq05
repo_transport_tmp_tOybar
repo_transport_tmp_w370hx
repo_transport_tmp_zTRN6y
sitebuilder_11.0.10_installation.log
sitebuilder_11.5.4_installation.log
sitebuilder_11.5.5_installation.log
zend_cache---Zend_LocaleC_en_US_decimalnumber_
zend_cache---Zend_LocaleC_en_US_scientificnumber_
zend_cache---Zend_LocaleL_en_US_symbols_
zend_cache---internal-metadatas---Zend_LocaleC_en_US_decimalnumber_
zend_cache---internal-metadatas---Zend_LocaleC_en_US_scientificnumber_
zend_cache---internal-metadatas---Zend_LocaleL_en_US_symbols_
 
You've got a Virtuozzo container, right?

Following logs may contain relevant information:

autoinstaller3.log
autoinstaller3_2013-05-31_1237.log
plesk_11.5.29_installation.log
plesk_11.5.30_installation.log
 
As i guess this is a general problem of Plesk and Horde because the INSERT command of MySQL does fail! as you can see in my first post the INSERT command requires a field which is not available.

but here are the requested logfiles:
http://www47.zippyshare.com/v/3842302/file.html

info: i was not able to upload files here as attachment and also not to inlcude text as code :(

thanks for your help!
 
OK, thanks for logs. It's clear now that the reason your upgrade failed is that you (or some script) altered /etc/psa-webmail/horde/horde/conf.php file before upgrade. Note that this file clearly stated in the header "DO NOT CHANGE ANYTHING IN OR AFTER THIS LINE."

Here's the recipe that will fix your installation. Please follow it exactly.

1) Reset Horde component configuration state:
# sed -i -e '/^horde#/ d' /var/lib/plesk/components-configuration-state.db

2) Replace modified configuration file with a stock one:
# mv /etc/psa-webmail/horde/horde/conf.php.dpkg-dist /etc/psa-webmail/horde/horde/conf.php

3) Now edit /usr/local/psa/bootstrapper/pp11.5.30-bootstrapper/bootstrapper.sh file. Find function horde_bootstrapper_post_install() and edit it as described below:

Code:
horde_bootstrapper_post_install()
{
        set_webmail_params

        mysql_unconfigured=           # <<< ADD THIS LINE
        set_mysql_server_params
        set_mysql_client_params

This step is required to avoid calling full panel repair (which may not be desirable, since it touches many things).

4) Rerun Horde upgrade:
# /usr/local/psa/bootstrapper/pp11.5.30-bootstrapper/bootstrapper.sh rerun horde

5) Go to Horde web interface and make sure it works!
 
By the way, would you mind telling us why Horde configuration file was customized? If you're unable to recall it, please post entire file.

This is required so Parallels could possibly accommodate for changes in it.
 
2) Replace modified configuration file with a stock one:
# mv /etc/psa-webmail/horde/horde/conf.php.dpkg-dist /etc/psa-webmail/horde/horde/conf.php

i do not have the stock file of conf.php ("conf.php.dpkg-dist") in this dir :( where can i get this file from? also a find command does not find this file at my server.

thanks for your help again!

and very strange about the edited file, because this was a new Plesk 11 server and i upgraded it with no configs or any domains, etc. so i can't explain why this file was edited..
 
it's me again. i guess i found the repo-config-file at:
/usr/share/psa-horde/config/conf.php.dist

i copied this file to /etc/psa-webmail/horde/horde/conf.php and replaced the old one.

after that i did exactly the steps you told me, but reconfig failed! :(

at horde webpage i get this page:
Code:
A fatal error has occurred
"" driver (for Horde_Share not found).

 1. Horde_Core_Factory_BlockCollection->create() /usr/share/psa-horde/services/portal/index.php:31
 2. Horde_Core_Block_Collection->__construct() /usr/share/psa-pear/pear/php/Horde/Core/Factory/BlockCollection.php:61
 3. Horde_Registry->getAppDrivers() /usr/share/psa-pear/pear/php/Horde/Core/Block/Collection.php:43
 4. Horde_Registry->pushApp() /usr/share/psa-pear/pear/php/Horde/Registry.php:1917
 5. Horde_Registry->_pushAppError() /usr/share/psa-pear/pear/php/Horde/Registry.php:1562
 6. Horde_Core_Factory_BlockCollection->create() /usr/share/psa-horde/services/portal/index.php:31
 7. Horde_Core_Block_Collection->__construct() /usr/share/psa-pear/pear/php/Horde/Core/Factory/BlockCollection.php:61
 8. Horde_Registry->getAppDrivers() /usr/share/psa-pear/pear/php/Horde/Core/Block/Collection.php:43
 9. Horde_Registry->pushApp() /usr/share/psa-pear/pear/php/Horde/Registry.php:1917
10. Horde_Registry->callAppMethod() /usr/share/psa-pear/pear/php/Horde/Registry.php:1557
11. call_user_func_array() /usr/share/psa-pear/pear/php/Horde/Registry.php:1152
12. Horde_Registry_Application->init()
13. Kronolith_Application->_init() /usr/share/psa-pear/pear/php/Horde/Registry/Application.php:105
14. Kronolith::initialize() /usr/share/psa-horde/kronolith/lib/Application.php:75
15. Kronolith::listInternalCalendars() /usr/share/psa-horde/kronolith/lib/Kronolith.php:830
16. Horde_Injector->getInstance() /usr/share/psa-horde/kronolith/lib/Kronolith.php:1256
17. Horde_Injector->createInstance() /usr/share/psa-pear/pear/php/Horde/Injector.php:247
18. Horde_Injector_Binder_Factory->create() /usr/share/psa-pear/pear/php/Horde/Injector.php:213
19. Kronolith_Factory_Shares->create() /usr/share/psa-pear/pear/php/Horde/Injector/Binder/Factory.php:111
20. Horde_Core_Factory_Share->create() /usr/share/psa-horde/kronolith/lib/Factory/Shares.php:19
21. Horde_Core_Factory_ShareBase->create() /usr/share/psa-pear/pear/php/Horde/Core/Factory/Share.php:37
22. Horde_Core_Factory_Base->_getDriverName() /usr/share/psa-pear/pear/php/Horde/Core/Factory/ShareBase.php:55

Details
The full error message is logged in Horde's log file, and is shown below only to administrators. Non-administrative users will not see error details.

and thats my output of reconfig bootstrap script:
http://www72.zippyshare.com/v/23335428/file.html

any other ideas?
 
Please check you current config file. If it starts with following lines:

Code:
<?php
/* CONFIG START. DO NOT CHANGE ANYTHING IN OR AFTER THIS LINE. */
// $Id: 968066befa22268df1b08080d9867fa05590d7bc $

then it is new config (stock one), that was replaced by recent update to 11.5.30 from 11.5.29.

If not, then you can reinstall horde package to get proper config and then perform other steps.

E.g., if config contains string "Plesk predefined configuration for Horde3", then it is the old one.

and very strange about the edited file, because this was a new Plesk 11 server and i upgraded it with no configs or any domains, etc. so i can't explain why this file was edited..

I check almost the same case - installed Plesk 11.0.9 with latest MU and upgraded to 11.5.29 and then to 11.5.30. Horde breaks only if config was somehow modified before upgrade.

Please make sure that you don't have string like "$conf['sql']['hostspec'] = ...;" in your current config before proceeding with other steps. This is indicative of invalid config (from the point of view of Horde 5).
 
current conf.php of horde starts with:
Code:
<?php
/* CONFIG START. DO NOT CHANGE ANYTHING IN OR AFTER THIS LINE. */
// $Id: 968066befa22268df1b08080d9867fa05590d7bc $

so i have the current file and it doesn't work :( still same error as i told in my first post :(
 
Also if you don't want to edit anything (provided you still executed the 1st step), you can replace steps 3 and 4 with:

# /usr/local/psa/bootstrapper/pp11.5.30-bootstrapper/bootstrapper.sh post-install horde

It will produce the same result for Horde in this case.
 
current conf.php of horde starts with:
Code:
<?php
/* CONFIG START. DO NOT CHANGE ANYTHING IN OR AFTER THIS LINE. */
// $Id: 968066befa22268df1b08080d9867fa05590d7bc $

so i have the current file and it doesn't work :( still same error as i told in my first post :(

You need to execute all other steps!
 
Also if you don't want to edit anything (provided you still executed the 1st step), you can replace steps 3 and 4 with:

# /usr/local/psa/bootstrapper/pp11.5.30-bootstrapper/bootstrapper.sh post-install horde

It will produce the same result for Horde in this case.

holy ****, this does the trick ;)

as summary for all others:

1. # sed -i -e '/^horde#/ d' /var/lib/plesk/components-configuration-state.db

2. # /usr/local/psa/bootstrapper/pp11.5.30-bootstrapper/bootstrapper.sh post-install horde

thank you very much Nikolay :D
 
You're welcome!


Some clarifications for others:

1) This trick is dangerous unless you just upgraded to 11.5.29 or 11.5.30. In future versions resetting configuration in /var/lib/plesk/components-configuration-state.db might bring you only grief.

2) This trick will not "just work" for any other component, it will break your installation. So don't attempt it unless you know what you are doing (or trust one that knows).

3) This problem is only relevant for Debian and Ubuntu installations.

4) If you're still on 11.5.29 you'll need to execute step 2 (see my post above) as well. Plesk 11.5.30 does it automatically during upgrade.
 
Hello,
It is not a solution. I did all steps but I doesnt solve the bug. I upgraded from Plesk 11.0.9 to 11.5.30, now I can not see Horde.
[I get A fatal error has occurred
Class ��� does not exist
Details have been logged for the administrator.

It is a big issue and Parallels should be adressed as soon as possible.

If I press F5 (refresh) several time I can see the webpage for example: /services/prefs.php?app=imp&show_advanced=1


About logs,

DROP TABLE `ingo_shares_seq` [pid 54636 on line 815 of "/usr/share/psa-pear/pear/php/Horde/Db/Adapter/Base.php"]
2013-08-12T18:32:26+00:00 ERR: HORDE [horde] SQL QUERY FAILED: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'horde.rampage_types' doesn't exist
SELECT type_id, type_name FROM `rampage_types` WHERE type_name IN
('calendar','event') [pid 54636 on line 815 of "/usr/share/psa-pear/pear/php/Horde/Db/Adapter/Base.php"]
2013-08-12T18:32:30+00:00 ERR: HORDE [horde] SQL QUERY FAILED: SQLSTATE[42S02]: Base table or view not found: 1051 Unknown table 'turba_shares_seq'
DROP TABLE `turba_shares_seq` [pid 54636 on line 815 of "/usr/share/psa-pear/pear/php/Horde/Db/Adapter/Base.php"]
2013-08-12T18:32:48+00:00 ERR: HORDE [horde] SQL QUERY FAILED: SQLSTATE[42S02]: Base table or view not found: 1051 Unknown table 'mnemo_shares_seq'
DROP TABLE `mnemo_shares_seq` [pid 54636 on line 815 of "/usr/share/psa-pear/pear/php/Horde/Db/Adapter/Base.php"]
2013-08-12T18:33:13+00:00 ERR: HORDE [horde] SQL QUERY FAILED: SQLSTATE[42S02]: Base table or view not found: 1051 Unknown table 'horde_groups_seq'
DROP TABLE `horde_groups_seq` [pid 54636 on line 815 of "/usr/share/psa-pear/pear/php/Horde/Db/Adapter/Base.php"]
2013-08-12T18:33:14+00:00 ERR: HORDE [horde] SQL QUERY FAILED: SQLSTATE[42S02]: Base table or view not found: 1051 Unknown table 'horde_histories_seq'
DROP TABLE `horde_histories_seq` [pid 54636 on line 815 of "/usr/share/psa-pear/pear/php/Horde/Db/Adapter/Base.php"]
2013-08-12T18:33:16+00:00 ERR: HORDE [horde] SQL QUERY FAILED: SQLSTATE[42S02]: Base table or view not found: 1051 Unknown table 'horde_perms_seq'
DROP TABLE `horde_perms_seq` [pid 54636 on line 815 of "/usr/share/psa-pear/pear/php/Horde/Db/Adapter/Base.php"]
2013-08-12T18:33:23+00:00 ERR: HORDE [horde] SQL QUERY FAILED: SQLSTATE[42S02]: Base table or view not found: 1051 Unknown table 'horde_vfs_seq'
DROP TABLE `horde_vfs_seq` [pid 54636 on line 815 of "/usr/share/psa-pear/pear/php/Horde/Db/Adapter/Base.php"]
2013-08-12T18:33:23+00:00 ERR: HORDE [horde] SQL QUERY FAILED: SQLSTATE[42S02]: Base table or view not found: 1051 Unknown table 'horde_muvfs_seq'
DROP TABLE `horde_muvfs_seq` [pid 54636 on line 815 of "/usr/share/psa-pear/pear/php/Horde/Db/Adapter/Base.php"]
2013-08-12T18:33:35+00:00 ERR: HORDE [horde] SQL QUERY FAILED: SQLSTATE[42S02]: Base table or view not found: 1051 Unknown table 'kronolith_shares_seq'
DROP TABLE `kronolith_shares_seq` [pid 54762 on line 815 of "/usr/share/psa-pear/pear/php/Horde/Db/Adapter/Base.php"]
2013-08-12T18:33:39+00:00 ERR: HORDE [horde] SQL QUERY FAILED: SQLSTATE[42S02]: Base table or view not found: 1051 Unknown table 'kronolith_resources_seq'
DROP TABLE `kronolith_resources_seq` [pid 54762 on line 815 of "/usr/share/psa-pear/pear/php/Horde/Db/Adapter/Base.php"]


It is a very strange bug.

Thanks,
 
Last edited:
Back
Top