[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-07-08 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Kyle M Hall  changed:

   What|Removed |Added

 CC||k...@bywatersolutions.com
 Status|Passed QA   |Pushed to Master

--- Comment #29 from Kyle M Hall  ---
Pushed to master for 16.11, thanks Jacek!

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-07-06 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jonathan Druart  changed:

   What|Removed |Added

 Blocks||16579


Referenced Bugs:

https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16579
[Bug 16579] Use separate memcached namespace for caching koha-conf.xml
-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-24 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Kyle M Hall  changed:

   What|Removed |Added

  Attachment #52509|0   |1
is obsolete||
  Attachment #52510|0   |1
is obsolete||

--- Comment #27 from Kyle M Hall  ---
Created attachment 52863
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=52863=edit
Bug 16166: Improve L1 cache performance and safety

Bug 16044 introduced two-level caching mechanism to Koha::Cache. By
default, get_from_cache() returns a deep copy of the data structures
stored in L1 cache (aka "safe mode"). For extremely big and/or complex
data structures (like MARC framework hash-of-hashes-of-hashes returned
by GetMarcStructure() ), deep-cloning is currently sub-optimal;
this patch addresses that particular issue. It also provides an
ability to intermix "safe" and "unsafe" cache feches, in such
way that they don't interfere with each other (i.e., eliminating
the risk involved with "unsafe" calls possibly compromising
further "safe" calls).

Test plan:

1) apply patch
2) flush L2 cache if necessary (restart memcached daemon)
3) profile GetMarcStructure() calls before / after patch, e.g. by
running some script which calls it often (like catalogue search
w/ XSLT processing turned on, etc.) - GetMarcStructure() should be
faster than before, in all possible circumstances (eg. 18 msec
per call -> 10 msec p/call)
4) after testing, before returning to the master branch, flush L2 cache
again (restart memcached daemon) - otherwise all system preferences
returned from L2 cache would be suffixed with '-CF0'

Signed-off-by: Jonathan Druart 

Signed-off-by: Kyle M Hall 

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-24 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

--- Comment #28 from Kyle M Hall  ---
Created attachment 52864
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=52864=edit
Bug 16166: Fix t/Cache.t tests

Thou shalt not forget to include changes made in the t/Cache.t
in the patch set.

Signed-off-by: Jonathan Druart 

Signed-off-by: Kyle M Hall 

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-24 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Kyle M Hall  changed:

   What|Removed |Added

 Status|Signed Off  |Passed QA

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-18 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

--- Comment #26 from Jonathan Druart  
---
Forgot to add my signed-off-by lines!

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-18 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

--- Comment #25 from Jonathan Druart  
---
Created attachment 52510
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=52510=edit
Bug 16166: Fix t/Cache.t tests

Thou shalt not forget to include changes made in the t/Cache.t
in the patch set.

Signed-off-by: Jonathan Druart 

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-18 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jonathan Druart  changed:

   What|Removed |Added

  Attachment #52265|0   |1
is obsolete||
  Attachment #52266|0   |1
is obsolete||

--- Comment #24 from Jonathan Druart  
---
Created attachment 52509
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=52509=edit
Bug 16166: Improve L1 cache performance and safety

Bug 16044 introduced two-level caching mechanism to Koha::Cache. By
default, get_from_cache() returns a deep copy of the data structures
stored in L1 cache (aka "safe mode"). For extremely big and/or complex
data structures (like MARC framework hash-of-hashes-of-hashes returned
by GetMarcStructure() ), deep-cloning is currently sub-optimal;
this patch addresses that particular issue. It also provides an
ability to intermix "safe" and "unsafe" cache feches, in such
way that they don't interfere with each other (i.e., eliminating
the risk involved with "unsafe" calls possibly compromising
further "safe" calls).

Test plan:

1) apply patch
2) flush L2 cache if necessary (restart memcached daemon)
3) profile GetMarcStructure() calls before / after patch, e.g. by
running some script which calls it often (like catalogue search
w/ XSLT processing turned on, etc.) - GetMarcStructure() should be
faster than before, in all possible circumstances (eg. 18 msec
per call -> 10 msec p/call)
4) after testing, before returning to the master branch, flush L2 cache
again (restart memcached daemon) - otherwise all system preferences
returned from L2 cache would be suffixed with '-CF0'

Signed-off-by: Jonathan Druart 

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-12 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Mason James  changed:

   What|Removed |Added

 CC||m...@kohaaloha.com

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-12 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

--- Comment #23 from Jonathan Druart  
---
See bug 16715 for more information about perfs gain.

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-12 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

--- Comment #22 from Jonathan Druart  
---
Created attachment 52266
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=52266=edit
Bug 16166: Fix t/Cache.t tests

