Plasma GitLab Archive
Projects Blog Knowledge

Class type Mapred_io.record_reader


class type record_reader = object .. end

method pos_in : int
The ordinal number of the record that will be read next. Numbers start at 0
method input_record : unit -> string
Reads one record, and advances the cursor. May raise End_of_file
method peek_record : unit -> string
Reads the record, but does not advance the cursor, i.e. the next peek_record or input_record will read the line again. May raise End_of_file.
method input_records : string Queue.t -> unit
Reads some records and appends them to the passed queue. It is at least one records read. Will raise End_of_file if the end of the file is reached.
method close_in : unit -> unit
Releases resources (e.g. closes transactions)
method abort : unit -> unit
Drops resources - intended to be used for error cleanup
method to_fd_e : Unix.file_descr -> unit Uq_engines.engine
to_fd_e esys fd: The records are written to fd. The position pos_in is not updated. The length of the records is not checked except for a few records that are crucial for interpreting the boundaries of the bigblocks.

One should only either use to_fd_e or input_record. When mixing both styles, it is undefined which data is read by which method.

While the engine is running no other method must be called.

method to_any_e : (Netsys_mem.memory -> int -> int -> unit Uq_engines.engine) ->
unit Uq_engines.engine
to_any_e dest: like to_fd_e but the data is not written to a file descriptor. Instead, the function dest is called like dest m pos len to output some data.

This is an experimental method! It might not be defined on every record reader.

method plasma_cluster : Plasma_client.plasma_cluster
The PlasmaFS cluster
This web site is published by Informatikbüro Gerd Stolpmann
Powered by Caml