[ZBX-15631] housekeeper table has invalid data in it Created: 2019 Feb 10 Updated: 2019 Feb 12 Resolved: 2019 Feb 10 |
|
Status: | Closed |
Project: | ZABBIX BUGS AND ISSUES |
Component/s: | Server (S) |
Affects Version/s: | None |
Fix Version/s: | None |
Type: | Incident report | Priority: | Minor |
Reporter: | bunkzilla | Assignee: | Alexander Vladishev |
Resolution: | Won't fix | Votes: | 0 |
Labels: | None | ||
Remaining Estimate: | Not Specified | ||
Time Spent: | Not Specified | ||
Original Estimate: | Not Specified | ||
Environment: |
zabbix-server 3.4.13 |
Description |
Steps to reproduce:
Result: | 8917787 | events | itemid | 1847976 |
|
Comments |
Comment by Vladislavs Sokurenko [ 2019 Feb 10 ] | ||||
can you please try select from events where objectid=1847976; | ||||
Comment by bunkzilla [ 2019 Feb 10 ] | ||||
The host wasn't active for very long, so I'm not surprised to not see any rows. Also, that query took a long time. mysql> select * from events where objectid=1847976; Empty set (38.22 sec) mysql> | ||||
Comment by Alexander Vladishev [ 2019 Feb 10 ] | ||||
It's fine! Such records are created to remove item based internal events. Also can be created records with tablename="events" and field="lldruleid" or "triggerid". | ||||
Comment by bunkzilla [ 2019 Feb 10 ] | ||||
This wouldn't be considered a bug that you would write entries into this table that are impossible to ever exist? | ||||
Comment by Alexander Vladishev [ 2019 Feb 10 ] | ||||
This is not a bug. The housekeeper table has no direct links to real fields and tables. It contains commands for the housekeeper process to remove unnecessary information from the DB. | ||||
Comment by bunkzilla [ 2019 Feb 10 ] | ||||
I guess I'm trying to understand why it would write information into a table to get deleted items that would never exist. | ||||
Comment by richlv [ 2019 Feb 10 ] | ||||
Didn't that host have some items? | ||||
Comment by bunkzilla [ 2019 Feb 11 ] | ||||
So the way I read what's in the housekeeper table,
So the above record would be DELETE FROM events WHERE itemid = 1847976. And what I'm saying is events table doesn't have a field called itemid, so why would there be a row inserted into housekeeper in the first place. | ||||
Comment by Alexander Vladishev [ 2019 Feb 12 ] | ||||
Because the server can still create new entries in the event table after deleting an item due to configuration caching. | ||||
Comment by Alexander Vladishev [ 2019 Feb 12 ] | ||||
No, the SQL statement would be: "DELETE FROM events WHERE source=3 AND object=3 AND objectid=1847976" |