Bug 21975: Avoid unnecessary substitutions in automatic item modification by age
authorFridolin Somers <fridolin.somers@biblibre.com>
Fri, 7 Dec 2018 15:05:52 +0000 (16:05 +0100)
committerNick Clemens <nick@bywatersolutions.com>
Tue, 16 Apr 2019 13:17:33 +0000 (13:17 +0000)
commit3a3ffbc54b8dec8ee63332417fe2732ee93f3034
tree794f446ac724a55180e450abb5afba778e858823
parent0be8fd212067ebd4b36e00b4d139761aa0e021c3
Bug 21975: Avoid unnecessary substitutions in automatic item modification by age

Automatic item modification by age cronjob is based on rules with conditions and substitutions.
When substitution value is equal to actual item value, the code should not call C4::Items::ModItem. It adds unnecessary action log and entry in zebraqueue.
With a rule than can impact all catalogue you can explode your database with action logs.

Test plan :
1) Run prove t/db_dependent/Items/AutomaticItemModificationByAge.t
2) Define a item modification by age with no condition
3) Run several times misc/cronjobs/automatic_item_modification_by_age.pl
4) Check it creates only one entry in action_logs and zebraqueue

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
C4/Items.pm