Oracle backend: ORA-06550 errors in Zabbix server logs with LLD / discovery

XMLWordPrintable

    • Type: Problem report
    • Resolution: Unresolved
    • Priority: Trivial
    • None
    • Affects Version/s: 7.0.23
    • Component/s: Server (S)

      When Zabbix Server uses Oracle as the database backend, the server log repeatedly shows errors like:

      [Z3008] query failed due to primary key constraint: ORA-06550

      Message refers to a primary key, but problem is that Oracle rejects empty PL/SQL blocks sent by the server in cases where discovery finds no changes to apply.

      Many code paths use zbx_db_begin_multiple_update() / zbx_db_end_multiple_update() from include/zbxdbhigh.h (lines 141–147). These build batched UPDATE/DELETE statements inside a PL/SQL block. When a given iteration has no changes, only the empty block is executed:

      begin
      end;
      

            Assignee:
            Zabbix Development Team
            Reporter:
            Piotr Wegrzyn
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: