#12632 closed defect (bug) (invalid)
Sporatic database error message
| Reported by: |
|
Owned by: |
|
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | Database | Version: | 2.9.2 |
| Severity: | normal | Keywords: | reporter-feedback |
| Cc: |
Description
This problem is happening on multiple blogs across 2 separate servers. I am consistently getting the message:
"WordPress database error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE meta_key = '_wp_trash_meta_time' AND meta_value < '1266304744 at line 1 for query SELECT comment_id FROM WHERE meta_key = '_wp_trash_meta_time' AND meta_value < '1266304744' made by do_action_ref_array, call_user_func_array, wp_scheduled_delete"
in my error log. As far as I can tell, the error is thrown every time the cron is run.
The table name missing from the sql statement is clearly the problem, originating from line #3553 in /wp-includes/functions.php, which is being called from the trash collecting cron. I have no clue as to why "$wpdb->commentmeta" is returning an empty string.
Change History (7)
comment:1
dd32
— 3 years ago
- Keywords reporter-feedback added; database error cron wp_scheduled_delete removed
- Milestone changed from Unassigned to 3.0
comment:2
marilynburgess
— 3 years ago
The are no wp-content/db.php files, so I guess not.
comment:3
nacin
— 3 years ago
Best I can tell, this is not a bug in the WordPress core. You're running a plugin that is causing $wpdb->commentmeta to not be set.
Odds are, the plugin has the tables hard-coded (commentmeta was added in 2.9). This was seen in a few plugins.
comment:4
marilynburgess
— 3 years ago
I don't believe the culprit is a plugin. One of the offending blogs has only 2 plugins, and neither of the plugins have the db tables hardcoded. I verified this by searching for the phrase "postmeta".
Looking in /wp-includes/wp-db.php I can see no reference to commentmeta. I think this is the problem.
I put a call to wp_scheduled_delete() in /wp-admin/admin.php to verify that the errors occurred every time that function is called, which it does, several times when I load the admin page. I then added commentmeta to the /wp-includes/wp-db.php file. No errors appeared when I loaded the admin page again.
comment:5
nacin
— 3 years ago
- Milestone 3.0 deleted
- Resolution set to invalid
- Status changed from new to closed
comment:6
marilynburgess
— 3 years ago
Fair enough.
I always use the upgrade automatically feature. Is it common for it to miss files in the manner?
comment:7
dd32
— 3 years ago
I always use the upgrade automatically feature. Is it common for it to miss files in the manner?
Never heard of it missing a file yet AND giving a success message.
There are mentions of it timing out half way through and/or giving a failure message when it couldnt access a file on the server however.
Are you using any drop-in database replacements? Look for a wp-content/db.php file to check that.