[ZBXNEXT-3135] Remove ID field from history tables Created: 2016 Feb 05  Updated: 2016 Apr 26  Resolved: 2016 Mar 16

Status: Closed
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: 3.2.0alpha1

Type: Change Request Priority: Minor
Reporter: Andris Zeila Assignee: Unassigned
Resolution: Fixed Votes: 1
Labels: history, ids
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The ID fields in history_log and history_text tables were added to help with node processing and aren't used anymore.

The ID fields must be removed to avoid extra locking when obtaining IDs for new records and to have similar structure for all history tables.



 Comments   
Comment by Marc [ 2016 Feb 05 ]

ZBXNEXT-2941 is distantly related.

Comment by Andris Zeila [ 2016 Feb 08 ]

Fixed in development branch svn://svn.zabbix.com/branches/dev/ZBXNEXT-3135

Comment by Oleksii Zagorskyi [ 2016 Feb 08 ]

(1)
This is first time, after 3.0, 2.4 and 2.2, when we will perform changes on historical tables.
The very last "heavy" change which I can recall was added nanoseconds in 2.0.

So, maybe worth to specially mention on whatsnew32 page that upgrade may take more time than previous major upgrades because a few historical tables are involved.

wiper CLOSED

Comment by Alexander Vladishev [ 2016 Feb 08 ]

Server side was successfully tested with minor change in r58319. Please take a look.

wiper Thanks, reviewed

Comment by Alexander Vladishev [ 2016 Feb 08 ]

(2) API and frontend

sasha RESOLVED in r58320

iivs CLOSED

Comment by richlv [ 2016 Feb 08 ]

zalex, very good idea in (1) - but probably in upgrade notes. in whatsnew the performance improvement + slight db size reduction could be mentioned

Comment by Ivo Kurzemnieks [ 2016 Feb 11 ]

(3) No translation string changes.

wiper CLOSED

Comment by Ivo Kurzemnieks [ 2016 Feb 11 ]

API and Frontend TESTED

Comment by Andris Zeila [ 2016 Feb 19 ]

Released in:

  • pre-3.1.0 58602
Comment by dimir [ 2016 Feb 25 ]

This resulted in new warnings:

[...]
Making install in zbxdbupgrade
dbupgrade_2010.c: In function ‘DBpatch_2010101’:
dbupgrade_2010.c:946:5: warning: implicit declaration of function ‘quote_key_param’ [-Wimplicit-function-declaration]
     quote_key_param(&param, 0);
     ^
dbupgrade_2010.c: In function ‘replace_key_param’:
dbupgrade_2010.c:1664:2: warning: implicit declaration of function ‘unquote_key_param’ [-Wimplicit-function-declaration]
  unquote_key_param(param);
  ^

The cause (sysinfo.h removed from includes):

$ svn diff -c58602 src/libs/zbxdbupgrade/dbupgrade_2010.c
Index: src/libs/zbxdbupgrade/dbupgrade_2010.c
===================================================================
--- src/libs/zbxdbupgrade/dbupgrade_2010.c      (revision 58601)
+++ src/libs/zbxdbupgrade/dbupgrade_2010.c      (revision 58602)
@@ -19,10 +19,8 @@
 
 #include "common.h"
 #include "db.h"
-#include "log.h"
-#include "sysinfo.h"
-#include "zbxdbupgrade.h"
 #include "dbupgrade.h"
+#include "log.h"
 
 /*
  * 2.2 development database patches

sasha fixed directly in trunk r59021. CLOSED

Comment by Andris Zeila [ 2016 Apr 05 ]

There was idea that database upgrade would be faster if we'd leave the id fields in base, just dropping primary key and updating field to allow nulls. However tests on mysql database (default settings) showed that it would take twice the time needed to drop id fields.

Comment by richlv [ 2016 Apr 26 ]

please reopen for minor documentation updates - looks like (1) was closed without a review

wiper added dot, more comments.

Generated at Fri Apr 26 06:48:48 EEST 2024 using Jira 9.12.4#9120004-sha1:625303b708afdb767e17cb2838290c41888e9ff0.