Changeset 932

Show
Ignore:
Timestamp:
05/01/07 22:05:42 (3 years ago)
Author:
bradfitz
Message:

convert iostat worker over to be a ChildProcess:: subclass

Location:
trunk/server
Files:
1 added
1 removed
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/server/Makefile.PL

    r931 r932  
    1212use ExtUtils::MakeMaker; 
    1313 
    14 my $exefiles = ["mogstored", "mogstored-iostat", "mogilefsd", "mogdbsetup", "mogautomount"]; 
    15 $exefiles = ["mogstored", "mogstored-iostat"] if exists $ENV{DANGABUILD_MOGSTOREDONLY}; 
     14my $exefiles = ["mogstored", "mogilefsd", "mogdbsetup", "mogautomount"]; 
     15$exefiles = ["mogstored"] if exists $ENV{DANGABUILD_MOGSTOREDONLY}; 
    1616$exefiles = ["mogilefsd"] if exists $ENV{DANGABUILD_MOGILEFSDONLY}; 
    1717 
     
    2626        'Perlbal'          => '1.53',  # Future: make Perlbal optional, for running mogstored 
    2727                                       # in only-monitor/usage-writeout mode. 
    28         'Sys::Syslog'      => 0,, 
     28        'Sys::Syslog'      => 0, 
    2929        'Sys::Syscall'     => '0.22', 
    3030        'Getopt::Long'     => 0, 
    3131        'Symbol'           => 0, 
    3232        'Net::Netmask'     => 0, 
    33         'Gearman::Server'  => 1.06, 
     33        'Gearman::Server'  => 1.07, 
    3434        'Gearman::Client::Async' => 0.93, 
    3535        fields            => 0, 
  • trunk/server/mogstored

    r931 r932  
    267267    } 
    268268 
    269     close STDIN; 
    270     close STDOUT; 
    271     close STDERR; 
    272  
    273     # We may not be able to see errors beyond this point 
    274     open STDIN, '<', '/dev/null'       or die "Couldn't open STDIN for reading from /dev/null"; 
    275     open STDOUT, '>&', $iostat_pipe_w  or die "Couldn't dup pipe for use as STDOUT"; 
    276     open STDERR, '>', '/dev/null'      or die "Couldn't open STDOUT for writing to /dev/null"; 
    277  
    278     $ENV{MOG_DOCROOT} = Perlbal->service('mogstored')->{docroot}; 
    279     my $exe = $selfexe; 
    280     $exe =~ s/mogstored$/mogstored-iostat/ or die "$0 not what we were expecting!"; 
    281     exec $exe; 
    282 } 
     269    require Mogstored::ChildProcess::IOStat; 
     270    my $class = "Mogstored::ChildProcess::IOStat"; 
     271    $class->pre_exec_init; 
     272    $class->exec; 
     273} 
     274 
     275sub Mogstored::get_iostat_writer_pipe { $iostat_pipe_w } 
    283276 
    284277# (runs in parent event-loop process) 
     
    312305} 
    313306 
    314  
    315307# Local Variables: 
    316308# mode: perl