Support » Plugin: Query Monitor » Error with W3 Total Cache – file db.php is not a W3TC drop-in

  • Resolved WebEndev

    (@munman)


    Fantastic plugin!

    I have Sucuri installed on my site. It was blocking PHP updates on the symlink of the db.php file. So I disabled Sucuri, uninstalled and reinstalled Query Montior, but I still had the symlink issue.

    So I then did

    ln -sf /home/mydirectory/public_html/wp-content/plugins/query-monitor/wp-content/db.php

    This solved the symlink issue.

    But now I am receiving this W3 Total Cache error in the admin area:

    The Database add-in file db.php is not a W3 Total Cache drop-in. Remove it or disable Database Caching.

    If I disable and reenable caching in W3TC, the error comes back. I see a db.php file in the wp-content directory, apparently put there by Query Monitor?

    Any ideas on how to remove this error notification with W3TC?

    Thanks

    http://wordpress.org/plugins/query-monitor/

Viewing 4 replies - 1 through 4 (of 4 total)
  • Plugin Author John Blackbourn

    (@johnbillion)

    WordPress Core Developer

    Unfortunately W3TC and Query Monitor both use a custom db.php file (although W3TC only uses it if you have Object Caching enabled) and only one can be in place at a time.

    There’s not a lot that can be done about this. W3TC uses db.php for its custom database class which includes a caching layer, and Query Monitor uses db.php for logging extended information such as errors, affected rows, and the component responsible for the query.

    Query Monitor should actually be able to calculate the component responsible for the query without db.php in place but I’ve just never bothered writing the code for it.

    Thread Starter WebEndev

    (@munman)

    Hi John,

    Bummer, that’s what I thought.

    Any plans to make this work without db.php? There must be many, many people with this problem as W3 Total Cache is very popular plugin.

    If not, is there a command I can use to remove the symlink so that I do not get the error?

    Plugin Author John Blackbourn

    (@johnbillion)

    WordPress Core Developer

    Query Monitor works fine without its db.php in place, you just see less information. I will add some compatibility to the plugin so it calculates the component responsible for each query without needing its db.php in place, but it won’t be high on my list of priorities.

    To allow W3TC to work you just need to activate it (and enable database caching) before activating Query Monitor. W3TC will puts its db.php in place, and then when you activate Query Monitor it won’t overwrite the db.php file.

    I’ve added a GitHub issue here: https://github.com/johnbillion/query-monitor/issues/40

    Thread Starter WebEndev

    (@munman)

    Hi John,

    To allow W3TC to work you just need to activate it (and enable database caching) before activating Query Monitor.

    Yep, that worked.

    I will add some compatibility to the plugin so it calculates the component responsible for each query without needing its db.php in place, but it won’t be high on my list of priorities.

    I appreciate that very much. I think that it will be appreciated by W3TC users.

    This is a great plugin. I think you should make it paid. Have you got a place to donate?

    Thanks for your help today.

Viewing 4 replies - 1 through 4 (of 4 total)
  • The topic ‘Error with W3 Total Cache – file db.php is not a W3TC drop-in’ is closed to new replies.