View | Details | Raw Unified | Return to bug 6193
Collapse All | Expand All

(-)a/C4/Auth.pm (-13 / +4 lines)
Lines 35-41 use POSIX qw/strftime/; Link Here
35
use List::MoreUtils qw/ any /;
35
use List::MoreUtils qw/ any /;
36
36
37
# use utf8;
37
# use utf8;
38
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $debug $ldap $cas $caslogout $servers $memcached);
38
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $debug $ldap $cas $caslogout);
39
39
40
BEGIN {
40
BEGIN {
41
    sub psgi_env { any { /^psgi\./ } keys %ENV }
41
    sub psgi_env { any { /^psgi\./ } keys %ENV }
Lines 61-76 BEGIN { Link Here
61
    if ($cas) {
61
    if ($cas) {
62
        import  C4::Auth_with_cas qw(check_api_auth_cas checkpw_cas login_cas logout_cas login_cas_url);
62
        import  C4::Auth_with_cas qw(check_api_auth_cas checkpw_cas login_cas logout_cas login_cas_url);
63
    }
63
    }
64
    $servers = C4::Context->config('memcached_servers');
64
65
    if ($servers) {
66
	require Cache::Memcached;
67
        $memcached = Cache::Memcached->new({
68
					       servers => [ $servers ],
69
					       debug   => 0,
70
					       compress_threshold => 10_000,
71
					       namespace => C4::Context->config('memcached_namespace') || 'koha',
72
					   });
73
    }
74
}
65
}
75
66
76
=head1 NAME
67
=head1 NAME
Lines 1422-1429 sub get_session { Link Here
1422
    elsif ($storage_method eq 'Pg') {
1413
    elsif ($storage_method eq 'Pg') {
1423
        $session = new CGI::Session("driver:PostgreSQL;serializer:yaml;id:md5", $sessionID, {Handle=>$dbh});
1414
        $session = new CGI::Session("driver:PostgreSQL;serializer:yaml;id:md5", $sessionID, {Handle=>$dbh});
1424
    }
1415
    }
1425
    elsif ($storage_method eq 'memcached' && $servers){
1416
    elsif ($storage_method eq 'memcached' && C4::Context->ismemcached){
1426
	$session = new CGI::Session("driver:memcached;serializer:yaml;id:md5", $sessionID, { Memcached => $memcached } );
1417
	$session = new CGI::Session("driver:memcached;serializer:yaml;id:md5", $sessionID, { Memcached => C4::Context->memcached } );
1427
    }
1418
    }
1428
    else {
1419
    else {
1429
        # catch all defaults to tmp should work on all systems
1420
        # catch all defaults to tmp should work on all systems
(-)a/C4/Biblio.pm (-7 / +4 lines)
Lines 137-152 BEGIN { Link Here
137
}
137
}
138
138
139
eval {
139
eval {
140
    my $servers = C4::Context->config('memcached_servers');
140
    if (C4::Context->ismemcached) {
141
    if ($servers) {
142
        require Memoize::Memcached;
141
        require Memoize::Memcached;
143
        import Memoize::Memcached qw(memoize_memcached);
142
        import Memoize::Memcached qw(memoize_memcached);
144
143
145
        my $memcached = {
144
        memoize_memcached( 'GetMarcStructure',
146
            servers    => [$servers],
145
                            memcached => C4::Context->memcached,
147
            key_prefix => C4::Context->config('memcached_namespace') || 'koha',
146
                            expire_time => 600 );    #cache for 10 minutes
148
        };
149
        memoize_memcached( 'GetMarcStructure', memcached => $memcached, expire_time => 600 );    #cache for 10 minutes
150
    }
147
    }
151
};
148
};
152
149
(-)a/C4/Context.pm (+25 lines)
Lines 253-258 sub read_config_file { # Pass argument naming config file to read Link Here
253
    return $koha;			# Return value: ref-to-hash holding the configuration
253
    return $koha;			# Return value: ref-to-hash holding the configuration
254
}
254
}
255
255
256
=head2 ismemcached
257
258
Returns the value of the $ismemcached variable (0/1)
259
260
=cut
261
262
sub ismemcached {
263
    return $ismemcached;
264
}
265
266
=head2 memcached
267
268
If $ismemcached is true, returns the $memcache variable.
269
Returns undef otherwise
270
271
=cut
272
273
sub memcached {
274
    if ($ismemcached) {
275
      return $memcached;
276
    } else {
277
      return undef;
278
    }
279
}
280
256
# db_scheme2dbi
281
# db_scheme2dbi
257
# Translates the full text name of a database into de appropiate dbi name
282
# Translates the full text name of a database into de appropiate dbi name
258
# 
283
# 
(-)a/C4/Languages.pm (-10 / +4 lines)
Lines 26-44 use C4::Context; Link Here
26
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $DEBUG);
26
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $DEBUG);
27
27
28
eval {
28
eval {
29
    my $servers = C4::Context->config('memcached_servers');
29
    if (C4::Context->ismemcached) {
30
    if ($servers) {
31
        require Memoize::Memcached;
30
        require Memoize::Memcached;
32
        import Memoize::Memcached qw(memoize_memcached);
31
        import Memoize::Memcached qw(memoize_memcached);
33
 
32
 
34
        my $memcached = {
33
        memoize_memcached('getTranslatedLanguages', memcached => C4::Context->memcached, expire_time => 600); #cache for 10 minutes
35
            servers    => [ $servers ],
34
        memoize_memcached('getFrameworkLanguages' , memcached => C4::Context->memcached, expire_time => 600);
36
            key_prefix => C4::Context->config('memcached_namespace') || 'koha',
35
        memoize_memcached('getAllLanguages',        memcached => C4::Context->memcached, expire_time => 600);
37
        };
38
39
        memoize_memcached('getTranslatedLanguages', memcached => $memcached, expire_time => 600); #cache for 10 minutes
40
        memoize_memcached('getFrameworkLanguages' , memcached => $memcached, expire_time => 600);
41
        memoize_memcached('getAllLanguages',        memcached => $memcached, expire_time => 600);
42
    }
36
    }
43
};
37
};
44
38
(-)a/etc/koha-conf.xml (-3 lines)
Lines 275-281 __PAZPAR2_TOGGLE_XML_POST__ Link Here
275
 <pazpar2url>http://__PAZPAR2_HOST__:__PAZPAR2_PORT__/search.pz2</pazpar2url>
275
 <pazpar2url>http://__PAZPAR2_HOST__:__PAZPAR2_PORT__/search.pz2</pazpar2url>
276
 <install_log>__MISC_DIR__/koha-install-log</install_log>
276
 <install_log>__MISC_DIR__/koha-install-log</install_log>
277
 <useldapserver>0</useldapserver><!-- see C4::Auth_with_ldap for extra configs you must add if you want to turn this on -->
277
 <useldapserver>0</useldapserver><!-- see C4::Auth_with_ldap for extra configs you must add if you want to turn this on -->
278
 <memcached_servers>__MEMCACHED_SERVERS__</memcached_servers>
279
 <memcached_namespace>__MEMCACHED_NAMESPACE__</memcached_namespace>
280
</config>
278
</config>
281
</yazgfs>
279
</yazgfs>
282
- 

Return to bug 6193