#include <xapian/error.h>
#include <xapian/visibility.h>
#include <algorithm>
#include <string>
#include "flint_types.h"
#include "flint_btreebase.h"
#include "flint_btreeutil.h"
#include "flint_cursor.h"
#include "noreturn.h"
#include "stringutils.h"
#include "utils.h"
#include <zlib.h>
Include dependency graph for flint_table.h:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Classes | |
class | Key_ |
class | Item_base_< T > |
class | Item_ |
class | Item_wr_ |
class | FlintTable |
Class managing a Btree table in a Flint database. More... | |
Defines | |
#define | DONT_COMPRESS -1 |
#define | FLINT_BTREE_MAX_KEY_LEN 252 |
The largest possible value of a key_len. | |
#define | BYTES_PER_BLOCK_NUMBER 4 |
#define | K1 1 |
#define | I2 2 |
#define | D2 2 |
#define | C2 2 |
#define | getK(p, c) getint1(p, c) |
#define | setD(p, c, x) setint2(p, c, x) |
#define | BTREE_CURSOR_LEVELS 10 |
#define DONT_COMPRESS -1 |
Definition at line 43 of file flint_table.h.
Referenced by FlintTable::add(), main(), merge_docid_keyed(), merge_spellings(), and merge_synonyms().
#define FLINT_BTREE_MAX_KEY_LEN 252 |
The largest possible value of a key_len.
This gives the upper limit of the size of a key that may be stored in the B-tree (252 bytes with the present implementation).
Definition at line 50 of file flint_table.h.
Referenced by FlintTable::del(), FlintCursor::find_entry(), FlintCursor::find_entry_ge(), FlintTable::find_tag(), Item_wr_::form_key(), FlintTable::get_exact_entry(), and FlintTable::key_exists().
#define BYTES_PER_BLOCK_NUMBER 4 |
Definition at line 53 of file flint_table.h.
Referenced by Item_base< const byte * >::block_given_by(), Item_base_< byte * >::block_given_by(), Item_wr::set_block_given_by(), and Item_wr_::set_block_given_by().
#define K1 1 |
Definition at line 65 of file flint_table.h.
Referenced by Btree::add(), FlintTable::add(), Btree::enter_key(), FlintTable::enter_key(), Item_wr::fake_root_item(), Item_wr_::fake_root_item(), Item_wr::form_key(), Item_wr_::form_key(), Item_wr::form_null_key(), Item_wr_::form_null_key(), Key::length(), Key_::length(), Key::operator<(), Key_::operator<(), Key::operator==(), Key_::operator==(), Key::operator[](), Key_::operator[](), Key::read(), Key_::read(), Btree::read_root(), FlintTable::read_root(), Btree::read_tag(), FlintTable::read_tag(), Item_wr::set_key_and_block(), and Item_wr_::set_key_and_block().
#define I2 2 |
Definition at line 66 of file flint_table.h.
Referenced by Btree::add(), FlintTable::add(), Item_base< const byte * >::append_chunk(), Item_base_< byte * >::append_chunk(), Item_base< const byte * >::component_of(), Item_base_< byte * >::component_of(), Item_base< const byte * >::components_of(), Item_base_< byte * >::components_of(), Btree::enter_key(), FlintTable::enter_key(), Item_wr::fake_root_item(), Item_wr_::fake_root_item(), Item_wr::form_key(), Item_wr_::form_key(), Item_wr::form_null_key(), Item_wr_::form_null_key(), Item_base< const byte * >::key(), Item_base_< byte * >::key(), Btree::read_root(), FlintTable::read_root(), Btree::read_tag(), FlintTable::read_tag(), Item_wr::set_component_of(), Item_wr_::set_component_of(), Item_wr::set_components_of(), Item_wr_::set_components_of(), Item_wr::set_key_and_block(), Item_wr_::set_key_and_block(), Item_wr::set_key_len(), and Item_wr_::set_key_len().
#define D2 2 |
Definition at line 67 of file flint_table.h.
Referenced by Btree::add(), FlintTable::add(), Btree::add_item(), FlintTable::add_item(), Btree::add_item_to_block(), FlintTable::add_item_to_block(), Btree::add_kt(), FlintTable::add_kt(), BtreeCheck::block_check(), Btree::compact(), FlintTable::compact(), Btree::delete_item(), FlintTable::delete_item(), Btree::enter_key(), FlintTable::enter_key(), Btree::find_in_block(), FlintTable::find_in_block(), Btree::mid_point(), FlintTable::mid_point(), Btree::next_default(), FlintTable::next_default(), Btree::next_for_sequential(), FlintTable::next_for_sequential(), Btree::prev_default(), FlintTable::prev_default(), Btree::prev_for_sequential(), FlintTable::prev_for_sequential(), Btree::read_root(), FlintTable::read_root(), BtreeCheck::report_block(), BtreeCheck::report_block_full(), Btree::set_max_item_size(), and FlintTable::set_max_item_size().
#define C2 2 |
Definition at line 68 of file flint_table.h.
Referenced by Btree::add(), FlintTable::add(), Item_base< const byte * >::append_chunk(), Item_base_< byte * >::append_chunk(), Item_base< const byte * >::component_of(), Item_base_< byte * >::component_of(), Btree::enter_key(), FlintTable::enter_key(), Item_wr::fake_root_item(), Item_wr_::fake_root_item(), Item_wr::form_key(), Item_wr_::form_key(), Key::length(), Key_::length(), Key::operator<(), Key_::operator<(), Key::operator==(), Key_::operator==(), Btree::read_root(), FlintTable::read_root(), Btree::read_tag(), FlintTable::read_tag(), Item_wr::set_component_of(), Item_wr_::set_component_of(), Item_wr::set_key_and_block(), and Item_wr_::set_key_and_block().
#define getK | ( | p, | |||
c | ) | getint1(p, c) |
Definition at line 72 of file flint_table.h.
Referenced by Item_base_< byte * >::append_chunk(), Item_base_< byte * >::component_of(), Item_base_< byte * >::components_of(), Key_::length(), Item_wr_::set_component_of(), and Item_wr_::set_components_of().
#define setD | ( | p, | |||
c, | |||||
x | ) | setint2(p, c, x) |
Definition at line 73 of file flint_table.h.
Referenced by FlintTable::add_item_to_block(), FlintTable::add_kt(), FlintTable::compact(), and FlintTable::read_root().
#define BTREE_CURSOR_LEVELS 10 |
Definition at line 237 of file flint_table.h.
Referenced by Btree::commit(), FlintTable::commit(), Btree::split_root(), and FlintTable::split_root().