[Koha-bugs] [Bug 10503] incorrect initialization parameters passed to Memoize::Memcached

bugzilla-daemon at bugs.koha-community.org bugzilla-daemon at bugs.koha-community.org
Thu Jul 18 01:41:23 CEST 2013


http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=10503

Srdjan Jankovic <srdjan at catalyst.net.nz> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #19236|0                           |1
        is obsolete|                            |

--- Comment #6 from Srdjan Jankovic <srdjan at catalyst.net.nz> ---
Created attachment 19735
  -->
http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19735&action=edit
[SIGNED-OFF] bug 10503: fix various issues with use of Memoize::Memcached

Memoize::Memcached expects to be passed a hashref of connection
parameters, which it in turn uses to initialize a Cache::Memcached
object.  However, commit 52afe06ddd started passing a Cache::Memcached
object directly, not the required hashref.  This happened to work
by coincidence, but no longer works with recent versions of
Memoize::Memcached packaged for Debian.

This patch introduces a new C4::Context function, memcached_params(), that
returns a hashref of connection parameters suitable for passing to
the Cache::Memcached constructor.  It also introduces a UNITCHECK block
to C4::Context so that memcached_params() can be used during intialization
of the module.

This patch also corrects SQLHelper so that it no longer tries to
use the deprecated (and removed) memcached_servers setting in koha-conf.xml;
it now gets the memcached connection parameters from
C4::Context->memcached_params().

To test:

[1] This patch is most easily tested on Debian Wheezy, as version
    0.03-2 of the libmemoize-memcached-perl package includes the fix
    for Debian bug 614868 that causes Koha's use of Memoize::Memcached
    to break.  If you don't want to go so far as to install/upgrade to
    Wheezy, you can apply the following Debian patch to your copy
    of Memoize::Memcached to get the effect:

   
http://patch-tracker.debian.org/patch/series/view/libmemoize-memcached-perl/0.03-2/universal.patch

[2] Set up your Koha Apache configuration to point to a memcached server.
[3] Restart memcached to start with a clear cache.
[4] Do the following steps:
    - Create a new bib record.  Note that it is sufficient to
      just open the editor; you don't need to save the bib.
    - Search for a patron record.
[5] Use the memcdump command-line to get a list of keys in your memcached
cache.
    You should *not* see keys that contain the strings GetMarcStructure,
    getTranslatedLanguages, or _get_columns.
[6] Apply the patch, then go through step 4 again.
[7] Use memcdump again.  This time, you *should* see the keys
    mentioned in step 5.
[8] Set the SessionStorage system preference to memcached.  After logging in
    again, verify that your staff interface and OPAC sessions work without
    requiring that you log in for each and every page load.

Signed-off-by: Galen Charlton <gmc at esilibrary.com>
Signed-off-by: Srdjan <srdjan at catalyst.net.nz>

-- 
You are receiving this mail because:
You are watching all bug changes.


More information about the Koha-bugs mailing list