Thou shalt not forget to include changes made in the t/Cache.t
in the patch set.

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-12 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jonathan Druart  changed:

   What|Removed |Added

 Status|Needs Signoff   |Signed Off

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-12 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jonathan Druart  changed:

   What|Removed |Added

  Attachment #51763|0   |1
is obsolete||
  Attachment #51764|0   |1
is obsolete||
  Attachment #51765|0   |1
is obsolete||

--- Comment #21 from Jonathan Druart  
---
Created attachment 52265
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=52265=edit
Bug 16166: Improve L1 cache performance and safety

Bug 16044 introduced two-level caching mechanism to Koha::Cache. By
default, get_from_cache() returns a deep copy of the data structures
stored in L1 cache (aka "safe mode"). For extremely big and/or complex
data structures (like MARC framework hash-of-hashes-of-hashes returned
by GetMarcStructure() ), deep-cloning is currently sub-optimal;
this patch addresses that particular issue. It also provides an
ability to intermix "safe" and "unsafe" cache feches, in such
way that they don't interfere with each other (i.e., eliminating
the risk involved with "unsafe" calls possibly compromising
further "safe" calls).

Test plan:

1) apply patch
2) flush L2 cache if necessary (restart memcached daemon)
3) profile GetMarcStructure() calls before / after patch, e.g. by
running some script which calls it often (like catalogue search
w/ XSLT processing turned on, etc.) - GetMarcStructure() should be
faster than before, in all possible circumstances (eg. 18 msec
per call -> 10 msec p/call)
4) after testing, before returning to the master branch, flush L2 cache
again (restart memcached daemon) - otherwise all system preferences
returned from L2 cache would be suffixed with '-CF0'

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-12 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jonathan Druart  changed:

   What|Removed |Added

 Blocks||16715


Referenced Bugs:

https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16715
[Bug 16715] Koha::Cache - Use Sereal for serialization
-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-12 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jonathan Druart  changed:

   What|Removed |Added

  Attachment #52246|0   |1
is obsolete||

--- Comment #20 from Jonathan Druart  
---
Comment on attachment 52246
  --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=52246
Bug 16166: Proposed followup to use Sereal for serialization

Moved to bug 16715

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-06-10 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

--- Comment #19 from Jesse Weaver  ---
Created attachment 52246
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=52246=edit
Bug 16166: Proposed followup to use Sereal for serialization

This manages to eke out a bit more performance on my machine.

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-05-25 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

--- Comment #18 from Jacek Ablewicz  ---
Created attachment 51765
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=51765=edit
Bug 16166: Update number of tests to run in t/Cache.t

Update number of tests to run + number of tests to skip in case when
cache is not active.

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-05-25 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jacek Ablewicz  changed:

   What|Removed |Added

  Attachment #50709|0   |1
is obsolete||

--- Comment #17 from Jacek Ablewicz  ---
Created attachment 51764
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=51764=edit
Bug 16166: Fix t/Cache.t tests

Thou shalt not forget to include changes made in the t/Cache.t
in the patch set.

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-05-25 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jacek Ablewicz  changed:

   What|Removed |Added

  Attachment #50708|0   |1
is obsolete||

--- Comment #16 from Jacek Ablewicz  ---
Created attachment 51763
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=51763=edit
Bug 16166: Improve L1 cache performance and safety

Bug 16044 introduced two-level caching mechanism to Koha::Cache. By
default, get_from_cache() returns a deep copy of the data structures
stored in L1 cache (aka "safe mode"). For extremely big and/or complex
data structures (like MARC framework hash-of-hashes-of-hashes returned
by GetMarcStructure() ), deep-cloning is currently sub-optimal;
this patch addresses that particular issue. It also provides an
ability to intermix "safe" and "unsafe" cache feches, in such
way that they don't interfere with each other (i.e., eliminating
the risk involved with "unsafe" calls possibly compromising
further "safe" calls).

Test plan:

1) apply patch
2) flush L2 cache if necessary (restart memcached daemon)
3) profile GetMarcStructure() calls before / after patch, e.g. by
running some script which calls it often (like catalogue search
w/ XSLT processing turned on, etc.) - GetMarcStructure() should be
faster than before, in all possible circumstances (eg. 18 msec
per call -> 10 msec p/call)
5) prove -v t/Cache.t - all 39 tests should pass; if you see something
like 'ok 39 # skip Cache not enabled', it means that cache is not
active and you need to manually revert Bug 16104 first
6) after testing, before returning to the master branch, flush L2 cache
again (restart memcached daemon) - otherwise all system preferences
returned from L2 cache would be suffixed with '-CF0'

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-04-27 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

