xapian-core  1.4.25
Classes | Namespaces | Functions
glass_compact.cc File Reference

Compact a glass database, or merge and compact several. More...

#include <config.h>
#include "xapian/compactor.h"
#include "xapian/constants.h"
#include "xapian/error.h"
#include "xapian/types.h"
#include "autoptr.h"
#include <algorithm>
#include <queue>
#include <cerrno>
#include <cstdio>
#include "backends/flint_lock.h"
#include "glass_database.h"
#include "glass_defs.h"
#include "glass_table.h"
#include "glass_cursor.h"
#include "glass_version.h"
#include "filetests.h"
#include "internaltypes.h"
#include "pack.h"
#include "backends/valuestats.h"
#include "../byte_length_strings.h"
#include "../prefix_compressed_strings.h"
+ Include dependency graph for glass_compact.cc:

Go to the source code of this file.

Classes

class  GlassCompact::PostlistCursor
 
class  GlassCompact::PostlistCursorGt
 
struct  GlassCompact::MergeCursor
 
struct  GlassCompact::CursorGt
 
class  GlassCompact::PositionCursor
 
class  GlassCompact::PositionCursorGt
 

Namespaces

 GlassCompact
 

Functions

static bool GlassCompact::is_user_metadata_key (const string &key)
 
static bool GlassCompact::is_valuestats_key (const string &key)
 
static bool GlassCompact::is_valuechunk_key (const string &key)
 
static bool GlassCompact::is_doclenchunk_key (const string &key)
 
static string GlassCompact::encode_valuestats (Xapian::doccount freq, const string &lbound, const string &ubound)
 
static void GlassCompact::merge_postlists (Xapian::Compactor *compactor, GlassTable *out, vector< Xapian::docid >::const_iterator offset, vector< GlassTable *>::const_iterator b, vector< GlassTable *>::const_iterator e)
 
static void GlassCompact::merge_spellings (GlassTable *out, vector< GlassTable *>::const_iterator b, vector< GlassTable *>::const_iterator e)
 
static void GlassCompact::merge_synonyms (GlassTable *out, vector< GlassTable *>::const_iterator b, vector< GlassTable *>::const_iterator e)
 
static void GlassCompact::multimerge_postlists (Xapian::Compactor *compactor, GlassTable *out, const char *tmpdir, vector< GlassTable *> tmp, vector< Xapian::docid > off)
 
static void GlassCompact::merge_positions (GlassTable *out, const vector< GlassTable *> &inputs, const vector< Xapian::docid > &offset)
 
static void GlassCompact::merge_docid_keyed (GlassTable *out, const vector< GlassTable *> &inputs, const vector< Xapian::docid > &offset)
 

Detailed Description

Compact a glass database, or merge and compact several.

Definition in file glass_compact.cc.