Signed-off-by: Adam Tkac <atkac@redhat.com>f38
parent
5be71f9381
commit
acf6c396c2
@ -0,0 +1,49 @@
|
||||
From 89c8a661e61bbf0fb1d1e5050262390649e13f2a Mon Sep 17 00:00:00 2001
|
||||
From: Niko Tyni <ntyni@debian.org>
|
||||
Date: Mon, 23 Aug 2010 08:15:15 +0300
|
||||
Subject: [PATCH] Don't clean temporary files in child processes
|
||||
|
||||
As of SQLite 3.7.0, write locks try to stat() the database
|
||||
file and fail with a 'Disk I/O error' if it is missing. This
|
||||
breaks those tests that fork child processes (namely 08_busy.t
|
||||
and t/28_schemachange.t) because the child process removes
|
||||
the database file in the END block.
|
||||
|
||||
The fix is to disable the clean() function for child processes.
|
||||
|
||||
See <http://bugs.debian.org/591111>
|
||||
---
|
||||
t/lib/Test.pm | 3 +++
|
||||
1 files changed, 3 insertions(+), 0 deletions(-)
|
||||
|
||||
diff --git a/t/lib/Test.pm b/t/lib/Test.pm
|
||||
index 80e50ce..8d1be25 100644
|
||||
--- a/t/lib/Test.pm
|
||||
+++ b/t/lib/Test.pm
|
||||
@@ -7,6 +7,7 @@ use Exporter ();
|
||||
use File::Spec ();
|
||||
use Test::More ();
|
||||
|
||||
+my $parent;
|
||||
use vars qw{$VERSION @ISA @EXPORT @CALL_FUNCS};
|
||||
BEGIN {
|
||||
$VERSION = '1.29';
|
||||
@@ -15,6 +16,7 @@ BEGIN {
|
||||
|
||||
# Allow tests to load modules bundled in /inc
|
||||
unshift @INC, 'inc';
|
||||
+ $parent = $$;
|
||||
}
|
||||
|
||||
# Always load the DBI module
|
||||
@@ -22,6 +24,7 @@ use DBI ();
|
||||
|
||||
# Delete temporary files
|
||||
sub clean {
|
||||
+ return if $$ != $parent;
|
||||
unlink( 'foo' );
|
||||
unlink( 'foo-journal' );
|
||||
}
|
||||
--
|
||||
1.7.1
|
||||
|
Loading…
Reference in new issue