Author image Marvin Humphrey
and 1 contributors


KinoSearch::Index::SegWriter - Write one segment of an index.


The KinoSearch code base has been assimilated by the Apache Lucy project. The "KinoSearch" namespace has been deprecated, but development continues under our new name at our new home:


SegWriter is a conduit through which information fed to Indexer passes. It manages Segment and Inverter, invokes the Analyzer chain, and feeds low level DataWriters such as PostingListWriter and DocWriter.

The sub-components of a SegWriter are determined by Architecture. DataWriter components which are added to the stack of writers via add_writer() have add_inverted_doc() invoked for each document supplied to SegWriter's add_doc().


add_doc( [labeled params] )

Add a document to the segment. Inverts doc, increments the Segment's internal document id, then calls add_inverted_doc(), feeding all sub-writers.


Add a DataWriter to the SegWriter's stack of writers.

register( [labeled params] )

Register a DataWriter component with the SegWriter. (Note that registration simply makes the writer available via fetch(), so you may also want to call add_writer()).

  • api - The name of the DataWriter api which writer implements.

  • component - A DataWriter.


Retrieve a registered component.

  • api - The name of the DataWriter api which the component implements.


KinoSearch::Index::SegWriter isa KinoSearch::Index::DataWriter isa KinoSearch::Object::Obj.


Copyright 2005-2011 Marvin Humphrey

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.