https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16365
Marcel de Rooy <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #52409|0 |1 is obsolete| | Attachment #53746|0 |1 is obsolete| | --- Comment #12 from Marcel de Rooy <[email protected]> --- Created attachment 53761 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=53761&action=edit Bug 16365: Selectively introduce GetMarcStructure() "unsafe" variant for better performance GetMarcStructure() currently uses Koha::Cache in the "safe" mode (returning deep copy of the result data structure by default), which causes numerous performance issues in many Koha scripts. Switching it to the "unsafe" mode globally (2nd patch from Bug 16140) resolves those issues, but ensuring that it is regression-free (and that it will stay that way in the future) is far from easy. This patch proposes a bit more manageable solution, it introduces a possibility to use "unsafe" variant selectively (only in those places in the code where GetMarcStructure() is called repetitively). That way, amount of the code that needs to be audited for possible problems gets vastly reduced, without any performance trade-offs. Test plan: 1) Have a look at the code and audit the parts affected by this patch for possible regressions Signed-off-by: Marcel de Rooy <[email protected]> Amended the POD of GetMarcStructure, removing a TODO. NOTE: GetAuthorisedValueDesc, as called in C4::XSLT::transformMARCXML4XSLT and by GetISBDView, GetMarcAuthors in C4::Biblio, may autovivify some hash entries in tagslib. Same for Koha/Filter/MARC/ViewPolicy.pm, sub filter. No reason however to worry; our use of this structure in Koha does not depend on the existence of intermediate hash keys. (We seem to be safe as long as $tagslib->{$tag}->{$subfield}->{tab} and/or hidden are not filled.) -- You are receiving this mail because: You are watching all bug changes. _______________________________________________ Koha-bugs mailing list [email protected] http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-bugs website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
