/[wait]/trunk/lib/WAIT/InvertedIndex.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/lib/WAIT/InvertedIndex.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 115 by dpavlin, Tue Jul 13 17:41:12 2004 UTC revision 116 by dpavlin, Wed Jul 14 09:48:26 2004 UTC
# Line 52  sub new { Line 52  sub new {
52    my %parm = @_;    my %parm = @_;
53    my $self = {};    my $self = {};
54    
55    for my $x (qw(file attr subname env maindbfile tablename)) {    for my $x (qw(path attr subname env maindbfile tablename)) {
56      $self->{$x}     = $parm{$x}     or croak "No $x specified";      $self->{$x}     = $parm{$x}     or confess "No $x specified";
57    }    }
58    
59    $self->{filter}   = $parm{filter};    $self->{filter}   = $parm{filter};
# Line 151  sub _filtergen { Line 151  sub _filtergen {
151  sub drop {  sub drop {
152    my $self = shift;    my $self = shift;
153    if ((caller)[0] eq 'WAIT::Table') { # Table knows about this    if ((caller)[0] eq 'WAIT::Table') { # Table knows about this
154      my $file = $self->{file};      my $path = $self->{path};
155    
156      ! (!-e $file or unlink $file);  #    ! (!-e $path or unlink $path);
157         warn "DEBUG: fix drop index!";
158    } else {                              # notify our database    } else {                              # notify our database
159      croak ref($self)."::drop called directly";      confess ref($self)."::drop called directly";
160    }    }
161  }  }
162    
163  sub open {  sub open {
164    my $self = shift;    my $self = shift;
165    my $file = $self->{file};    my $path = $self->{path};
166    
167    if (defined $self->{dbh}) {    if (defined $self->{dbh}) {
168      $self->{dbh};      $self->{dbh};
# Line 171  sub open { Line 172  sub open {
172      my $flags;      my $flags;
173      if ($self->{mode} & O_RDWR) {      if ($self->{mode} & O_RDWR) {
174        $flags = DB_CREATE; # | DB_INIT_MPOOL | DB_PRIVATE | DB_INIT_CDB;        $flags = DB_CREATE; # | DB_INIT_MPOOL | DB_PRIVATE | DB_INIT_CDB;
175        warn "Flags on inverted $file set to 'writing'";        #warn "DEBUG: Flags on inverted $path set to 'writing'\n";
176      } else {      } else {
177        $flags = DB_RDONLY;        $flags = DB_RDONLY;
178        # warn "Flags on inverted $file set to 'readonly'";        #warn "DEBUG: Flags on inverted $path set to 'readonly'\n";
179      }      }
180      my $filename = $self->maindbfile or die;      my $filename = $self->maindbfile or die;
181      my $subname  = join("/",$self->tablename || die,$self->subname || die);      my $subname  = join("/",$self->tablename || die,$self->subname || die);
182      my $env = $self->{env} || "[undef]";      my $env = $self->{env} || "[undef]";
183      $self->{dbh} = tie(%{$self->{db}}, 'BerkeleyDB::Btree',      $self->{dbh} = tie(%{$self->{db}}, 'BerkeleyDB::Btree',
184                         # Filename => $file,                         # Filename => $path,
185                         Filename => $filename,                         Filename => $filename,
186                         $self->{env} ? (Env  => $self->{env}) : (),                         $self->{env} ? (Env  => $self->{env}) : (),
187                         Subname => $subname,                         Subname => $subname,
# Line 765  sub close { Line 766  sub close {
766      $self->sync;      $self->sync;
767      delete $self->{dbh};      delete $self->{dbh};
768      untie %{$self->{db}};      untie %{$self->{db}};
769      for my $att (qw(db func cache cached cdict file maindbfile)) {      for my $att (qw(db func cache cached cdict path maindbfile)) {
770        delete $self->{$att};        delete $self->{$att};
771      }      }
772      for my $att (qw(pfunc ifunc xfunc)) {      for my $att (qw(pfunc ifunc xfunc)) {

Legend:
Removed from v.115  
changed lines
  Added in v.116

  ViewVC Help
Powered by ViewVC 1.1.26