[interchange-cvs] interchange - heins modified 3 files
interchange-cvs at icdevgroup.org
interchange-cvs at icdevgroup.org
Thu Apr 16 16:58:31 UTC 2009
User: heins
Date: 2009-04-16 16:58:31 GMT
Modified: . WHATSNEW-5.7
Modified: lib/Vend Config.pm SessionFile.pm
Log:
* Add ability to configure the number of levels and hash length for
the directory structure of file-based sessions. Instead of a fixed
value of 2 and 1 for levels and length, respectively, make two
configuration parameters:
SessionHashLength
SessionHashLevels
Default is 1 and 2, respectively, matching the current values.
This solves the problem of session IDs passed from CGI::Session or other
modules that use a quasi-sequential session ID. You end up placing all
sessions in the S/2 directory for a long time, followed by the S/3 directory,
etc. A setting of:
SessionHashLength 4
SessionHashLevels 1
would break sessions up into separate directories instead of putting all
sessions in a huge directory.
Revision Changes Path
2.39 interchange/WHATSNEW-5.7
rev 2.39, prev_rev 2.38
Index: WHATSNEW-5.7
===================================================================
RCS file: /var/cvs/interchange/WHATSNEW-5.7,v
retrieving revision 2.38
retrieving revision 2.39
diff -u -r2.38 -r2.39
--- WHATSNEW-5.7 16 Apr 2009 14:54:14 -0000 2.38
+++ WHATSNEW-5.7 16 Apr 2009 16:58:31 -0000 2.39
@@ -60,7 +60,7 @@
* Add reload of AutoModifier based on a prepended ! (exclamation point).
Example:
- AutoModifier !download pricing:price_group
+ AutoModifier !download pricing:price_group
The download attribute will be recomputed for the current sku when
the cart is recalculated.
@@ -70,7 +70,7 @@
that field. No default, so not operational in standard demo catalog.
Enabled with:
- UserDB default merged_user merge_to
+ UserDB default merged_user merge_to
That would look in the database field "merge_to" for a user name
to change to.
@@ -85,6 +85,24 @@
* Shorthand added to allow beginning/ending year with date widget
name (i.e. yearbegin1934, yearend=0000 where 0000 means current year).
+* Add ability to configure the number of levels and hash length for
+ the directory structure of file-based sessions. Instead of a fixed
+ value of 2 and 1 for levels and length, respectively, make two
+ configuration parameters named SessionHashLevels and SessionHashLength
+
+ Default is 2 and 1, respectively, matching the current values.
+
+ This solves the problem of session IDs passed from CGI::Session or other
+ modules that use a quasi-sequential session ID. You end up placing all
+ sessions in the S/2 directory for a long time, followed by the S/3 directory,
+ etc. A setting of:
+
+ SessionHashLength 4
+ SessionHashLevels 1
+
+ would break sessions up into separate directories instead of putting all
+ sessions in a huge directory.
+
Payment
-------
2.246 interchange/lib/Vend/Config.pm
rev 2.246, prev_rev 2.245
Index: Config.pm
===================================================================
RCS file: /var/cvs/interchange/lib/Vend/Config.pm,v
retrieving revision 2.245
retrieving revision 2.246
diff -u -r2.245 -r2.246
--- Config.pm 6 Apr 2009 12:23:22 -0000 2.245
+++ Config.pm 16 Apr 2009 16:58:31 -0000 2.246
@@ -1,6 +1,6 @@
# Vend::Config - Configure Interchange
#
-# $Id: Config.pm,v 2.245 2009-04-06 12:23:22 markj Exp $
+# $Id: Config.pm,v 2.246 2009-04-16 16:58:31 mheins Exp $
#
# Copyright (C) 2002-2009 Interchange Development Group
# Copyright (C) 1996-2002 Red Hat, Inc.
@@ -54,7 +54,7 @@
use Vend::Data;
use Vend::Cron;
-$VERSION = substr(q$Revision: 2.245 $, 10);
+$VERSION = substr(q$Revision: 2.246 $, 10);
my %CDname;
my %CPname;
@@ -716,6 +716,8 @@
['BounceReferrals', 'yesno', 'no'],
['OrderCleanup', 'routine_array', ''],
['SessionCookieSecure', 'yesno', 'no'],
+ ['SessionHashLength', 'integer', 1],
+ ['SessionHashLevels', 'integer', 2],
['SourcePriority', 'array_complete', 'mv_pc mv_source'],
['SourceCookie', sub { &parse_ordered_attributes(@_, [qw(name expire domain path secure)]) }, '' ],
2.8 interchange/lib/Vend/SessionFile.pm
rev 2.8, prev_rev 2.7
Index: SessionFile.pm
===================================================================
RCS file: /var/cvs/interchange/lib/Vend/SessionFile.pm,v
retrieving revision 2.7
retrieving revision 2.8
diff -u -r2.7 -r2.8
--- SessionFile.pm 4 Dec 2007 01:57:44 -0000 2.7
+++ SessionFile.pm 16 Apr 2009 16:58:31 -0000 2.8
@@ -1,6 +1,6 @@
# Vend::SessionFile - Stores Interchange session information in files
#
-# $Id: SessionFile.pm,v 2.7 2007-12-04 01:57:44 markj Exp $
+# $Id: SessionFile.pm,v 2.8 2009-04-16 16:58:31 mheins Exp $
#
# Copyright (C) 2002-2007 Interchange Development Group
# Copyright (C) 1996-2002 Red Hat, Inc.
@@ -29,7 +29,7 @@
use Vend::Util;
use vars qw($VERSION);
-$VERSION = substr(q$Revision: 2.7 $, 10);
+$VERSION = substr(q$Revision: 2.8 $, 10);
my $SessionDir;
my $CommDir;
@@ -56,7 +56,7 @@
}
sub keyname {
- return Vend::Util::get_filename(shift, 2, 1, $SessionDir);
+ return Vend::Util::get_filename(shift, $Vend::Cfg->{SessionHashLevels}, $Vend::Cfg->{SessionHashLength}, $SessionDir);
}
sub FETCH {
More information about the interchange-cvs
mailing list