Changeset 151

Show
Ignore:
Timestamp:
05/23/07 18:22:57 (3 years ago)
Author:
bradfitz
Message:

start of tempfile leak auditing, moving all tempfile creation into Brackup::Util wrapper, which currently does nothing.

Location:
trunk
Files:
9 modified

Legend:

Unmodified
Added
Removed
  • trunk/MANIFEST

    r134 r151  
    3131lib/Brackup/Target/Filesystem.pm 
    3232lib/Brackup/Test.pm 
     33lib/Brackup/Util.pm 
    3334Makefile.PL 
    3435MANIFEST                        This list of files 
  • trunk/TODO

    r150 r151  
    3636-- ionice stuff.  network nice stuff. 
    3737 
    38 -- leaking 3 /tmp files after each run?x 
     38-- leaking 3 /tmp files after each run? 
    3939 
    4040-- make tests pass without 'noatime' mount option 
  • trunk/lib/Brackup/GPGProcess.pm

    r107 r151  
    22use strict; 
    33use warnings; 
    4 use File::Temp qw(tempfile); 
     4use Brackup::Util qw(tempfile); 
    55use POSIX qw(_exit); 
    66 
     
    88    my ($class, $pchunk) = @_; 
    99 
    10     # FIXME: let users control where their temp files go? 
    1110    my ($destfh, $destfn) = tempfile(); 
    1211 
  • trunk/lib/Brackup/Restore.pm

    r149 r151  
    44use Carp qw(croak); 
    55use Digest::SHA1; 
    6 use File::Temp qw(tempfile); 
     6use Brackup::Util qw(tempfile); 
    77 
    88sub new { 
  • trunk/lib/Brackup/Root.pm

    r134 r151  
    55use File::Find; 
    66use Brackup::DigestCache; 
    7 use File::Temp qw(tempfile); 
     7use Brackup::Util qw(tempfile); 
    88use IPC::Open2; 
    99use Symbol; 
     
    204204    $data = \$data unless ref $data; 
    205205 
    206     # FIXME: let users control where their temp files go? 
    207206    my ($tmpfh, $tmpfn) = tempfile(); 
    208207    print $tmpfh $$data 
  • trunk/lib/Brackup/Test.pm

    r134 r151  
    99use Test::More; 
    1010use FindBin qw($Bin); 
    11 use File::Temp qw(tempdir tempfile); 
     11use Brackup::Util qw(tempdir tempfile); 
    1212use File::Find; 
    1313use File::stat (); 
     
    2323    if ($$ == $par_pid) { 
    2424        my $rv = unlink @to_unlink; 
     25        temp_audit(); 
    2526    } 
     27} 
     28 
     29my $start_temps; 
     30sub num_temps { 
     31    opendir(my $dh, "/tmp") or return 0; 
     32    my @items = readdir($dh); 
     33    return scalar @items; 
     34} 
     35sub temp_audit { 
     36    my $now = num_temps(); 
     37    $start_temps ||= $now; 
     38    unless ($now == $start_temps) { 
     39        print "# temp files changed: $start_temps -> $now\n"; 
     40    } 
     41} 
     42 
     43BEGIN { 
     44    temp_audit(); 
    2645} 
    2746 
     
    3251    die if %opts; 
    3352 
     53    temp_audit(); 
    3454    my $initer = shift; 
    3555 
     
    7595    } 
    7696    ok(-s $meta_filename, "backup file has size"); 
     97 
     98    temp_audit(); 
    7799    return wantarray ? ($meta_filename, $backup) : $meta_filename; 
    78100} 
     
    81103    my $backup_file = shift; 
    82104    my $restore_dir = tempdir( CLEANUP => 1 ); 
     105    temp_audit(); 
    83106    ok_dir_empty($restore_dir); 
    84107 
     
    91114    ok(eval { $restore->restore; }, "did the restore") 
    92115        or die "restore failed: $@"; 
     116    temp_audit(); 
    93117    return $restore_dir; 
    94118} 
  • trunk/t/01-backup.t

    r38 r151  
    66use Brackup::Test; 
    77use FindBin qw($Bin); 
    8 use File::Temp qw(tempdir tempfile); 
     8use Brackup::Util qw(tempfile); 
    99 
    1010############### Backup 
  • trunk/t/02-gpg.t

    r42 r151  
    66use Brackup::Test; 
    77use FindBin qw($Bin); 
    8 use File::Temp qw(tempdir tempfile); 
     8use Brackup::Util qw(tempfile); 
    99 
    1010############### Backup 
  • trunk/t/03-combine-little-files.t

    r134 r151  
    66use Brackup::Test; 
    77use FindBin qw($Bin); 
    8 use File::Temp qw(tempdir tempfile); 
     8use Brackup::Util qw(tempfile); 
    99 
    1010############### Backup