Lucy::Index::DeletionsWriter3pm
Abstract base class for marking documents as deleted.
Usage
my $polyreader = $del_writer->get_polyreader;my $seg_readers = $polyreader->seg_readers;for my $seg_reader (@$seg_readers) {my $count = $del_writer->seg_del_count( $seg_reader->get_seg_name );...}
Overview
Subclasses of DeletionsWriter provide a low-level mechanism for declaring a document deleted from an index.
Because files in an index are never modified, and because it is not practical to delete entire segments, a DeletionsWriter does not actually remove documents from the index. Instead, it communicates to a search-time companion DeletionsReader which documents are deleted in such a way that it can create a Matcher iterator.
Documents are truly deleted only when the segments which contain them are merged into new ones.
Abstract methods
delete_by_term( [labeled params] )
Delete all documents in the index that index the supplied term.
- •
-
field- The name of an indexed field. (If it is not spec'd as"indexed", an error will occur.)
- •
-
term- The term which identifies docs to be marked as deleted. If"field"is associated with an Analyzer,"term"will be processed automatically (so don't pre-process it yourself).
delete_by_query(query)
Delete all documents in the index that match "query".
- •
-
query- A Query.
updated()
Returns true if there are updates that need to be written.
seg_del_count(seg_name)
Return the number of deletions for a given segment.
- •
-
seg_name- The name of the segment.
Inheritance
Lucy::Index::DeletionsWriter isa Lucy::Index::DataWriter isa Lucy::Object::Obj.
Releases
2 releases since Debian 8 (Jessie); the text changed 1 time.