missing db column in web_domain

Discussion in 'Installation/Configuration' started by nhybgtvfr, Apr 7, 2020.

  1. nhybgtvfr

    nhybgtvfr Well-Known Member HowtoForge Supporter


    i'm trying to do some new testing, and I've run into a problem I've not encountered before.
    ubuntu18.04 multi-server ispconfig 3.1.15.p3
    installed as per ubuntu 18.04 apache perfect server tutorial using ondjre repo's for php and apache2, php7.4 only. using MariaDB 10.4. with rspamd replacing amavisd-new after a complete install, and roundcube and phpMyAdmin updated to latest available versions after install.

    I've done this install before, and not had any problems. mail, web, dns, file and db services installed on both on master and slave. mail service not enabled on master. web, dns, file and db are enabled on master. mail, web, dns, file and db enabled on slave.

    the problem is the proxy_protocol column does not exist in the web_domain table on the slave server. I've check every table, and this is the only column missing across the whole db.

    a website created in the control panel, to be hosted on the slave server, doesn't get entered into the slave web_domain table (the entry is created fine in the web_domain table on the master), it does however create the correct vhost conf in /etc/apache2/sites-available, the symlink to it in sites-enabled, and the full folder/site structure in /var/www with the correct permissions.

    this is the error created when it tries to create the db entry on the slave:

    07.04.2020-11:20 - WARNING - Falsche Anfrage / Wrong QuerySQL-Query = REPLACE INTO `web_domain` (`domain_id`,`sys_userid`,`sys_groupid`,`sys_perm_user`,`sys_perm_group`,`sys_perm_other`,`server_id`,`ip_address`,`ipv6_address`,`domain`,`type`,`parent_domain_id`,`vhost_type`,`document_root`,`web_folder`,`system_user`,`system_group`,`hd_quota`,`traffic_quota`,`cgi`,`ssi`,`suexec`,`errordocs`,`is_subdomainwww`,`subdomain`,`php`,`ruby`,`python`,`perl`,`redirect_type`,`redirect_path`,`seo_redirect`,`rewrite_to_https`,`ssl`,`ssl_letsencrypt`,`ssl_letsencrypt_exclude`,`ssl_state`,`ssl_locality`,`ssl_organisation`,`ssl_organisation_unit`,`ssl_country`,`ssl_domain`,`ssl_request`,`ssl_cert`,`ssl_bundle`,`ssl_key`,`ssl_action`,`stats_password`,`stats_type`,`allow_override`,`apache_directives`,`nginx_directives`,`php_fpm_use_socket`,`php_fpm_chroot`,`pm`,`pm_max_children`,`pm_start_servers`,`pm_min_spare_servers`,`pm_max_spare_servers`,`pm_process_idle_timeout`,`pm_max_requests`,`php_open_basedir`,`custom_php_ini`,`backup_interval`,`backup_copies`,`backup_excludes`,`active`,`traffic_quota_lock`,`fastcgi_php_version`,`proxy_directives`,`enable_spdy`,`last_quota_notification`,`rewrite_rules`,`added_date`,`added_by`,`directive_snippets_id`,`enable_pagespeed`,`http_port`,`https_port`,`folder_directive_snippets`,`log_retention`,`proxy_protocol`) VALUES ('3','1','2','riud','ru','','2','*','','webmail.test.local','vhost','0','name','/var/www/clients/client1/web3','','web3','client1','-1','-1','y','y','y','1','1','none','php-fpm','y','y','y',NULL,NULL,NULL,'n','n','n','n',NULL,NULL,NULL,NULL,'AF','webmail.test.local',NULL,NULL,NULL,NULL,NULL,NULL,'awstats','All','DocumentRoot \"/var/lib/roundcube/\"','','y','n','ondemand','10','2','1','5','10','0','/var/www/clients/client1/web3/web:/var/www/clients/client1/web3/private:/var/www/clients/client1/web3/tmp:/var/www/webmail.test.local/web:/srv/www/webmail.test.local/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom','','none','1','','y','n','','','n',NULL,NULL,'2020-04-06','admin','0','n','80','443',NULL,'10','n') -> 1054 (Unknown column 'proxy_protocol' in 'field list')

    I've tried running ispconfig_update.sh selecting stable, but it say's there's no update available. I've re-downloaded the tar for 3.1.15p3 extracted that, gone into the install folder and ran php -q update.php. selected yes to reconfigure permission in the master db, yes to reconfigure services, and yes to reconfigure crontab. but that column is still missing from that table.

    I know I can run alter table and add the column, but i'm more concerned about how and why the column wasn't created/added in the first place. I don't see anything that was different to the master server install that would have caused any such problem.

    any ideas, theories etc would be welcome....

    on an unrelated note, while looking through all the columns, I noticed another column in the web_domain table, for enable_pagespeed, type enum y/n, but I can't see any checkbox or anything for pagespeed in the control panel, is this hidden away somewhere, for some incoming not yet available option, or some nginx only thing?
  2. till

    till Super Moderator Staff Member ISPConfig Developer

    If there is just one column missing, add it manually.
  3. nhybgtvfr

    nhybgtvfr Well-Known Member HowtoForge Supporter

    thanks, I already have, i'm just concerned about how it could have happened in the first place.

    plus, it's nice to see that despite the problem, everything was still working, sites created as expected, and once the column was added, the entry got added into the slave db without problems.
    if that had happened in Plesk it would have crapped itself and thrown shit all over the server... :eek:
  4. till

    till Super Moderator Staff Member ISPConfig Developer

    The proxy_protocol column is part of git-stable branch, but not part of any release. So I guess your master is git stable-3.1 and the slave must run a release version of ISPConfig.

Share This Page