• Resolved smartvox

    (@smartvox)


    I am getting a lot of errors written to my httpd logs that stop when I disable the Shield plugin. There are really just two errors that repeat over and over. They are:

    1) WordPress database error FUNCTION wordp_vx.INET6_ATON does not exist for query SELECT ips.ip, bs.*\r\n\t\t\t\t\t\tFROM wp_icwp_wpsf_botsignal as bs\r\n\t\t\t\t\t\tINNER JOIN wp_icwp_wpsf_ips as ips…..

    2) [Build Asset] Notice: Store directory could not be created: /plugins, referer: https://www.<mywebsite&gt;.co.uk/wp-cron.php?doing_wp_cron=1….

    The first error is associated with the client IP of a visitor to the site.
    The second error is associated with the IP address of the server itself.

    The errors don’t seem to have any impact on the experience a user has when visiting the site, so I didn’t actually notice when they started to happen. The platform is:
    CentOS 7, PHP 7.4.27, MySQL 5.5.68-MariaDB, WordPress 5.8.2, Shield 13.0.4 (not Pro)

    I generally keep the operating system packages and WordPress core and plugins updated regularly.

    Any pointers to what is wrong or how to fix it would be really welcome.

    Thanks
    John

Viewing 10 replies - 1 through 10 (of 10 total)
  • Plugin Author Paul

    (@paultgoodchild)

    Hi,

    Thanks for reaching out.

    The first error is ultimately caused by having quite an old version of MySQL/Maria DB. Your version is 5.5.68. This was EOL a few years back, and the 5.5 release dates back to 2012. A few versions back, we move IP address handling to the MySQL DB itself and this includes support for IPv6. Unfortunately old versions of MySQL doesn’t fully support IPv6, which is why you’re seeing this error.

    Our recommendation would be to upgrade your MySQL database to any newer version MariaDB 10 or MySQL 5.6+.

    The other error I’m not sure about… are you using PHP open_basedir directive?

    Thanks!

    Thread Starter smartvox

    (@smartvox)

    Thank you Paul for a really speedy and helpful response.
    I have already started to investigate how to upgrade MariaDB. Changing to MySQL 5.6 would be an alternative option, but I haven’t looked into it.

    Although the CentOS 7 repositories don’t offer a newer version of MariaDB, I found it is possible to download an RPM for MariaDB 10. I just need a bit of time to test the upgrade process away from my production server before applying it. I don’t want to lose any data. Hopefully the second error is also linked to this. I’ll let you know.

    Thanks again.
    John

    Thread Starter smartvox

    (@smartvox)

    @paultgoodchild
    Hi Paul,
    I have upgraded MariaDB to v10.6 and the first error (INET6_ATON) has gone away.
    However, the second error is still happening (Store directory could not be created). It is triggered when anyone visits the web site.
    In my /etc/php.ini file, the open_basedir directive is not explicitly set so it will just take the default value.
    I tinkered with wordpress debug settings and added an error_log statement into wp-cron.php to help identify the cron hook that is triggering the error. I also noticed a new error message that could be relevant:
    Wordpress database error Unknown column ‘source_file’ in ‘field_list’ for query INSERT INTO wp_wpcsplog …..

    The hook in wp-cron,php that seems to coincide with these errors is: icwp-wpsf-ptg_build_snapshots

    Thanks for your help so far.

    John

    Thread Starter smartvox

    (@smartvox)

    Another extra piece of information: I think there is one instance of the error message for each active plugin. Oh, and the other error message about “Unknown column in wp_wpcslog”, that is nothing to do with Shield and I think is unrelated to the “Store directory could not be created” errors.
    J.

    Plugin Author Paul

    (@paultgoodchild)

    Hi,

    We’ve just released v14 and within that release we’ve added some reworking of the code to locate the directory used for snapshots in the hope it’ll alleviate whatever the issue is for your setup. Could you give it a go and see if it helps, please?

    Thanks.

    Thread Starter smartvox

    (@smartvox)

    Hi Paul,
    Thanks for making changes to fix this problem. It worked. As soon as I upgraded to v14, the errors stopped.
    Before the upgrade I had narrowed it down to the option Hack Guard: File Scanning & Malware Protection. When the option for automatic scanning was switched off, the errors stopped.
    The problems started some time ago and I suspect they are linked to my over-enthusiastic restrictions to file and directory ownership and permissions. I was getting a few other errors when trying to delete or upgrade plugins. Since reviewing and relaxing the ownership and permissions, those errors have gone away.
    Thanks again.
    John

    Hi Paul,

    I’m on a CentOS7 machine with MariaDB 5.5.68 as well. According to the MariaDB developers, that version DOES support IPv6 — they say MariaDB has supported IPv6 since v5.5.

    Would it be possible for Shield to allow MariaDB v5.5 and up, even if MySQL requires v5.6 and higher? It would appear that, at least in this case, MariaDB includes the appropriate support at the lower version number.

    Or am I misinterpreting something on the dev site vs. what Shield requires?

    Thanks!

    • This reply was modified 3 years, 10 months ago by cepheid666.
    Thread Starter smartvox

    (@smartvox)

    For what it’s worth, I don’t think the issue is whether any support for IPv6 exists. My interpretation was that new API functions had been added in later versions of MariaDB which allow applications to query MariaDB – one of these new functions is used by the Shield plugin to enquire about IP addresses. The function just doesn’t exist in v5.5.

    I found articles on the web explaining how to upgrade MariaDB to v10. It was a little bit scary so I tested it on a virtual machine before touching my production server. The most useful article I found was this:
    https://www.liquidweb.com/kb/how-to-upgrade-mariadb-5-5-to-mariadb-10-0-on-centos-7/

    I also made some notes for myself and would be happy to send them to you by email. My business email address is shown on this link: https://www.smartvox.co.uk/about-us/

    Plugin Author Paul

    (@paultgoodchild)

    @cepheid666@smartvox is correct. The question is whether the MySQL function(s) we’re using are present in your version of MySQL/MariaDB. In the case of MariaDB 5.5, they are not.

    To backwards engineer Shield to support older versions of MySQL would be counter to our development approach – we intend to continue to develop Shield so as to move, as far as possible, with updating technologies. MariaDB 5.5 was first released 10 years ago and has stopped receiving updates so we’re not going to start supporting older tech like that after we’ve removed support for it.

    Upgrading to a slightly newer version isn’t actually that complicated and in-fact many webhosts will even support you and help you do so. If they don’t, finding a new host that is more accommodating and is promoting newer technology stacks is a good thing to consider. They’ll probably even help you migrate the site as part of your sign-up.

    @smartvox seems to have done a great job in documenting what he’s done for the upgrade, so it makes sense to give that a good look over. Thanks, @smartvox!

    Thank you both for the quick replies — I understand better now, and thank you for clarifying my misinterpretation of the issue. This makes perfect sense.

    I’ll work on upgrading to MariaDB 10 … it does look reasonably straightforward. Thanks for the offer @smartvox, I’ll be sure to reach out if needed!

    Much appreciated!

Viewing 10 replies - 1 through 10 (of 10 total)

The topic ‘Shield related errors in httpd logs’ is closed to new replies.