[interchange-cvs] interchange - racke modified 2 files

interchange-core@interchange.redhat.com interchange-core@interchange.redhat.com
Sat May 11 08:59:00 2002


User:      racke
Date:      2002-05-11 12:53:14 GMT
Modified:  .        Tag: STABLE_4_8-branch WHATSNEW
Modified:  scripts  Tag: STABLE_4_8-branch expire.PL
Log:
updated database setup, so it is now in sync now with interchange.PL
this fixes the problem where the expire script bailed out on
a VariableDatabase in SQL

Revision  Changes    Path
No                   revision



No                   revision



2.6.2.52  +4 -0      interchange/WHATSNEW


rev 2.6.2.52, prev_rev 2.6.2.51
Index: WHATSNEW
===================================================================
RCS file: /anon_cvs/repository/interchange/WHATSNEW,v
retrieving revision 2.6.2.51
retrieving revision 2.6.2.52
diff -u -r2.6.2.51 -r2.6.2.52
--- WHATSNEW	11 May 2002 11:15:38 -0000	2.6.2.51
+++ WHATSNEW	11 May 2002 12:53:13 -0000	2.6.2.52
@@ -26,6 +26,10 @@
   not starting it after install anyway. Administrator should decide whether
   to do those things.
 
+Miscellaneous
+-------------
+
+* Expire script didn't work with a VariableDatabase in SQL.
 
 ------------------------------------------------------------------------------
 



No                   revision



No                   revision



2.0.2.3   +66 -19    interchange/scripts/expire.PL


rev 2.0.2.3, prev_rev 2.0.2.2
Index: expire.PL
===================================================================
RCS file: /anon_cvs/repository/interchange/scripts/expire.PL,v
retrieving revision 2.0.2.2
retrieving revision 2.0.2.3
diff -u -r2.0.2.2 -r2.0.2.3
--- expire.PL	1 Apr 2002 11:51:34 -0000	2.0.2.2
+++ expire.PL	11 May 2002 12:53:13 -0000	2.0.2.3
@@ -50,7 +50,7 @@
 #
 # Interchange session expiration
 #
-# $Id: expire.PL,v 2.0.2.2 2002/04/01 11:51:34 racke Exp $
+# $Id: expire.PL,v 2.0.2.3 2002/05/11 12:53:13 racke Exp $
 #
 # Copyright (C) 1996-2002 Red Hat, Inc. <interchange@redhat.com>
 #
@@ -79,11 +79,6 @@
 
 use strict;
 use Fcntl;
-use Vend::Session;
-use Vend::Config qw(get_catalog_default global_config parse_time);
-use Vend::Util qw/errmsg/;
-use Getopt::Std;
-use vars qw/$opt_c $opt_r $opt_e $opt_f $opt_u $opt_v $opt_x/;
 
 BEGIN {
 	($Global::VendRoot = $ENV{MINIVEND_ROOT})
@@ -121,29 +116,81 @@
 #select a DBM
 
 BEGIN {
-	$Global::GDBM = $Global::DB_File = 0;
-    AUTO: {
-        last AUTO if
-            (defined $ENV{MINIVEND_DBFILE} and $Global::DB_File = 1);
-        last AUTO if
-            (defined $ENV{MINIVEND_NODBM});
-        eval {require GDBM_File and $Global::GDBM = 1} ||
-        eval {require DB_File and $Global::DB_File = 1};
-    }
+	$Global::GDBM = $Global::DB_File = $Global::SDBM =
+# LDAP
+	$Global::LDAP =
+# END LDAP
+# SQL
+	$Global::DBI =
+# END SQL
+	0;
+
+# SQL
+	# This is for standard DBI
+	eval {
+			die if $ENV{MINIVEND_NODBI};
+			require DBI and $Global::DBI = 1
+	};
+# END SQL
+# LDAP
+	eval {
+		die if $ENV{MINIVEND_NOLDAP};
+		require Net::LDAP and $Global::LDAP = 1
+	};
+# END LDAP
+
+	# Now can use any type of database
+	AUTO: {
+		last AUTO if 
+			(defined $ENV{MINIVEND_DBFILE} and $Global::DB_File = 1);
+		last AUTO if 
+			(defined $ENV{MINIVEND_SDBM} and $Global::SDBM = 1);
+		last AUTO if 
+			(defined $ENV{MINIVEND_NODBM});
+		eval {require GDBM_File and $Global::GDBM = 1};
+		last AUTO if 
+			(defined $ENV{MINIVEND_GDBM} and $Global::GDBM = 1);
+		last AUTO if
+				!   $ENV{MINIVEND_ALLDBM}
+				and $Global::GDBM;
+		eval {require DB_File and $Global::DB_File = 1};
+		last AUTO if
+				!   $ENV{MINIVEND_ALLDBM}
+				and $Global::GDBM || $Global::DB_File;
+		eval {require SDBM_File and $Global::SDBM = 1};
+	}
+
 	if($Global::GDBM) {
 		require Vend::Table::GDBM;
 		import GDBM_File;
 		$Global::GDBM = 1;
+		$Global::Default_database = 'GDBM'
+			unless defined $Global::Default_database;
 	}
-	elsif($Global::DB_File) {
+	if($Global::DB_File) {
 		require Vend::Table::DB_File;
 		import DB_File;
 		$Global::DB_File = 1;
+		$Global::Default_database = 'DB_FILE'
+			unless defined $Global::Default_database;
 	}
-	else {
-		die "Can't use expire without DBM sessions.\n";
-	}
+	if($Global::SDBM) {
+		require Vend::Table::SDBM;
+		import SDBM_File;
+		$Global::SDBM = 1;
+		$Global::Default_database = 'SDBM'
+			unless defined $Global::Default_database;
+	}
+	$Global::Default_database = 'MEMORY'
+			unless defined $Global::Default_database;
+	require Vend::Table::InMemory;
 }
+
+use Vend::Session;
+use Vend::Config qw(get_catalog_default global_config parse_time);
+use Vend::Util qw/errmsg/;
+use Getopt::Std;
+use vars qw/$opt_c $opt_r $opt_e $opt_f $opt_u $opt_v $opt_x/;
 
 sub logGlobal {  }
 sub logError  {  }