Description
When poller_refresh_output_table is enabled, poller.php executes
CREATE/RENAME/DROP/ALTER TABLE on poller_output every polling cycle
(lines 624-628). This forces MySQL to flush table descriptors, acquire
exclusive metadata locks, and invalidate caches. Concurrent reads from
realtime graphs or background processes hit lock contention or
"Table does not exist" errors.
Remediation
Replace the DDL sequence with TRUNCATE TABLE poller_output, which
releases memory without altering the schema state or acquiring
exclusive metadata locks.
Description
When poller_refresh_output_table is enabled, poller.php executes
CREATE/RENAME/DROP/ALTER TABLE on poller_output every polling cycle
(lines 624-628). This forces MySQL to flush table descriptors, acquire
exclusive metadata locks, and invalidate caches. Concurrent reads from
realtime graphs or background processes hit lock contention or
"Table does not exist" errors.
Remediation
Replace the DDL sequence with TRUNCATE TABLE poller_output, which
releases memory without altering the schema state or acquiring
exclusive metadata locks.