Hello community,
here is the log from the commit of package perl-BerkeleyDB
checked in at Wed Jan 23 23:27:27 CET 2008.
--------
--- perl-BerkeleyDB/perl-BerkeleyDB.changes 2007-07-25 15:11:30.000000000 +0200
+++ /mounts/work_src_done/STABLE/perl-BerkeleyDB/perl-BerkeleyDB.changes 2008-01-23 15:25:52.000000000 +0100
@@ -1,0 +2,6 @@
+Wed Jan 23 09:42:16 CET 2008 - anicka@suse.cz
+
+- update to 0.33
+ * Added failchk, set_isalive, lock_stat_print & mutex_stat_print.
+
+-------------------------------------------------------------------
Old:
----
BerkeleyDB-0.32.tar.bz2
New:
----
BerkeleyDB-0.33.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-BerkeleyDB.spec ++++++
--- /var/tmp/diff_new_pack.Uh3945/_old 2008-01-23 23:26:26.000000000 +0100
+++ /var/tmp/diff_new_pack.Uh3945/_new 2008-01-23 23:26:26.000000000 +0100
@@ -1,7 +1,7 @@
#
-# spec file for package perl-BerkeleyDB (Version 0.32)
+# spec file for package perl-BerkeleyDB (Version 0.33)
#
-# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
@@ -12,20 +12,20 @@
Name: perl-BerkeleyDB
BuildRequires: db-devel
-URL: http://cpan.org/modules/by-module/BerkeleyDB/
+Url: http://cpan.org/modules/by-module/BerkeleyDB/
License: Artistic License
Group: Development/Libraries/Perl
Requires: perl = %{perl_version}
-Autoreqprov: on
+AutoReqProv: on
Summary: Perl Module for Accessing Berkeley DB Functions
-Version: 0.32
+Version: 0.33
Release: 1
Source: BerkeleyDB-%{version}.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
BerkeleyDB is a module that allows Perl programs to use the facilities
-provided by Berkeley DB version 2 or greater. To use version 1 of
+provided by Berkeley DB version 2 or higher. To use version 1 of
Berkeley DB with Perl, you need the DB_File module.
@@ -61,32 +61,35 @@
/var/adm/perl-modules/perl-BerkeleyDB
%changelog
-* Wed Jul 25 2007 - anicka@suse.cz
+* Wed Jan 23 2008 anicka@suse.cz
+- update to 0.33
+ * Added failchk, set_isalive, lock_stat_print & mutex_stat_print.
+* Wed Jul 25 2007 anicka@suse.cz
- update to 0.32
* Updates to support Berkeley DB 4.6
* Remove all global static data from BerkeleyDB.xs.
-* Thu Oct 19 2006 - anicka@suse.cz
+* Thu Oct 19 2006 anicka@suse.cz
- update to 0.31
* Fixed DB_GET_BOTH.
-* Thu Sep 14 2006 - anicka@suse.cz
+* Thu Sep 14 2006 anicka@suse.cz
- update to 0.30
* Fixed queue test harness for Berkeley DB 4.5 compliance
* Added $env->lsn_reset, $txn->set_timeout,
$env->set_timeout & $env->get_timeout, $txn->set_tx_max,
$txn->get_tx_max
-* Thu Jul 13 2006 - anicka@suse.cz
+* Thu Jul 13 2006 anicka@suse.cz
- update to 0.29
* added support for Berkeley DB 4.4
* many bugfixes
-* Wed Jan 25 2006 - mls@suse.de
+* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
-* Tue Nov 15 2005 - uli@suse.de
+* Tue Nov 15 2005 uli@suse.de
- no test on ARM (unimplemented calls in QEMU)
-* Tue Nov 23 2004 - ro@suse.de
+* Tue Nov 23 2004 ro@suse.de
- update to 0.26
-* Mon Sep 20 2004 - ro@suse.de
+* Mon Sep 20 2004 ro@suse.de
- check for recent kernel also on i386
-* Mon Sep 20 2004 - ro@suse.de
+* Mon Sep 20 2004 ro@suse.de
- require a recent kernel to build (check-build.sh)
-* Wed Aug 25 2004 - choeger@suse.de
+* Wed Aug 25 2004 choeger@suse.de
- new package perl-BerkeleyDB, v0.25
++++++ BerkeleyDB-0.32.tar.bz2 -> BerkeleyDB-0.33.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/BerkeleyDB-0.32/BerkeleyDB.pm new/BerkeleyDB-0.33/BerkeleyDB.pm
--- old/BerkeleyDB-0.32/BerkeleyDB.pm 2007-07-10 14:28:00.000000000 +0200
+++ new/BerkeleyDB-0.33/BerkeleyDB.pm 2008-01-17 23:41:23.000000000 +0100
@@ -2,7 +2,7 @@
package BerkeleyDB;
-# Copyright (c) 1997-2007 Paul Marquess. All rights reserved.
+# Copyright (c) 1997-2008 Paul Marquess. All rights reserved.
# This program is free software; you can redistribute it and/or
# modify it under the same terms as Perl itself.
#
@@ -17,7 +17,7 @@
use vars qw($VERSION @ISA @EXPORT $AUTOLOAD
$use_XSLoader);
-$VERSION = '0.32';
+$VERSION = '0.33';
require Exporter;
#require DynaLoader;
@@ -759,6 +759,7 @@
Config => undef,
Encrypt => undef,
SharedMemKey => undef,
+ ThreadCount => 0,
}, @_) ;
my $errfile = $got->{ErrFile} ;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/BerkeleyDB-0.32/BerkeleyDB.pod new/BerkeleyDB-0.33/BerkeleyDB.pod
--- old/BerkeleyDB-0.32/BerkeleyDB.pod 2007-07-07 01:19:23.000000000 +0200
+++ new/BerkeleyDB-0.33/BerkeleyDB.pod 2007-09-28 22:39:28.000000000 +0200
@@ -227,6 +227,15 @@
Use C<$env-E<gt>get_shm_key($id)> to find out the base segment ID used
once the environment is open.
+=item -ThreadCount
+
+If present, this parameter declares the approximate number of threads that
+will be used in the database environment. This parameter is only necessary
+when the $env->failchk method will be used. It does not actually set the
+maximum number of threads but rather is used to determine memory sizing.
+
+This option requires Berkeley DB 4.4 or better. It is only supported on
+Unix/Linux.
=item -Config
@@ -398,6 +407,48 @@
Use the C<-SharedMemKey> option when opening the environemt to set the
base segment ID.
+=item $env->set_isalive()
+
+Set the callback that determines if the thread of control, identified by
+the pid and tid arguments, is still running. This method should only be
+used in combination with $env->failchk.
+
+This option requires Berkeley DB 4.4 or better.
+
+=item $env->failchk($flags)
+
+The $env->failchk method checks for threads of control (either a true
+thread or a process) that have exited while manipulating Berkeley DB
+library data structures, while holding a logical database lock, or with an
+unresolved transaction (that is, a transaction that was never aborted or
+committed).
+
+If $env->failchk determines a thread of control exited while holding
+database read locks, it will release those locks. If $env->failchk
+determines a thread of control exited with an unresolved transaction, the
+transaction will be aborted.
+
+Applications calling the $env->failchk method must have already called the
+$env->set_isalive method, on the same DB environement, and must have
+configured their database environment using the -ThreadCount flag. The
+ThreadCount flag cannot be used on an environment that wasn't previously
+initialized with it.
+
+This option requires Berkeley DB 4.4 or better.
+
+=item $env->lock_stat_print
+
+Prints locking subsystem statistics.
+
+This option requires Berkeley DB 4.3 or better.
+
+=item $env->mutex_stat_print
+
+Prints mutex subsystem statistics.
+
+This option requires Berkeley DB 4.4 or better.
+
+
=item $env->set_timeout($timeout, $flags)
=item $env->status()
@@ -1928,7 +1979,7 @@
on CPAN (see L for details), in the directory
F.
-The official web site for Berkeley DB is Fhttp://www.sleepycat.com.
+The official web site for Berkeley DB is Fhttp://www.oracle.com/technology/products/berkeley-db/db/index.html.
=head1 COPYRIGHT
@@ -1941,7 +1992,7 @@
copyright and its own license. Please take the time to read it.
Here are few words taken from the Berkeley DB FAQ (at
-Fhttp://www.sleepycat.com) regarding the license:
+Fhttp://www.oracle.com/technology/products/berkeley-db/db/index.html) regarding the license:
Do I have to license DB to use it in Perl scripts?
@@ -1961,7 +2012,6 @@
Paul Marquess E<lt>pmqs@cpan.orgE<gt>.
-Questions about Berkeley DB may be addressed to E<lt>db@sleepycat.comE<gt>.
=head1 SEE ALSO
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/BerkeleyDB-0.32/BerkeleyDB.pod.P new/BerkeleyDB-0.33/BerkeleyDB.pod.P
--- old/BerkeleyDB-0.32/BerkeleyDB.pod.P 2007-07-07 01:19:20.000000000 +0200
+++ new/BerkeleyDB-0.33/BerkeleyDB.pod.P 2007-09-28 22:39:24.000000000 +0200
@@ -227,6 +227,15 @@
Use C<$env-E<gt>get_shm_key($id)> to find out the base segment ID used
once the environment is open.
+=item -ThreadCount
+
+If present, this parameter declares the approximate number of threads that
+will be used in the database environment. This parameter is only necessary
+when the $env->failchk method will be used. It does not actually set the
+maximum number of threads but rather is used to determine memory sizing.
+
+This option requires Berkeley DB 4.4 or better. It is only supported on
+Unix/Linux.
=item -Config
@@ -398,6 +407,48 @@
Use the C<-SharedMemKey> option when opening the environemt to set the
base segment ID.
+=item $env->set_isalive()
+
+Set the callback that determines if the thread of control, identified by
+the pid and tid arguments, is still running. This method should only be
+used in combination with $env->failchk.
+
+This option requires Berkeley DB 4.4 or better.
+
+=item $env->failchk($flags)
+
+The $env->failchk method checks for threads of control (either a true
+thread or a process) that have exited while manipulating Berkeley DB
+library data structures, while holding a logical database lock, or with an
+unresolved transaction (that is, a transaction that was never aborted or
+committed).
+
+If $env->failchk determines a thread of control exited while holding
+database read locks, it will release those locks. If $env->failchk
+determines a thread of control exited with an unresolved transaction, the
+transaction will be aborted.
+
+Applications calling the $env->failchk method must have already called the
+$env->set_isalive method, on the same DB environement, and must have
+configured their database environment using the -ThreadCount flag. The
+ThreadCount flag cannot be used on an environment that wasn't previously
+initialized with it.
+
+This option requires Berkeley DB 4.4 or better.
+
+=item $env->lock_stat_print
+
+Prints locking subsystem statistics.
+
+This option requires Berkeley DB 4.3 or better.
+
+=item $env->mutex_stat_print
+
+Prints mutex subsystem statistics.
+
+This option requires Berkeley DB 4.4 or better.
+
+
=item $env->set_timeout($timeout, $flags)
=item $env->status()
@@ -1695,7 +1746,7 @@
on CPAN (see L for details), in the directory
F.
-The official web site for Berkeley DB is Fhttp://www.sleepycat.com.
+The official web site for Berkeley DB is Fhttp://www.oracle.com/technology/products/berkeley-db/db/index.html.
=head1 COPYRIGHT
@@ -1708,7 +1759,7 @@
copyright and its own license. Please take the time to read it.
Here are few words taken from the Berkeley DB FAQ (at
-Fhttp://www.sleepycat.com) regarding the license:
+Fhttp://www.oracle.com/technology/products/berkeley-db/db/index.html) regarding the license:
Do I have to license DB to use it in Perl scripts?
@@ -1728,7 +1779,6 @@
Paul Marquess E<lt>pmqs@cpan.orgE<gt>.
-Questions about Berkeley DB may be addressed to E<lt>db@sleepycat.comE<gt>.
=head1 SEE ALSO
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/BerkeleyDB-0.32/BerkeleyDB.xs new/BerkeleyDB-0.33/BerkeleyDB.xs
--- old/BerkeleyDB-0.32/BerkeleyDB.xs 2007-07-10 14:28:00.000000000 +0200
+++ new/BerkeleyDB-0.33/BerkeleyDB.xs 2008-01-17 23:42:25.000000000 +0100
@@ -6,7 +6,7 @@
All comments/suggestions/problems are welcome
- Copyright (c) 1997-2007 Paul Marquess. All rights reserved.
+ Copyright (c) 1997-2008 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
@@ -1326,6 +1326,8 @@
db_errcall_cb(const char * db_errpfx, char * buffer)
#endif
{
+ SV * sv;
+
Trace(("In errcall_cb \n")) ;
#if 0
@@ -1344,7 +1346,7 @@
#endif
- SV * sv = perl_get_sv(ERR_BUFF, FALSE) ;
+ sv = perl_get_sv(ERR_BUFF, FALSE) ;
if (sv) {
if (db_errpfx)
sv_setpvf(sv, "%s: %s", db_errpfx, buffer) ;
@@ -1353,6 +1355,18 @@
}
}
+#if defined(AT_LEAST_DB_4_4) && ! defined(_WIN32)
+
+int
+db_isalive_cb(DB_ENV *dbenv, pid_t pid, db_threadid_t tid, u_int32_t flags)
+{
+ bool processAlive = ( kill(pid, 0) == 0 ) || ( errno != ESRCH );
+ return processAlive;
+}
+
+#endif
+
+
static SV *
readHash(HV * hash, char * key)
{
@@ -1952,6 +1966,7 @@
int cachesize = 0 ;
int lk_detect = 0 ;
long shm_key = 0 ;
+ int thread_count = 0 ;
SV * errprefix = NULL;
DB_ENV * env ;
int status ;
@@ -1969,6 +1984,7 @@
SetValue_iv(cachesize, "Cachesize") ;
SetValue_iv(lk_detect, "LockDetect") ;
SetValue_iv(shm_key, "SharedMemKey") ;
+ SetValue_iv(thread_count, "ThreadCount") ;
#ifndef AT_LEAST_DB_3_2
if (setflags)
softCrash("-SetFlags needs Berkeley DB 3.x or better") ;
@@ -1983,6 +1999,14 @@
if (enc_passwd)
softCrash("-Encrypt needs Berkeley DB 4.x or better") ;
#endif /* ! AT_LEAST_DB_4_1 */
+#ifndef _WIN32
+ if (thread_count)
+ softCrash("-ThreadCount not supported on Windows") ;
+#endif /* ! AT_LEAST_DB_4_4 */
+#ifndef AT_LEAST_DB_4_4
+ if (thread_count)
+ softCrash("-ThreadCount needs Berkeley DB 4.4 or better") ;
+#endif /* ! AT_LEAST_DB_4_4 */
Trace(("_db_appinit(config=[%d], home=[%s],errprefix=[%s],flags=[%d]\n",
config, home, errprefix, flags)) ;
#ifdef TRACE
@@ -2112,6 +2136,15 @@
my_db_strerror(status))) ;
}
#endif
+#if defined(AT_LEAST_DB_4_4) && ! defined(_WIN32)
+ if (thread_count && status == 0)
+ {
+ status = env->set_thread_count(env, thread_count);
+ Trace(("ENV->set_thread_count value = %d returned %s\n", thread_count,
+ my_db_strerror(status))) ;
+ }
+#endif
+
if (status == 0)
{
int mode = 0 ;
@@ -2686,6 +2719,77 @@
RETVAL
timeout
+int
+lock_stat_print(env, flags=0)
+ BerkeleyDB::Env env
+ u_int32_t flags
+ INIT:
+ ckActive_Database(env->active) ;
+ CODE:
+#ifndef AT_LEAST_DB_4_3
+ softCrash("$env->lock_stat_print needs Berkeley DB 4.3 or better") ;
+#else
+ RETVAL = env->Status = env->Env->lock_stat_print(env->Env, flags);
+#endif
+ OUTPUT:
+ RETVAL
+
+int
+mutex_stat_print(env, flags=0)
+ BerkeleyDB::Env env
+ u_int32_t flags
+ INIT:
+ ckActive_Database(env->active) ;
+ CODE:
+#ifndef AT_LEAST_DB_4_4
+ softCrash("$env->mutex_stat_print needs Berkeley DB 4.4 or better") ;
+#else
+ RETVAL = env->Status = env->Env->mutex_stat_print(env->Env, flags);
+#endif
+ OUTPUT:
+ RETVAL
+
+int
+failchk(env, flags=0)
+ BerkeleyDB::Env env
+ u_int32_t flags
+ INIT:
+ ckActive_Database(env->active) ;
+ CODE:
+#if ! defined(AT_LEAST_DB_4_4) || defined(_WIN32)
+#ifndef AT_LEAST_DB_4_4
+ softCrash("$env->failchk needs Berkeley DB 4.4 or better") ;
+#endif
+#ifdef _WIN32
+ softCrash("$env->failchk not supported on Windows") ;
+#endif
+#else
+ RETVAL = env->Status = env->Env->failchk(env->Env, flags);
+#endif
+ OUTPUT:
+ RETVAL
+
+int
+set_isalive(env)
+ BerkeleyDB::Env env
+ INIT:
+ ckActive_Database(env->active) ;
+ CODE:
+#if ! defined(AT_LEAST_DB_4_4) || defined(_WIN32)
+#ifndef AT_LEAST_DB_4_4
+ softCrash("$env->set_isalive needs Berkeley DB 4.4 or better") ;
+#endif
+#ifdef _WIN32
+ softCrash("$env->set_isalive not supported on Windows") ;
+#endif
+#else
+ RETVAL = env->Status = env->Env->set_isalive(env->Env, db_isalive_cb);
+#endif
+ OUTPUT:
+ RETVAL
+
+
+
MODULE = BerkeleyDB::Term PACKAGE = BerkeleyDB::Term
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/BerkeleyDB-0.32/Changes new/BerkeleyDB-0.33/Changes
--- old/BerkeleyDB-0.32/Changes 2007-07-10 14:09:18.000000000 +0200
+++ new/BerkeleyDB-0.33/Changes 2008-01-17 23:42:04.000000000 +0100
@@ -1,5 +1,10 @@
Revision history for Perl extension BerkeleyDB.
+0.33 17th January 2008
+
+ * Added failchk, set_isalive, lock_stat_print & mutex_stat_print.
+ Patch provided by Thomas Busch.
+
0.32 10th July 2007
* Updates to support Berkeley DB 4.6
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/BerkeleyDB-0.32/config.in new/BerkeleyDB-0.33/config.in
--- old/BerkeleyDB-0.32/config.in 2007-07-10 14:30:43.000000000 +0200
+++ new/BerkeleyDB-0.33/config.in 2008-01-05 12:51:55.000000000 +0100
@@ -8,8 +8,15 @@
# installed on your system.
#INCLUDE = /usr/local/include
-#INCLUDE = ../..
-INCLUDE = /usr/local/BerkeleyDB/include
+#INCLUDE = /usr/local/BerkeleyDB/include
+#INCLUDE = ./libraries/2.7.5/include
+#INCLUDE = ./libraries/3.0.55/include
+#INCLUDE = ./libraries/3.1.17/include
+#INCLUDE = ./libraries/3.3.11/include
+#INCLUDE = ./libraries/4.1.12/include
+#INCLUDE = ./libraries/4.1.24.NC/include
+#INCLUDE = ./libraries/4.1.25/include
+INCLUDE = ./libraries/4.5.20/include
# 2. Where is libdb?
#
@@ -17,8 +24,17 @@
# installed on your system.
#LIB = /usr/local/lib
-#LIB = ../..
-LIB = /usr/local/BerkeleyDB/lib
+#LIB = /usr/local/BerkeleyDB/lib
+#LIB = ./libraries/2.7.5/lib
+#LIB = ./libraries/3.0.55/lib
+#LIB = ./libraries/3.1.17/lib
+#LIB = ./libraries/3.3.11/lib
+#LIB = ./libraries/4.1.12/lib
+#LIB = ./libraries/4.1.24.NC/lib
+#LIB = ./libraries/4.1.25/lib
+LIB = ./libraries/4.5.20/lib
+
+#LIB = ./libraries/1.85/lib
# 3. Is the library called libdb?
#
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/BerkeleyDB-0.32/META.yml new/BerkeleyDB-0.33/META.yml
--- old/BerkeleyDB-0.32/META.yml 2007-07-10 14:30:59.000000000 +0200
+++ new/BerkeleyDB-0.33/META.yml 2008-01-17 23:43:48.000000000 +0100
@@ -1,13 +1,10 @@
---- #YAML:1.0
-name: BerkeleyDB
-version: 0.32
-abstract: Perl extension for Berkeley DB version 2, 3 or 4
-license: perl
-generated_by: ExtUtils::MakeMaker version 6.34
-distribution_type: module
-requires:
-meta-spec:
- url: http://module-build.sourceforge.net/META-spec-v1.2.html
- version: 1.2
-author:
- - Paul Marquess
+# http://module-build.sourceforge.net/META-spec.html
+#XXXXXXX This is a prototype!!! It will change in the future!!! XXXXX#
+name: BerkeleyDB
+version: 0.33
+version_from: BerkeleyDB.pm
+installdirs: site
+requires:
+
+distribution_type: module
+generated_by: ExtUtils::MakeMaker version 6.17
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/BerkeleyDB-0.32/README new/BerkeleyDB-0.33/README
--- old/BerkeleyDB-0.32/README 2007-07-10 14:09:04.000000000 +0200
+++ new/BerkeleyDB-0.33/README 2008-01-17 23:41:49.000000000 +0100
@@ -1,10 +1,10 @@
BerkeleyDB
- Version 0.32
+ Version 0.33
- 10h July 2007
+ 17h January 2008
- Copyright (c) 1997-2007 Paul Marquess. All rights reserved. This
+ Copyright (c) 1997-2008 Paul Marquess. All rights reserved. This
program is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.
@@ -38,11 +38,12 @@
* Berkeley DB Version 2.6.4 or greater
- The official web site for Berkeley DB is http://www.sleepycat.com
+ The official web site for Berkeley DB is
+
+ http://www.oracle.com/technology/products/berkeley-db/db/index.html
The latest version of Berkeley DB is always available there. It
- is recommended that you use the most recent version available at
- the Sleepycat site.
+ is recommended that you use the most recent version available.
The one exception to this advice is where you want to use BerkeleyDB
to access database files created by a third-party application,
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org