--- Comment #15 from Jacek Ablewicz  ---
(In reply to Jacek Ablewicz from comment #14)

> Not sure about GetAuthorisedValue() -  I vaguely recollect that somewhere in
> the past it definitely wasn't "safe", but I can't remember why exactly; will
> try to find the relevant bug report.

Bug 9967 comment #10 - but this particular issue probably got resolved long
time ago by Bug 11944.

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-04-27 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

--- Comment #14 from Jacek Ablewicz  ---
(In reply to Jesse Weaver from comment #11)

> See
> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=49488 for code
> that does modify the value stored in cache, but in a way that doesn't cause
> problems.

I tried to review GetMarcStructure() calls to ensure that "unsafe" variant does
not cause any problems, but this is a mind boggling task, there are way to many
of those calls (direct or undirect) in the code. So I created Bug 16365 instead
- not such elegant solution, but less dangerous and more manageable one IMO.

Not sure about GetAuthorisedValue() -  I vaguely recollect that somewhere in
the past it definitely wasn't "safe", but I can't remember why exactly; will
try to find the relevant bug report.

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-04-27 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jacek Ablewicz  changed:

   What|Removed |Added

 Blocks||16365


Referenced Bugs:

https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16365
[Bug 16365] Selectively introduce GetMarcStructure() "unsafe" variant for
better performance
-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-04-26 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jacek Ablewicz  changed:

   What|Removed |Added

   Severity|major   |enhancement
 Depends on||16229, 16221


Referenced Bugs:

https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16221
[Bug 16221] Use Storable::dclone() instead of Clone::clone() for L1 cache
deep-copying mode
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16229
[Bug 16229] Koha::Cache should be on the safe side
-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-04-26 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

--- Comment #13 from Jacek Ablewicz  ---
Created attachment 50709
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=50709=edit
Bug 16166: Fix t/Cache.t tests

Thou shalt not forget to include changes made in the t/Cache.t
in the patch set.

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-04-26 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jacek Ablewicz  changed:

   What|Removed |Added

  Attachment #50192|0   |1
is obsolete||

--- Comment #12 from Jacek Ablewicz  ---
Created attachment 50708
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=50708=edit
Bug 16166: Improve L1 cache performance and safety

Bug 16044 introduced two-level caching mechanism to Koha::Cache. By
default, get_from_cache() returns a deep copy of the data structures
stored in L1 cache (aka "safe mode"). For extremely big and/or complex
data structures (like MARC framework hash-of-hashes-of-hashes returned
by GetMarcStructure() ), deep-cloning is currently sub-optimal;
this patch addresses that particular issue. It also provides an
ability to intermix "safe" and "unsafe" cache feches, in such
way that they don't interfere with each other (i.e., eliminating
the risk involved with "unsafe" calls possibly compromising
further "safe" calls).

Test plan:

1) apply patch
2) flush L2 cache if necessary (restart memcached daemon)
3) profile GetMarcStructure() calls before / after patch, e.g. by
running some script which calls it often (like catalogue search
w/ XSLT processing turned on, etc.) - GetMarcStructure() should be
faster than before, in all possible circumstances (eg. 18 msec
per call -> 10 msec p/call)
5) prove -v t/Cache.t - all 39 tests should pass; if you see something
like 'ok 39 # skip Cache not enabled', it means that cache is not
active and you need to manually revert Bug 16104 first
6) after testing, before returning to the master branch, flush L2 cache
again (restart memcached daemon) - otherwise all system preferences
returned from L2 cache would be suffixed with '-CF0'

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-04-21 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jesse Weaver  changed:

   What|Removed |Added

 CC||jwea...@bywatersolutions.co
   ||m

--- Comment #11 from Jesse Weaver  ---
Here's something to think about: trying to make the L1 safe while keeping its
performance seems to be rather tricky. Could we consider making cloning (or
locking) something that can be enabled for testing, and leave it turned off in
production?

The data structures returned by L1-memoized functions should really not be
modified by the code that uses them in a way that interferes with future uses
anyway. See https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=49488
for code that does modify the value stored in cache, but in a way that doesn't
cause problems.

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-04-13 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jacek Ablewicz  changed:

   What|Removed |Added

   See Also||https://bugs.koha-community
   ||.org/bugzilla3/show_bug.cgi
   ||?id=16229

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-04-13 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jacek Ablewicz  changed:

   What|Removed |Added

   Priority|P5 - low|P2
   Severity|enhancement |major

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/


[Koha-bugs] [Bug 16166] Improve L1 cache performance and safety

2016-04-13 Thread bugzilla-daemon
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16166

Jacek Ablewicz  changed:

   What|Removed |Added

Summary|Improve L1 cache|Improve L1 cache
   |performance |performance and safety

-- 
You are receiving this mail because:
You are watching all bug changes.
___
Koha-bugs mailing list
Koha-bugs@lists.koha-community.org
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/