die "E: `$self->{eidx_key}' not in $self->{es}->{topdir}\n";
}
+sub query_approxidate { $_[0]->{es}->query_approxidate($_[1], $_[2]) }
sub mset {
my ($self, $str, $opt) = @_;
if (my $uid_range = $opt{uid_range}) {
my ($beg, $end) = @$uid_range;
my $ibx_id = $self->{-ibx_id} //= _ibx_id($self);
- my $dbh = $self->{es}->{over}->dbh;
+ my $dbh = $self->{es}->over->dbh;
my $sth = $dbh->prepare_cached(<<'', undef, 1);
SELECT MIN(docid) FROM xref3 WHERE ibx_id = ? AND xnum >= ? AND xnum <= ?
$range = 'AND xnum >= ? AND xnum <= ?';
@r = @$r;
}
- my $rows = $self->{es}->over->dbh->
- selectall_arrayref(<<"", undef, $ibx_id, @$docids, @r);
+ return $self->{es}->over->dbh->
+ selectcol_arrayref(<<"", undef, $ibx_id, @$docids, @r);
SELECT xnum FROM xref3 WHERE ibx_id = ? AND docid IN ($qmarks) $range
ORDER BY xnum ASC
- return [ map { $_->[0] } @$rows ];
}
my $rows = $self->{es}->over->dbh->