Bug 17261: Memcached may not longer be running

If plack is started with memcached, memcached will be considered as
running, even if it has been stopped (or crashed).
This case should be highlighted on the about page.
Note that I am not sure about the consequences of this specific case!

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Katrin Fischer  <katrin.fischer@bsz-bw.de>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
This commit is contained in:
Jonathan Druart 2016-09-08 10:04:13 +01:00 committed by Kyle M Hall
parent 605abeb08a
commit 6197e5020d
2 changed files with 15 additions and 3 deletions

View File

@ -75,12 +75,17 @@ if ( any { /(^psgi\.|^plack\.)/i } keys %ENV ) {
my $memcached_servers = $ENV{MEMCACHED_SERVERS} || C4::Context->config('memcached_servers');
my $memcached_namespace = $ENV{MEMCACHED_NAMESPACE} || C4::Context->config('memcached_namespace') // 'koha';
my $effective_caching_method = ref(Koha::Caches->get_instance->cache);
my $cache = Koha::Caches->get_instance;
my $effective_caching_method = ref($cache->cache);
# Memcached may have been running when plack has been initialized but could have been stopped since
# FIXME What are the consequences of that??
my $is_memcached_still_active = $cache->set_in_cache('test_for_about_page', "just a simple value");
$template->param(
effective_caching_method => $effective_caching_method,
memcached_servers => $memcached_servers,
memcached_namespace => $memcached_namespace,
is_memcached_still_active => $is_memcached_still_active,
memcached_running => Koha::Caches->get_instance->memcached_cache
);

View File

@ -58,8 +58,15 @@
Namespace: [% IF memcached_namespace %]<span>[% memcached_namespace | html %]</span>
[% ELSE %]<span>undefined</span>[% END %] |
Status: [% IF memcached_servers %]
[% IF memcached_running %]<span class="status_ok">running</span>
[% ELSE %]<span class="status_warn">not running</span>[% END %]
[% IF memcached_running %]
[% IF is_memcached_still_active %]
<span class="status_ok">running</span>
[% ELSE %]
<span class="status_warn">no longer running</span><span>, restart memcached!</span>
[% END %]
[% ELSE %]
<span class="status_warn">not running</span>
[% END %]
[% ELSE %]
<span>unknown</span>
[% END %]