AnyData

 view release on metacpan or  search on metacpan

lib/AnyData.pm  view on Meta::CPAN

    #    my @callA = caller 2;
    #    my @callB = caller 3;
    #    return if $callA[3] =~ /DBD/;
    #    return if $callB[3] and $callB[3] =~ /SQL::Statement/;
    #    return if $self->{parser}->{export_on_close};
    #print "PACKING";
    my $bak_file = $self->{storage}->get_file_name . '.bak';
    my $bak = adTable( 'Text', $bak_file, 'o' );
    my $bak_fh = $bak->{storage}->get_file_handle;
    my $fh     = $self->{storage}->get_file_handle;
    die "Can't pack to backup $!" unless $fh and $bak_fh;
    # $self->seek_first_record;
    $fh->seek(0,0) || die $!;
    #$bak_fh->seek(0,0) || die $!;
#    while (my $line = $self->get_record) {
#        next if $self->is_deleted($line);
    while (my $line = $self->get_undeleted_record) {
        my $tmpstr = $bak->{parser}->write_fields($line)
                   . $self->{parser}->{record_sep};
        $bak_fh->write($tmpstr,length $tmpstr);
    }



( run in 0.486 second using v1.01-cache-2.11-cpan-49f99fa48dc )