Using Oracle bind variables in the queries generated by Frontend.

XMLWordPrintable

    • Type: Change Request
    • Resolution: Won't fix
    • Priority: Major
    • None
    • Affects Version/s: None
    • Component/s: API (A), Frontend (F)
    • Environment:
      Zabbix 2.2 and 2.4

      ZBXNEXT-166 introduced Oracle bind variables support for server/proxy and only for inserts.
      Many ZABBIX Frontend/API queries are causing hard parse (it makes query performance poor) as they are not using bind variables at all. They are using directly value in query. Example:

      SELECT f.triggerid,f.functionid,h.host,h.name FROM functions f JOIN items i ON f.itemid=i.itemid JOIN hosts h ON i.hostid=h.hostid WHERE (f.functionid BETWEEN '4937' AND '4941' OR f.functionid BETWEEN '4959' AND '4963' OR f.functionid BETWEEN '4981' AND '4985' OR f.functionid BETWEEN '5003' AND '5007' OR f.functionid BETWEEN '5025' AND '5029' OR f.functionid BETWEEN '5050' AND '5054' OR f.functionid BETWEEN '5072' AND '5076' OR f.functionid BETWEEN '6760' AND '6764' OR f.functionid BETWEEN '6786' AND '6790' OR f.functionid BETWEEN '6820' AND '6824' OR f.functionid BETWEEN '6842' AND '6846' OR f.functionid BETWEEN '6864' AND '6868' OR f.functionid BETWEEN '6886' AND '6890' OR f.functionid BETWEEN '6908' AND '6912' OR f.functionid BETWEEN '6930' AND '6934' OR f.functionid BETWEEN '6952' AND '6956' OR f.functionid BETWEEN '6974' AND '6978' OR f.functionid BETWEEN '6996' AND '7000' OR f.functionid BETWEEN '7018' AND '7022' OR f.functionid BETWEEN '7040' AND '7044' OR f.functionid BETWEEN '7062' AND '7066' OR f.functionid BETWEEN '7084' AND '7088' OR f.functionid BETWEEN '7106' AND '7110' OR f.functionid BETWEEN '7128' AND '7132' OR f.functionid BETWEEN '7150' AND '7154' OR f.functionid BETWEEN '7172' AND '7176' OR f.functionid BETWEEN '7194' AND '7198' OR f.functionid BETWEEN '7216' AND '7220' OR f.functionid BETWEEN '7238' AND '7242' OR f.functionid BETWEEN '7260' AND '7264' OR f.functionid BETWEEN '7282' AND '7286' OR f.functionid BETWEEN '7304' AND '7308' OR f.functionid BETWEEN '7326' AND '7330' OR f.functionid BETWEEN '7348' AND '7352' OR f.functionid BETWEEN '7370' AND '7374' OR f.functionid BETWEEN '7392' AND '7396' OR f.functionid BETWEEN '7414' AND '7418' OR f.functionid BETWEEN '7436' AND '7440' OR f.functionid BETWEEN '7458' AND '7462' OR f.functionid BETWEEN '7480' AND '7484' OR f.functionid BETWEEN '7502' AND '7506' OR f.functionid BETWEEN '7524' AND '7528' OR f.functionid BETWEEN '7546' AND '7550' OR f.functionid BETWEEN '7568' AND '7572' OR f.functionid B... 

      It would be great, if Zabbix API will use bind variables in queries also.

            Assignee:
            Unassigned
            Reporter:
            Oleg Ivanivskyi
            Votes:
            5 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: