summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher Guiney <chris@guiney.net>2012-06-29 06:53:12 +0200
committerChristopher Guiney <chris@guiney.net>2012-06-29 06:53:12 +0200
commit68b9b822b674e9f98025165a9391110a33f1b094 (patch)
tree5041531ee915f90e4f3065b6e3bed2695cfd139d
parent7db0f597c78cd5485b566d9cd6e3935a8489c540 (diff)
Allow session garbace collection percentage to be configured.
-rw-r--r--application/config/config.php2
-rw-r--r--system/libraries/Session.php2
2 files changed, 3 insertions, 1 deletions
diff --git a/application/config/config.php b/application/config/config.php
index 726e3a71c..e3f87eb42 100644
--- a/application/config/config.php
+++ b/application/config/config.php
@@ -276,6 +276,7 @@ $config['encryption_key'] = '';
| 'sess_match_ip' = Whether to match the user's IP address when reading the session data
| 'sess_match_useragent' = Whether to match the User Agent when reading the session data
| 'sess_time_to_update' = how many seconds between CI refreshing Session Information
+| 'gc_probability' = percent chance that stale sessions to be deleted
|
*/
$config['sess_cookie_name'] = 'ci_session';
@@ -287,6 +288,7 @@ $config['sess_table_name'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update'] = 300;
+$config['gc_probability'] = 5;
/*
|--------------------------------------------------------------------------
diff --git a/system/libraries/Session.php b/system/libraries/Session.php
index 72a942b8a..4e5e256a1 100644
--- a/system/libraries/Session.php
+++ b/system/libraries/Session.php
@@ -201,7 +201,7 @@ class CI_Session {
// Set all the session preferences, which can either be set
// manually via the $params array above or via the config file
- foreach (array('sess_encrypt_cookie', 'sess_use_database', 'sess_table_name', 'sess_expiration', 'sess_expire_on_close', 'sess_match_ip', 'sess_match_useragent', 'sess_cookie_name', 'cookie_path', 'cookie_domain', 'cookie_secure', 'cookie_httponly', 'sess_time_to_update', 'time_reference', 'cookie_prefix', 'encryption_key') as $key)
+ foreach (array('sess_encrypt_cookie', 'sess_use_database', 'sess_table_name', 'sess_expiration', 'sess_expire_on_close', 'sess_match_ip', 'sess_match_useragent', 'sess_cookie_name', 'cookie_path', 'cookie_domain', 'cookie_secure', 'cookie_httponly', 'sess_time_to_update', 'time_reference', 'cookie_prefix', 'encryption_key', 'gc_probability') as $key)
{
$this->$key = isset($params[$key]) ? $params[$key] : $this->CI->config->item($key);
}