Uploaded image for project: 'ZABBIX FEATURE REQUESTS'
  2. ZBXNEXT-6392

Introduce separate checkboxes for 'history' and trends' compression.


    • Icon: Change Request Change Request
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • 5.0.6
    • Frontend (F), Server (S)
    • None

      There is only 1 check box for `history` and `trends`

      This is not very optimal because manual says:


      In order to use partitioned housekeeping for history and trends, both 
      these options must be on. It's possible to use TimescaleDB partitioning 
      only for trends (by setting Override item trend period) or only for history (Override item history period).

      However setting such setting seems to cause problems like this:


      2344843:20201209:183048.122 [Z3005] query failed: [0] PGRES_FATAL_ERROR:ERROR:  cannot update/delete rows from chunk "_hyper_2_1761_chunk" as it is compressed
       [delete from history_uint where itemid=321560 and clock<1606926413]


      2020-12-09 16:31:58.036 UTC [378539] zabbix@zabbix ERROR:  transparent decompression only supports tableoid system column
      2020-12-09 16:31:58.036 UTC [378539] zabbix@zabbix STATEMENT:  delete from history_uint where itemid=482471 and ctid = any(array(select ctid from history_uint where itemid=482471 limit 5000))


      It would be desirable to have 3 different settings.

      1- Compress trends (uint/float)

      2- Compress history (uint/float)

      3- Compress history (log/str/text)

      The reason is, in many cases as uint/float values get into trends, the data amount gets less with some resolution loss. However the string history is lost completely. There is a distinct difference. One may want to keep string values stored longer (unless if there is a way to make some sort of string trends?)

      Therefore the housekeeping for History items should also be divided into 2 sections. The items which can move on to trends vs the ones which can't (string).

      It also should not be possible to disable housekeeping overrides before compression is disabled. Because doing so is fundementally incorrect.

            vmurzins Valdis Murzins
            yurtesen Evren Yurtesen
            4 Vote for this issue
            3 Start watching this issue