Hi,
After longer tests I see that the SELECT/UPDATE spikes are a little bit shorter and less frequent
but they still exist.
For tests I’m using Intel(R) Core™ i5-2500 CPU @ 3.30GHz with 8GB and 4 cores with debian wheezy.
Before I was using VM to simulate multi TANGO_HOST environment but I havn’t seen to much difference
so I’ve switched if off.
My DB tables are with innodb with standard setting plus
innodb_flush_log_at_trx_commit=0 (which turns on buffering during writing to disk , with out it queries are slower)
Quite often spikes are caused by
UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1)
Here, tere are my top queries. I add timestamps to see correlation in time between different queries. So it seems that they block each other. Thus, adding core to my machine could reduce the problem.
duration state query timestamp
0.218898 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.16:25:06
0.217402 update INSERT INTO property_attribute_device_hist SET device='p09/motor/exp.32',attribute='StepPositionController',name='__value',count='1',id='29851404',value='360490' 2015-06-17.16:25:06
0.206082 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.17:16:35
0.204816 update INSERT INTO property_attribute_device_hist SET device='p09/motor/exp.33',attribute='StepPositionController',name='__value',count='1',id='29899908',value='391363' 2015-06-17.17:16:35
0.168255 Updating UPDATE property_attribute_device SET value='564460' WHERE device LIKE 'p09/motor/exp.32' AND attribute LIKE 'StepPositionInternal' AND name='__value' 2015-06-17.22:05:03
0.165729 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.20:42:52
0.164952 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.20:42:52
0.162638 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.16:04:34
0.157383 Updating UPDATE property_attribute_device SET value='548123' WHERE device LIKE 'p09/motor/exp.33' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.21:37:51
0.15628 Sending data SELECT * FROM property_attribute_device WHERE device LIKE 'p09/motor/exp.34' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.21:37:51
0.148216 update INSERT INTO property_attribute_device_hist SET device='p09/motor/exp.32',attribute='StepPositionController',name='__value',count='1',id='29862956',value='367851' 2015-06-17.16:37:22
0.147066 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.16:37:22
0.128192 Updating UPDATE property_attribute_device SET value='549175' WHERE device LIKE 'p09/motor/exp.33' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.21:39:36
0.127137 Sending data SELECT * FROM property_attribute_device WHERE device LIKE 'p09/motor/exp.34' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.21:39:36
0.124502 Updating UPDATE property_attribute_device SET value='356590' WHERE device LIKE 'p09/motor/exp.31' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.16:18:36
0.12336 Sending data SELECT * FROM property_attribute_device WHERE device LIKE 'p09/motor/exp.33' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.16:18:36
0.123334 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.16:08:17
0.121975 update INSERT INTO property_attribute_device_hist SET device='p09/motor/exp.31',attribute='StepPositionInternal',name='__value',count='1',id='29835554',value='350394' 2015-06-17.16:08:17
0.118151 update INSERT INTO property_attribute_device_hist SET device='p09/motor/exp.33',attribute='StepPositionController',name='__value',count='1',id='29831900',value='348053' 2015-06-17.16:04:24
0.117685 Updating UPDATE property_attribute_device SET value='348066' WHERE device LIKE 'p09/motor/exp.31' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.16:04:24
0.115573 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.15:37:56
0.114546 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.15:37:56
0.112407 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.19:06:54
0.112257 Updating UPDATE property_attribute_device SET value='501476' WHERE device LIKE 'p09/motor/exp.34' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.20:20:05
0.110523 Sending data SELECT * FROM property_attribute_device WHERE device LIKE 'p09/motor/exp.33' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.20:20:05
0.110048 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.19:06:54
0.107798 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.19:57:20
0.106377 update INSERT INTO property_attribute_device_hist SET device='p09/motor/exp.32',attribute='StepPositionController',name='__value',count='1',id='30051372',value='487826' 2015-06-17.19:57:20
0.105856 Updating UPDATE property_attribute_device SET value='494967' WHERE device LIKE 'p09/motor/exp.31' AND attribute LIKE 'StepPositionInternal' AND name='__value' 2015-06-17.20:09:14
0.105099 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.18:49:02
0.104216 Updating UPDATE property_attribute_device SET value='435602' WHERE device LIKE 'p09/motor/exp.31' AND attribute LIKE 'StepPositionInternal' AND name='__value' 2015-06-17.18:30:18
0.104176 update INSERT INTO property_attribute_device_hist SET device='p09/motor/exp.33',attribute='StepPositionController',name='__value',count='1',id='29833100',value='348820' 2015-06-17.16:05:41
0.103759 starting COMMIT 2015-06-17.18:49:02
0.102998 Updating UPDATE property_attribute_device SET value='494971' WHERE device LIKE 'p09/motor/exp.32' AND attribute LIKE 'StepPositionInternal' AND name='__value' 2015-06-17.20:09:14
0.102515 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.18:33:01
0.102481 Sending data SELECT * FROM property_attribute_device WHERE device LIKE 'p09/motor/exp.34' AND attribute LIKE 'StepPositionInternal' AND name='__value' 2015-06-17.18:30:18
0.102142 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.19:58:23
0.101914 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.19:58:23
0.101765 starting COMMIT 2015-06-17.18:33:01
0.101702 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1)
Also the problem could be caused by common access to harddisk. Between 22:20 and 23:10 TSM disk backup is execuded
and then I get the higher spikes
duration state query timestamp
0.934707 Updating UPDATE property_attribute_device SET value='600068' WHERE device LIKE 'p09/motor/exp.32' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.23:04:25
0.537179 update INSERT INTO property_attribute_device_hist SET device='p09/motor/exp.34',attribute='StepPositionController',name='__value',count='1',id='30197592',value='580983' 2015-06-17.22:32:36
0.506604 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:52:47
0.506576 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:32:36
0.506487 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:32:36
0.504438 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:52:47
0.503025 starting COMMIT 2015-06-17.22:52:47
0.500263 Updating UPDATE property_attribute_device SET value='580971' WHERE device LIKE 'p09/motor/exp.33' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.22:32:36
0.498869 Sending data SELECT * FROM property_attribute_device WHERE device LIKE 'p09/motor/exp.32' AND attribute LIKE 'StepPositionController' AND name='__value 2015-06-17.22:32:36
0.479248 Updating UPDATE property_attribute_device SET value='594629' WHERE device LIKE 'p09/motor/exp.32' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.22:55:20
0.476236 Updating UPDATE property_attribute_device SET value='599705' WHERE device LIKE 'p09/motor/exp.34' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.23:03:48
0.476168 Updating UPDATE property_attribute_device SET value='599704' WHERE device LIKE 'p09/motor/exp.31' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.23:03:48
0.476147 Updating UPDATE property_attribute_device SET value='592871' WHERE device LIKE 'p09/motor/exp.31' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.22:52:25
0.473693 Sending data SELECT * FROM property_attribute_device WHERE device LIKE 'p09/motor/exp.32' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.22:52:25
0.470786 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:32:24
0.467941 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:32:24
0.465877 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.23:05:07
0.465615 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:32:24
0.465547 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.23:05:07
0.464788 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.23:05:07
0.463986 update INSERT INTO property_attribute_device_hist SET device='p09/motor/exp.33',attribute='StepPositionController',name='__value',count='1',id='30227776',value='600479' 2015-06-17.23:05:07
0.462922 update INSERT INTO property_attribute_device_hist SET device='p09/motor/exp.31',attribute='StepPositionController',name='__value',count='1',id='30197417',value='580858' 2015-06-17.22:32:24
0.442537 update INSERT INTO property_attribute_device_hist SET device='p09/motor/exp.31',attribute='StepPositionController',name='__value',count='1',id='30203916',value='585032' 2015-06-17.22:39:21
0.425195 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:44:14
0.424213 updating DELETE FROM property_attribute_device_hist WHERE id='30208330' 2015-06-17.22:44:14
0.391754 Sending data SELECT * FROM property_attribute_device WHERE device LIKE 'p09/motor/exp.34' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.22:55:20
0.384994 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.23:07:03
0.384858 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.23:07:03
0.382451 updating DELETE FROM property_attribute_device_hist WHERE id='30229513' 2015-06-17.23:07:03
0.361879 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:44:14
0.361471 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:31:10
0.36119 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:31:10
0.361087 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:31:10
0.3607 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:31:10
0.354783 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:41:13
0.354044 Updating UPDATE device_attribute_history_id SET id=LAST_INSERT_ID(id+1) 2015-06-17.22:41:13
0.33398 Sending data SELECT * FROM property_attribute_device WHERE device LIKE 'p09/motor/exp.32' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.23:03:48
0.325828 update INSERT INTO property_attribute_device_hist SET device='p09/motor/exp.34',attribute='StepPositionController',name='__value',count='1',id='30199928',value='582482' 2015-06-17.22:35:06
0.306212 Updating UPDATE property_attribute_device SET value='581213' WHERE device LIKE 'p09/motor/exp.34' AND attribute LIKE 'StepPositionController' AND name='__value' 2015-06-17.22:32:59
So I don’t thing this problem could be easily solved.
Bests,
Jan