0.9.8.10
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Files | Namespaces | Classes | Macros | Typedefs | Enumerations | Functions | Variables
Common

General purpose utility library. More...

Files

file  System.h
 Retrieves system information (hardware, installation directory, etc)
 

Namespaces

 Hypertable::Error
 
 Hypertable::Logger::Priority
 Output priorities modelled after syslog.
 
 Hypertable::Property
 
 Hypertable::Config
 
 Hypertable::ThisThread
 

Classes

struct  Hypertable::AllocatorBase< T >
 Base classes for all Allocator classes. More...
 
struct  Hypertable::AllocatorBase< void >
 Disallow AllocatorBase for the type 'void' by generating a compiler error if it's used. More...
 
class  Hypertable::ArenaAllocatorBase< T, ArenaT >
 Specialized Allocator class using a Memory Arena which manages the allocated memory; see PageArenaAllocator.h for an actual implementation. More...
 
class  Hypertable::Barrier
 A Barrier to block execution of code. More...
 
class  Hypertable::Barrier::ScopedActivator
 A helper class to put up a barrier when entering a scope and take it down when leaving the scope. More...
 
class  Hypertable::Base64
 Provides base64 encoding and decoding functions. More...
 
class  Hypertable::BlobHashSet< TraitsT >
 A HashSet for storing and looking up blobs efficiently. More...
 
struct  Hypertable::Blob
 A Blob structure holds a data pointer and a size. More...
 
struct  Hypertable::BlobHashTraits< HashFunT >
 Traits for BlobHashSet Hash function default to MurmurHash2 for speed and mix. More...
 
struct  Hypertable::BlobHashTraits< HashFunT >::hasher
 
struct  Hypertable::BlobHashTraits< HashFunT >::key_equal
 
class  Hypertable::BasicBloomFilter< HasherT >
 A space-efficent probabilistic set for membership test, false postives are possible, but false negatives are not. More...
 
class  Hypertable::BasicBloomFilterWithChecksum< HasherT >
 A space-efficent probabilistic set for membership test, false postives are possible, but false negatives are not. More...
 
class  Hypertable::ByteString
 A class managing one or more serializable ByteStrings. More...
 
class  Hypertable::ClusterDefinition::ClusterDefinition
 Represents a cluster definition. More...
 
struct  Hypertable::Config::Policy
 Interface and base of config policy. More...
 
struct  Hypertable::Config::DefaultPolicy
 Default init policy. More...
 
struct  Hypertable::Config::Cons< CarT, CdrT >
 Helpers to compose init policies; allow to combine two policies into one. More...
 
struct  Hypertable::Config::NullPolicy
 
struct  Hypertable::Config::Cons< NullPolicy, PolicyT >
 
struct  Hypertable::Config::Join< PolicyListT >
 
class  Hypertable::ConsoleOutputSquelcher
 Temporarily redirects stdout and stderr to /dev/null. More...
 
class  Hypertable::Cronolog
 Time based rotating log. More...
 
struct  Hypertable::crontab_entry
 Binary representation of crontab spec. More...
 
class  Hypertable::Crontab
 Tracks timing of periodic events. More...
 
class  Hypertable::Crypto
 Provides cryptographic functions. More...
 
class  Hypertable::CstrHashMap< DataT, TraitsT >
 A hash map for storing and lookup char * strings efficiently. More...
 
struct  Hypertable::CstrHashTraits< HashT >
 Traits for CstrHashMap/Set. More...
 
struct  Hypertable::CstrCaseHashTraits
 
class  Hypertable::directory_entry< _Key, _Tp >
 
class  Hypertable::__directory_node_internal< _Value, _Compare, _Allocator >
 
class  Hypertable::__directory_node_internal< _Value, _Compare, _Allocator >::pointer_compare
 
class  Hypertable::__directory_iterator< _Tp, _NodePtr, _DiffType >
 
class  Hypertable::__directory_iterator< _Tp, _NodePtr, _DiffType >::__subdirectory_iterator
 
class  Hypertable::directory< _Key, _Tp, _Compare, _Allocator >
 Directory container class. More...
 
class  Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::value_compare
 Ordering relation on value_type. More...
 
class  Hypertable::DiscreteRandomGenerator
 Generates samples from a discrete probability distribution in the range [0, max_val] by transforming a uniform [0, 1] distribution into the desired distribution. More...
 
class  Hypertable::DiscreteRandomGeneratorFactory
 Static factory class for discrete random generators. More...
 
class  Hypertable::DiscreteRandomGeneratorUniform
 Generate samples from Uniform distribution. More...
 
class  Hypertable::DiscreteRandomGeneratorZipf
 Generate samples from Zipf distribution http://en.wikipedia.org/wiki/Zipf%27s_law. More...
 
class  Hypertable::DynamicBuffer
 A dynamic, resizable and reference counted memory buffer. More...
 
struct  Hypertable::ExceptionMessageRenderer
 Helper class to render an exception message a la IO manipulators. More...
 
struct  Hypertable::ExceptionMessagesRenderer
 Helper class to render an exception message a la IO manipulators. More...
 
class  Hypertable::Exception
 This is a generic exception class for Hypertable. More...
 
class  Hypertable::FailureInducer
 
struct  Hypertable::FailureInducer::failure_inducer_state
 Internal structure to store a single failure setting. More...
 
class  Hypertable::Filesystem
 Abstract base class for a filesystem. More...
 
class  Hypertable::Filesystem::Dirent
 Directory entry. More...
 
class  Hypertable::FileUtils
 The FileUtils class provides static functions to easily access and handle files and the file system. More...
 
class  Hypertable::FixedStreamBuf
 A simple streambuf with fixed size buffer. More...
 
class  Hypertable::FixedOstream
 Output stream using a fixed buffer. More...
 
class  Hypertable::FixedIstream
 Input stream using a fixed buffer. More...
 
class  Hypertable::FlyweightString
 The Flyweight string set stores duplicate strings efficiently. More...
 
class  Hypertable::HostSpecification
 Converts host specification pattern to list of host names. More...
 
class  Hypertable::InteractiveCommand
 Abstract base class for simple interactive shell commands. More...
 
class  Hypertable::Logger::LogWriter
 The LogWriter class writes to stdout. More...
 
struct  md5_context
 MD5 context structure; this structure is used to store the internal state of the md5 algorithm. More...
 
class  Hypertable::Metrics
 Metrics interface. More...
 
class  Hypertable::MetricsCollector
 Abstract metrics collector. More...
 
class  Hypertable::MetricsCollectorGanglia
 Ganglia metrics collector. More...
 
class  Hypertable::MetricsProcess
 Computes and publishes general process metrics. More...
 
struct  Hypertable::MurmurHash2
 Helper structure using overloaded operator() to calculate hashes of various input types. More...
 
class  Hypertable::MutexWithStatistics
 Mutex that maintains wait threads count. More...
 
struct  Hypertable::DefaultPageAllocator
 A memory allocator using std::malloc() and std::free(). More...
 
class  Hypertable::PageArena< CharT, PageAllocatorT >
 The PageArena allocator is simple and fast, avoiding individual mallocs/frees. More...
 
struct  Hypertable::PageArena< CharT, PageAllocatorT >::Page
 A structure to manage a single memory page which is used to allocate smaller memory chunks. More...
 
struct  Hypertable::PageArena< CharT, PageAllocatorT >::LtPageRemain
 predicate which sorts by size More...
 
struct  Hypertable::PageArena< CharT, PageAllocatorT >::TinyBuffer
 A small buffer (128 bytes) to satisfy very small memory allocations without allocating a page from the heap. More...
 
struct  Hypertable::PageArenaAllocator< T, ArenaT >
 The PageArenaAllocator is a STL allocator based on PageArena. More...
 
struct  Hypertable::PageArenaAllocator< T, ArenaT >::rebind< U >
 
class  Hypertable::Path
 Compatibility class for boost::filesystem::path. More...
 
class  Hypertable::Properties
 Manages a collection of program options. More...
 
class  Hypertable::SubProperties
 Helper class to access parts of the properties. More...
 
class  Hypertable::Random
 Convenience interface for random number and data generation. More...
 
class  Hypertable::Regex
 Provides utility functions for regular expressions. More...
 
class  Hypertable::ScopeGuardImplBase
 Base class for the ScopeGuards. More...
 
class  Hypertable::ScopeGuardImpl0< FunT >
 ScopeGuard implementation for free function with no paramter. More...
 
class  Hypertable::ScopeGuardImpl1< FunT, P1T >
 ScopeGuard implementation for free function with 1 parameter. More...
 
class  Hypertable::ScopeGuardImpl2< FunT, P1T, P2T >
 ScopeGuard implementation for free function with 2 parameters. More...
 
class  Hypertable::ScopeGuardImpl3< FunT, P1T, P2T, P3T >
 ScopeGuard implementation for free function with 3 parameters. More...
 
class  Hypertable::ObjScopeGuardImpl0< ObjT, MethodT >
 ScopeGuard implementation for method with no parameter. More...
 
class  Hypertable::ObjScopeGuardImpl1< ObjT, MethodT, P1T >
 ScopeGuard implementation for method with 1 parameter. More...
 
class  Hypertable::ObjScopeGuardImpl2< ObjT, MethodT, P1T, P2T >
 ScopeGuard implementation for method with 2 parameters. More...
 
class  Hypertable::RefHolder< T >
 Helper class used to pass a parameter to the ScopeGuard by reference. More...
 
class  Hypertable::Serializable
 Mixin class that provides a standard serialization interface. More...
 
class  Hypertable::ServerLauncher
 Launches external commands and redirects their output to a file; kills the external process when going out of scope. More...
 
class  Hypertable::SleepWakeNotifier
 Delivers sleep and wakeup notifications. More...
 
class  Hypertable::SockAddrHash
 Hash functor class for InetAddr. More...
 
struct  Hypertable::SockAddrEqual
 Equality predicate functor class for InetAddr. More...
 
class  Hypertable::SockAddrMap< TypeT, addr >
 Unordered map specialization for InetAddr keys. More...
 
class  Hypertable::StaticBuffer
 A memory buffer of static size. More...
 
class  Hypertable::StatsSerializable
 Abstract base class for managing serialized statistics. More...
 
class  Hypertable::StatsSystem
 Collects, serializes and deserializes system-wide statistics. More...
 
class  Hypertable::Status
 Holds Nagios-style program status information. More...
 
class  Hypertable::Status::Text
 Status text string constants. More...
 
class  Hypertable::StatusPersister
 Persists program status information to disk. More...
 
struct  Hypertable::StlAllocator< T, Impl >
 Stl compatible memory allocator based on a PageArena. More...
 
class  Hypertable::Stopwatch
 The Stopwatch class measures elapsed time between instantiation (or a call to start) and a call to stop. More...
 
class  Hypertable::NumericFormatterDigits
 The fast numeric formatters, very much inspired from http://cppformat.github.io/. More...
 
class  Hypertable::NumericFormatter< T >
 
class  Hypertable::NumericSignedFormatter< T >
 
class  Hypertable::NumericUnsignedFormatter< T >
 
class  Hypertable::StringCompressorPrefix
 A class to prefix-compress strings. More...
 
class  Hypertable::StringDecompressorPrefix
 A class to decompress prefix-compressed strings. More...
 
struct  LtCstr
 STL Strict Weak Ordering for comparing c-style strings. More...
 
class  Hypertable::System
 
struct  Hypertable::CpuInfo
 A structure to retrieve CPU information (vendor, model, speed, number of cores etc.) More...
 
struct  Hypertable::CpuStat
 A structure to retrieve CPU statistics (system wide cpu times, idle time etc). More...
 
struct  Hypertable::LoadAvgStat
 A structure to retrieve load average-statistics. More...
 
struct  Hypertable::MemStat
 A structure to retrieve memory statistics (RAM size, used size, free size etc) More...
 
struct  Hypertable::DiskStat
 A structure to retrieve disk statistics (read/write IOPS, transfer rates etc) More...
 
struct  Hypertable::SwapStat
 A structure to retrieve Swapping statistics (pages swapped in/out, aggregate total numbers etc) More...
 
struct  Hypertable::NetInfo
 A structure to retrieve network information (host name, primary interface, primary address, gateway etc) More...
 
struct  Hypertable::NetStat
 A structure to retrieve network statistics (receiving rate, transmitting rate etc) More...
 
struct  Hypertable::OsInfo
 A structure to retrieve operating system information (name, version, vendor, architecture) More...
 
struct  Hypertable::ProcInfo
 A structure to receive process information (pid, user name, exe name, working directory, program arguments etc) More...
 
struct  Hypertable::ProcStat
 A structure to receive process statistics (CPU user time, system time, virtmal machine sizes etc) More...
 
struct  Hypertable::FsStat
 A structure to retrieve Filesystem statistics (total size, free size, used size etc) More...
 
struct  Hypertable::TermInfo
 A structure to retrieve terminal information (lines, columns etc) More...
 
struct  Hypertable::TclHash
 Helper structure using overloaded operator() to calculate the Tcl hashes of various input types. More...
 
struct  Hypertable::TclHash2
 Helper structure using overloaded operator() to calculate the Tcl hashes of various input types (using tcl_hash2, the faster implementation). More...
 
class  Hypertable::TestHarness
 A simple test framework which sets up the logging subsystem, can compare its output against a golden file or regenerate the golden file. More...
 
class  Hypertable::TestStat
 Accumulates min, max, mean and stdev of the test results; based on the Welford method for numerical stability (see http://www.johndcook.com/standard_deviation.html) More...
 
struct  Hypertable::TestFun< FunT >
 Helper class wrapping the invocation of a single test function. More...
 
struct  Hypertable::Config::TestPolicy
 A Policy class for extending command line options. More...
 
class  Hypertable::Timer
 A timer class to keep timeout states across AsyncComm related calls. More...
 
class  Hypertable::TimeWindow
 Defines a time window. More...
 
class  Hypertable::Usage
 Helper class for printing usage banners on the command line. More...
 
class  Hypertable::WordStream
 A class generating a stream of words; the words are retrieved from a file and can be randomized. More...
 
struct  Hypertable::WordStream::word_info
 Internal structure for a single word. More...
 
class  Hypertable::XmlParser
 Base class for XML document parsers. More...
 

Macros

#define BOOST_SPIRIT_THREADSAFE
 
#define BOOST_IOSTREAMS_USE_DEPRECATED
 
#define BOOST_FILESYSTEM_VERSION   3
 
#define BOOST_FILESYSTEM_DEPRECATED   1
 
#define HT_UNUSED(x)   static_cast<void>(x)
 
#define HT_EXCEPTION(_code_, _msg_)   Exception(_code_, _msg_, __LINE__, HT_FUNC, __FILE__)
 
#define HT_EXCEPTION2(_code_, _ex_, _msg_)   Exception(_code_, _msg_, _ex_, __LINE__, HT_FUNC, __FILE__)
 
#define HT_THROW(_code_, _msg_)   throw HT_EXCEPTION(_code_, _msg_)
 
#define HT_THROW_(_code_)   HT_THROW(_code_, "")
 
#define HT_THROW2(_code_, _ex_, _msg_)   throw HT_EXCEPTION2(_code_, _ex_, _msg_)
 
#define HT_THROW2_(_code_, _ex_)   HT_THROW2(_code_, _ex_, "")
 
#define HT_THROWF(_code_, _fmt_,...)   throw HT_EXCEPTION(_code_, Hypertable::format(_fmt_, __VA_ARGS__))
 
#define HT_THROW2F(_code_, _ex_, _fmt_,...)   throw HT_EXCEPTION2(_code_, _ex_, Hypertable::format(_fmt_, __VA_ARGS__))
 
#define HT_RETHROWF(_fmt_,...)
 
#define HT_RETHROW(_s_)   HT_RETHROWF("%s", _s_)
 
#define HT_TRY(_s_, _code_)
 
#define HT_LOG_EXCEPTION(_s_)
 
#define HT_TRY_OR_LOG(_s_, _code_)
 
#define HT_TCLHASH_DO2(p, i)   ret += (ret << 3) + p[i]; ret += (ret << 3) + p[i+1]
 
#define HT_TCLHASH_DO4(p, i)   HT_TCLHASH_DO2(p, i); HT_TCLHASH_DO2(p, i+2);
 
#define HT_TCLHASH_DO8(p, i)   HT_TCLHASH_DO4(p, i); HT_TCLHASH_DO4(p, i+4);
 
#define HT_THREAD_ID_DECL(_var_)
 
#define HT_THREAD_ID_SET(_var_)
 
#define HT_DELIM_CHECK(_l_, _c_)
 
#define HT_RANGE_CHECK(_v_, _min_, _max_)
 

Typedefs

typedef BasicBloomFilter Hypertable::BloomFilter
 
typedef
BasicBloomFilterWithChecksum 
Hypertable::BloomFilterWithChecksum
 
typedef PropertiesDesc Hypertable::Config::Desc
 
typedef std::shared_ptr
< DiscreteRandomGenerator > 
Hypertable::DiscreteRandomGeneratorPtr
 
typedef std::shared_ptr
< DynamicBuffer > 
Hypertable::DynamicBufferPtr
 
typedef std::unordered_map
< String,
failure_inducer_state * > 
Hypertable::FailureInducer::StateMap
 
typedef std::shared_ptr
< Filesystem > 
Hypertable::FilesystemPtr
 Smart pointer to Filesystem. More...
 
typedef std::shared_ptr
< MetricsCollectorGanglia > 
Hypertable::MetricsCollectorGangliaPtr
 Smart pointer to MetricsCollectorGanglia. More...
 
typedef PageArena Hypertable::CharArena
 
typedef PageArena< unsigned char > Hypertable::ByteArena
 
typedef std::vector< String > Hypertable::Strings
 
typedef std::vector< int64_t > Hypertable::Int64s
 
typedef std::vector< double > Hypertable::Doubles
 
typedef Po::options_description Hypertable::PropertiesDesc
 
typedef
Po::positional_options_description 
Hypertable::PositionalDesc
 
typedef std::shared_ptr
< Properties > 
Hypertable::PropertiesPtr
 
typedef const ScopeGuardImplBase & Hypertable::ScopeGuard
 
typedef std::shared_ptr
< StaticBuffer > 
Hypertable::StaticBufferPtr
 Smart pointer to StaticBuffer. More...
 
typedef std::shared_ptr
< StatsSystem > 
Hypertable::StatsSystemPtr
 
typedef PageArena< uint8_t,
DefaultPageAllocator > 
Hypertable::StlArena
 
typedef std::string Hypertable::String
 A String is simply a typedef to std::string. More...
 
typedef long unsigned int Hypertable::Lu
 Shortcut for printf formats. More...
 
typedef long long unsigned int Hypertable::Llu
 Shortcut for printf formats. More...
 
typedef long long int Hypertable::Lld
 Shortcut for printf formats. More...
 
typedef
NumericUnsignedFormatter
< uint8_t > 
Hypertable::UInt8Formatter
 
typedef
NumericUnsignedFormatter
< uint16_t > 
Hypertable::UInt16Formatter
 
typedef
NumericUnsignedFormatter
< uint32_t > 
Hypertable::UInt32Formatter
 
typedef
NumericUnsignedFormatter
< uint64_t > 
Hypertable::UInt64Formatter
 
typedef NumericSignedFormatter
< int8_t > 
Hypertable::Int8Formatter
 
typedef NumericSignedFormatter
< int16_t > 
Hypertable::Int16Formatter
 
typedef NumericSignedFormatter
< int32_t > 
Hypertable::Int32Formatter
 
typedef NumericSignedFormatter
< int64_t > 
Hypertable::Int64Formatter
 
typedef std::set< StringStringSet
 STL Set managing Strings. More...
 
typedef std::set< const char
*, LtCstr
CstrSet
 STL Set managing c-style strings. More...
 
typedef std::map< const char
*, int32_t, LtCstr
CstrToInt32Map
 STL map from c-style string to int32_t. More...
 
typedef std::map< const char
*, int64_t, LtCstr
CstrToInt64MapT
 STL map from c-style string to int64_t. More...
 
typedef Cons< TestPolicy,
DefaultPolicy > 
Hypertable::Config::DefaultTestPolicy
 
typedef boost::thread Hypertable::Thread
 
typedef boost::thread_group Hypertable::ThreadGroup
 
typedef std::shared_ptr
< WordStream > 
Hypertable::WordStreamPtr
 

Enumerations

enum  Hypertable::Error::Code {
  Hypertable::Error::UNPOSSIBLE = -3, Hypertable::Error::EXTERNAL = -2, Hypertable::Error::FAILED_EXPECTATION = -1, Hypertable::Error::OK = 0,
  Hypertable::Error::PROTOCOL_ERROR = 1, Hypertable::Error::REQUEST_TRUNCATED = 2, Hypertable::Error::RESPONSE_TRUNCATED = 3, Hypertable::Error::REQUEST_TIMEOUT = 4,
  Hypertable::Error::LOCAL_IO_ERROR = 5, Hypertable::Error::BAD_ROOT_LOCATION = 6, Hypertable::Error::BAD_SCHEMA = 7, Hypertable::Error::INVALID_METADATA = 8,
  Hypertable::Error::BAD_KEY = 9, Hypertable::Error::METADATA_NOT_FOUND = 10, Hypertable::Error::HQL_PARSE_ERROR = 11, Hypertable::Error::FILE_NOT_FOUND = 12,
  Hypertable::Error::BLOCK_COMPRESSOR_UNSUPPORTED_TYPE = 13, Hypertable::Error::BLOCK_COMPRESSOR_INVALID_ARG = 14, Hypertable::Error::BLOCK_COMPRESSOR_TRUNCATED = 15, Hypertable::Error::BLOCK_COMPRESSOR_BAD_HEADER = 16,
  Hypertable::Error::BLOCK_COMPRESSOR_BAD_MAGIC = 17, Hypertable::Error::BLOCK_COMPRESSOR_CHECKSUM_MISMATCH = 18, Hypertable::Error::BLOCK_COMPRESSOR_DEFLATE_ERROR = 19, Hypertable::Error::BLOCK_COMPRESSOR_INFLATE_ERROR = 20,
  Hypertable::Error::BLOCK_COMPRESSOR_INIT_ERROR = 21, Hypertable::Error::TABLE_NOT_FOUND = 22, Hypertable::Error::MALFORMED_REQUEST = 23, Hypertable::Error::TOO_MANY_COLUMNS = 24,
  Hypertable::Error::BAD_DOMAIN_NAME = 25, Hypertable::Error::COMMAND_PARSE_ERROR = 26, Hypertable::Error::CONNECT_ERROR_MASTER = 27, Hypertable::Error::CONNECT_ERROR_HYPERSPACE = 28,
  Hypertable::Error::BAD_MEMORY_ALLOCATION = 29, Hypertable::Error::BAD_SCAN_SPEC = 30, Hypertable::Error::NOT_IMPLEMENTED = 31, Hypertable::Error::VERSION_MISMATCH = 32,
  Hypertable::Error::CANCELLED = 33, Hypertable::Error::SCHEMA_PARSE_ERROR = 34, Hypertable::Error::SYNTAX_ERROR = 35, Hypertable::Error::DOUBLE_UNGET = 36,
  Hypertable::Error::EMPTY_BLOOMFILTER = 37, Hypertable::Error::BLOOMFILTER_CHECKSUM_MISMATCH = 38, Hypertable::Error::NAME_ALREADY_IN_USE = 39, Hypertable::Error::NAMESPACE_DOES_NOT_EXIST = 40,
  Hypertable::Error::BAD_NAMESPACE = 41, Hypertable::Error::NAMESPACE_EXISTS = 42, Hypertable::Error::NO_RESPONSE = 43, Hypertable::Error::NOT_ALLOWED = 44,
  Hypertable::Error::INDUCED_FAILURE = 45, Hypertable::Error::SERVER_SHUTTING_DOWN = 46, Hypertable::Error::LOCATION_UNASSIGNED = 47, Hypertable::Error::ALREADY_EXISTS = 48,
  Hypertable::Error::CHECKSUM_MISMATCH = 49, Hypertable::Error::CLOSED = 50, Hypertable::Error::RANGESERVER_NOT_FOUND = 51, Hypertable::Error::CONNECTION_NOT_INITIALIZED = 52,
  Hypertable::Error::DUPLICATE_RANGE = 53, Hypertable::Error::INVALID_PSEUDO_TABLE_NAME = 54, Hypertable::Error::BAD_FORMAT = 55, Hypertable::Error::INVALID_ARGUMENT = 56,
  Hypertable::Error::INVALID_OPERATION = 57, Hypertable::Error::UNSUPPORTED_OPERATION = 58, Hypertable::Error::COLUMN_FAMILY_NOT_FOUND = 59, Hypertable::Error::NOTHING_TO_DO = 60,
  Hypertable::Error::INCOMPATIBLE_OPTIONS = 61, Hypertable::Error::BAD_VALUE = 62, Hypertable::Error::SCHEMA_GENERATION_MISMATCH = 63, Hypertable::Error::INVALID_METHOD_IDENTIFIER = 64,
  Hypertable::Error::SERVER_NOT_READY = 65, Hypertable::Error::CONFIG_BAD_ARGUMENT = 1001, Hypertable::Error::CONFIG_BAD_CFG_FILE = 1002, Hypertable::Error::CONFIG_GET_ERROR = 1003,
  Hypertable::Error::CONFIG_BAD_VALUE = 1004, Hypertable::Error::COMM_NOT_CONNECTED = 0x00010001, Hypertable::Error::COMM_BROKEN_CONNECTION = 0x00010002, Hypertable::Error::COMM_CONNECT_ERROR = 0x00010003,
  Hypertable::Error::COMM_ALREADY_CONNECTED = 0x00010004, Hypertable::Error::COMM_SEND_ERROR = 0x00010006, Hypertable::Error::COMM_RECEIVE_ERROR = 0x00010007, Hypertable::Error::COMM_POLL_ERROR = 0x00010008,
  Hypertable::Error::COMM_CONFLICTING_ADDRESS = 0x00010009, Hypertable::Error::COMM_SOCKET_ERROR = 0x0001000A, Hypertable::Error::COMM_BIND_ERROR = 0x0001000B, Hypertable::Error::COMM_LISTEN_ERROR = 0x0001000C,
  Hypertable::Error::COMM_HEADER_CHECKSUM_MISMATCH = 0x0001000D, Hypertable::Error::COMM_PAYLOAD_CHECKSUM_MISMATCH = 0x0001000E, Hypertable::Error::COMM_BAD_HEADER = 0x0001000F, Hypertable::Error::COMM_INVALID_PROXY = 0x00010010,
  Hypertable::Error::FSBROKER_BAD_FILE_HANDLE = 0x00020001, Hypertable::Error::FSBROKER_IO_ERROR = 0x00020002, Hypertable::Error::FSBROKER_FILE_NOT_FOUND = 0x00020003, Hypertable::Error::FSBROKER_BAD_FILENAME = 0x00020004,
  Hypertable::Error::FSBROKER_PERMISSION_DENIED = 0x00020005, Hypertable::Error::FSBROKER_INVALID_ARGUMENT = 0x00020006, Hypertable::Error::FSBROKER_INVALID_CONFIG = 0x00020007, Hypertable::Error::FSBROKER_EOF = 0x00020008,
  Hypertable::Error::HYPERSPACE_IO_ERROR = 0x00030001, Hypertable::Error::HYPERSPACE_CREATE_FAILED = 0x00030002, Hypertable::Error::HYPERSPACE_FILE_NOT_FOUND = 0x00030003, Hypertable::Error::HYPERSPACE_ATTR_NOT_FOUND = 0x00030004,
  Hypertable::Error::HYPERSPACE_DELETE_ERROR = 0x00030005, Hypertable::Error::HYPERSPACE_BAD_PATHNAME = 0x00030006, Hypertable::Error::HYPERSPACE_PERMISSION_DENIED = 0x00030007, Hypertable::Error::HYPERSPACE_EXPIRED_SESSION = 0x00030008,
  Hypertable::Error::HYPERSPACE_FILE_EXISTS = 0x00030009, Hypertable::Error::HYPERSPACE_IS_DIRECTORY = 0x0003000A, Hypertable::Error::HYPERSPACE_INVALID_HANDLE = 0x0003000B, Hypertable::Error::HYPERSPACE_REQUEST_CANCELLED = 0x0003000C,
  Hypertable::Error::HYPERSPACE_MODE_RESTRICTION = 0x0003000D, Hypertable::Error::HYPERSPACE_ALREADY_LOCKED = 0x0003000E, Hypertable::Error::HYPERSPACE_LOCK_CONFLICT = 0x0003000F, Hypertable::Error::HYPERSPACE_NOT_LOCKED = 0x00030010,
  Hypertable::Error::HYPERSPACE_BAD_ATTRIBUTE = 0x00030011, Hypertable::Error::HYPERSPACE_BERKELEYDB_ERROR = 0x00030012, Hypertable::Error::HYPERSPACE_DIR_NOT_EMPTY = 0x00030013, Hypertable::Error::HYPERSPACE_BERKELEYDB_DEADLOCK = 0x00030014,
  Hypertable::Error::HYPERSPACE_BERKELEYDB_REP_HANDLE_DEAD = 0x00030015, Hypertable::Error::HYPERSPACE_FILE_OPEN = 0x00030016, Hypertable::Error::HYPERSPACE_CLI_PARSE_ERROR = 0x00030017, Hypertable::Error::HYPERSPACE_CREATE_SESSION_FAILED = 0x00030018,
  Hypertable::Error::HYPERSPACE_NOT_MASTER_LOCATION = 0x00030019, Hypertable::Error::HYPERSPACE_STATEDB_ERROR = 0x0003001A, Hypertable::Error::HYPERSPACE_STATEDB_DEADLOCK = 0x0003001B, Hypertable::Error::HYPERSPACE_STATEDB_BAD_KEY = 0x0003001C,
  Hypertable::Error::HYPERSPACE_STATEDB_BAD_VALUE = 0x0003001D, Hypertable::Error::HYPERSPACE_STATEDB_ALREADY_DELETED = 0x0003001E, Hypertable::Error::HYPERSPACE_STATEDB_EVENT_EXISTS = 0x0003001F, Hypertable::Error::HYPERSPACE_STATEDB_EVENT_NOT_EXISTS = 0x00030020,
  Hypertable::Error::HYPERSPACE_STATEDB_EVENT_ATTR_NOT_FOUND = 0x00030021, Hypertable::Error::HYPERSPACE_STATEDB_SESSION_EXISTS = 0x00030022, Hypertable::Error::HYPERSPACE_STATEDB_SESSION_NOT_EXISTS = 0x00030023, Hypertable::Error::HYPERSPACE_STATEDB_SESSION_ATTR_NOT_FOUND = 0x00030024,
  Hypertable::Error::HYPERSPACE_STATEDB_HANDLE_EXISTS = 0x00030025, Hypertable::Error::HYPERSPACE_STATEDB_HANDLE_NOT_EXISTS = 0x00030026, Hypertable::Error::HYPERSPACE_STATEDB_HANDLE_ATTR_NOT_FOUND = 0x00030027, Hypertable::Error::HYPERSPACE_STATEDB_NODE_EXISTS = 0x00030028,
  Hypertable::Error::HYPERSPACE_STATEDB_NODE_NOT_EXISTS = 0x00030029, Hypertable::Error::HYPERSPACE_STATEDB_NODE_ATTR_NOT_FOUND = 0x0003002A, Hypertable::Error::HYPERSPACE_VERSION_MISMATCH = 0x00030030, Hypertable::Error::MASTER_TABLE_EXISTS = 0x00040001,
  Hypertable::Error::MASTER_BAD_SCHEMA = 0x00040002, Hypertable::Error::MASTER_NOT_RUNNING = 0x00040003, Hypertable::Error::MASTER_NO_RANGESERVERS = 0x00040004, Hypertable::Error::MASTER_FILE_NOT_LOCKED = 0x00040005,
  Hypertable::Error::MASTER_RANGESERVER_ALREADY_REGISTERED = 0x00040006, Hypertable::Error::MASTER_BAD_COLUMN_FAMILY = 0x00040007, Hypertable::Error::MASTER_SCHEMA_GENERATION_MISMATCH = 0x00040008, Hypertable::Error::MASTER_LOCATION_ALREADY_ASSIGNED = 0x00040009,
  Hypertable::Error::MASTER_LOCATION_INVALID = 0x0004000A, Hypertable::Error::MASTER_OPERATION_IN_PROGRESS = 0x0004000B, Hypertable::Error::MASTER_RANGESERVER_IN_RECOVERY = 0x0004000C, Hypertable::Error::MASTER_BALANCE_PREVENTED = 0x0004000D,
  Hypertable::Error::RANGESERVER_GENERATION_MISMATCH = 0x00050001, Hypertable::Error::RANGESERVER_RANGE_ALREADY_LOADED = 0x00050002, Hypertable::Error::RANGESERVER_RANGE_MISMATCH = 0x00050003, Hypertable::Error::RANGESERVER_NONEXISTENT_RANGE = 0x00050004,
  Hypertable::Error::RANGESERVER_OUT_OF_RANGE = 0x00050005, Hypertable::Error::RANGESERVER_RANGE_NOT_FOUND = 0x00050006, Hypertable::Error::RANGESERVER_INVALID_SCANNER_ID = 0x00050007, Hypertable::Error::RANGESERVER_SCHEMA_PARSE_ERROR = 0x00050008,
  Hypertable::Error::RANGESERVER_SCHEMA_INVALID_CFID = 0x00050009, Hypertable::Error::RANGESERVER_INVALID_COLUMNFAMILY = 0x0005000A, Hypertable::Error::RANGESERVER_TRUNCATED_COMMIT_LOG = 0x0005000B, Hypertable::Error::RANGESERVER_NO_METADATA_FOR_RANGE = 0x0005000C,
  Hypertable::Error::RANGESERVER_SHUTTING_DOWN = 0x0005000D, Hypertable::Error::RANGESERVER_CORRUPT_COMMIT_LOG = 0x0005000E, Hypertable::Error::RANGESERVER_UNAVAILABLE = 0x0005000F, Hypertable::Error::RANGESERVER_REVISION_ORDER_ERROR = 0x00050010,
  Hypertable::Error::RANGESERVER_ROW_OVERFLOW = 0x00050011, Hypertable::Error::RANGESERVER_TABLE_NOT_FOUND = 0x00050012, Hypertable::Error::RANGESERVER_BAD_SCAN_SPEC = 0x00050013, Hypertable::Error::RANGESERVER_CLOCK_SKEW = 0x00050014,
  Hypertable::Error::RANGESERVER_BAD_CELLSTORE_FILENAME = 0x00050015, Hypertable::Error::RANGESERVER_CORRUPT_CELLSTORE = 0x00050016, Hypertable::Error::RANGESERVER_TABLE_DROPPED = 0x00050017, Hypertable::Error::RANGESERVER_UNEXPECTED_TABLE_ID = 0x00050018,
  Hypertable::Error::RANGESERVER_RANGE_BUSY = 0x00050019, Hypertable::Error::RANGESERVER_BAD_CELL_INTERVAL = 0x0005001A, Hypertable::Error::RANGESERVER_SHORT_CELLSTORE_READ = 0x0005001B, Hypertable::Error::RANGESERVER_RANGE_NOT_ACTIVE = 0x0005001C,
  Hypertable::Error::RANGESERVER_FRAGMENT_ALREADY_PROCESSED = 0x0005001D, Hypertable::Error::RANGESERVER_RECOVERY_PLAN_GENERATION_MISMATCH = 0x0005001E, Hypertable::Error::RANGESERVER_PHANTOM_RANGE_MAP_NOT_FOUND = 0x0005001F, Hypertable::Error::RANGESERVER_RANGES_ALREADY_LIVE = 0x00050020,
  Hypertable::Error::RANGESERVER_RANGE_NOT_YET_ACKNOWLEDGED = 0x00050021, Hypertable::Error::RANGESERVER_SERVER_IN_READONLY_MODE = 0x00050022, Hypertable::Error::RANGESERVER_RANGE_NOT_YET_RELINQUISHED = 0x00050023, Hypertable::Error::HQL_BAD_LOAD_FILE_FORMAT = 0x00060001,
  Hypertable::Error::HQL_BAD_COMMAND = 0x00060002, Hypertable::Error::METALOG_ERROR = 0x00070000, Hypertable::Error::METALOG_VERSION_MISMATCH = 0x00070001, Hypertable::Error::METALOG_BAD_RS_HEADER = 0x00070002,
  Hypertable::Error::METALOG_BAD_HEADER = 0x00070003, Hypertable::Error::METALOG_ENTRY_TRUNCATED = 0x00070004, Hypertable::Error::METALOG_CHECKSUM_MISMATCH = 0x00070005, Hypertable::Error::METALOG_ENTRY_BAD_TYPE = 0x00070006,
  Hypertable::Error::METALOG_ENTRY_BAD_ORDER = 0x00070007, Hypertable::Error::METALOG_MISSING_RECOVER_ENTITY = 0x00070008, Hypertable::Error::METALOG_BACKUP_FILE_MISMATCH = 0x00070009, Hypertable::Error::METALOG_READ_ERROR = 0x0007000A,
  Hypertable::Error::SERIALIZATION_INPUT_OVERRUN = 0x00080001, Hypertable::Error::SERIALIZATION_BAD_VINT = 0x00080002, Hypertable::Error::SERIALIZATION_BAD_VSTR = 0x00080003, Hypertable::Error::SERIALIZATION_VERSION_MISMATCH = 0x00080004,
  Hypertable::Error::THRIFTBROKER_BAD_SCANNER_ID = 0x00090001, Hypertable::Error::THRIFTBROKER_BAD_MUTATOR_ID = 0x00090002, Hypertable::Error::THRIFTBROKER_BAD_NAMESPACE_ID = 0x00090003, Hypertable::Error::THRIFTBROKER_BAD_FUTURE_ID = 0x00090004
}
 
enum  Hypertable::Filesystem::Flags : uint8_t { Hypertable::Filesystem::Flags::NONE =0, Hypertable::Filesystem::Flags::FLUSH =1, Hypertable::Filesystem::Flags::SYNC =2 }
 Enumeration type for append flags. More...
 
enum  Hypertable::Filesystem::OpenFlags { Hypertable::Filesystem::OPEN_FLAG_DIRECTIO = 0x00000001, Hypertable::Filesystem::OPEN_FLAG_OVERWRITE = 0x00000002, Hypertable::Filesystem::OPEN_FLAG_VERIFY_CHECKSUM = 0x00000004 }
 
enum  {
  Hypertable::Logger::Priority::EMERG = 0, Hypertable::Logger::Priority::FATAL = 0, Hypertable::Logger::Priority::ALERT = 1, Hypertable::Logger::Priority::CRIT = 2,
  Hypertable::Logger::Priority::ERROR = 3, Hypertable::Logger::Priority::WARN = 4, Hypertable::Logger::Priority::NOTICE = 5, Hypertable::Logger::Priority::INFO = 6,
  Hypertable::Logger::Priority::DEBUG = 7, Hypertable::Logger::Priority::NOTSET = 8
}
 
enum  { Hypertable::PageArena< CharT, PageAllocatorT >::DEFAULT_PAGE_SIZE = 8192 }
 The default page size is 8 kb. More...
 
enum  { Hypertable::PageArena< CharT, PageAllocatorT >::TinyBuffer::SIZE = 128 }
 
enum  Hypertable::StatsSerializable::Identifier { Hypertable::StatsSerializable::SYSTEM = 1, Hypertable::StatsSerializable::RANGE = 2, Hypertable::StatsSerializable::TABLE = 3, Hypertable::StatsSerializable::RANGE_SERVER = 4 }
 Statistics identifer; assigned in constructor. More...
 
enum  Hypertable::StatsSystem::Category {
  Hypertable::StatsSystem::CPUINFO = 0x0001, Hypertable::StatsSystem::CPU = 0x0002, Hypertable::StatsSystem::LOADAVG = 0x0004, Hypertable::StatsSystem::MEMORY = 0x0008,
  Hypertable::StatsSystem::DISK = 0x0010, Hypertable::StatsSystem::SWAP = 0x0020, Hypertable::StatsSystem::NETINFO = 0x0040, Hypertable::StatsSystem::NET = 0x0080,
  Hypertable::StatsSystem::OSINFO = 0x0100, Hypertable::StatsSystem::PROCINFO = 0x0200, Hypertable::StatsSystem::PROC = 0x0400, Hypertable::StatsSystem::FS = 0x0800,
  Hypertable::StatsSystem::TERMINFO = 0x1000
}
 All statistics categories that are provided by this class. More...
 
enum  Hypertable::Status::Code : int32_t { Hypertable::Status::Code::OK = 0, Hypertable::Status::Code::WARNING = 1, Hypertable::Status::Code::CRITICAL = 2, Hypertable::Status::Code::UNKNOWN = 3 }
 Enumeration for status codes. More...
 
enum  { Hypertable::NumericFormatter< T >::BUFFER_SIZE = std::numeric_limits<T>::digits10 + 3 }
 

Functions

void Hypertable::destruct (char *)
 helper functions which call the destructor of an object; destructor is not called on POD types (using template specialization) More...
 
void Hypertable::destruct (unsigned char *)
 
void Hypertable::destruct (short *)
 
void Hypertable::destruct (unsigned short *)
 
void Hypertable::destruct (int *)
 
void Hypertable::destruct (unsigned int *)
 
void Hypertable::destruct (long *)
 
void Hypertable::destruct (unsigned long *)
 
void Hypertable::destruct (long long *)
 
void Hypertable::destruct (unsigned long long *)
 
void Hypertable::destruct (float *)
 
void Hypertable::destruct (double *)
 
void Hypertable::destruct (long double *)
 
template<typename T >
void Hypertable::destruct (T *p)
 
size_t Hypertable::get_align_offset (void *p)
 Convenience function returning a size aligned to 8 or 4 bytes, depending on the system's architecture. More...
 
 Hypertable::BasicBloomFilterWithChecksum< HasherT >::BasicBloomFilterWithChecksum (size_t items_estimate, float false_positive_prob)
 Constructor. More...
 
 Hypertable::BasicBloomFilterWithChecksum< HasherT >::BasicBloomFilterWithChecksum (size_t items_estimate, float bits_per_item, size_t num_hashes)
 Alternative constructor. More...
 
 Hypertable::BasicBloomFilterWithChecksum< HasherT >::BasicBloomFilterWithChecksum (size_t items_estimate, size_t items_actual, int64_t length, size_t num_hashes)
 Alternative constructor. More...
 
 Hypertable::BasicBloomFilterWithChecksum< HasherT >::~BasicBloomFilterWithChecksum ()
 Destructor; releases resources. More...
 
void Hypertable::BasicBloomFilterWithChecksum< HasherT >::insert (const void *key, size_t len)
 Inserts a new blob into the hash. More...
 
void Hypertable::BasicBloomFilterWithChecksum< HasherT >::insert (const String &key)
 Overloaded insert function for Strings. More...
 
bool Hypertable::BasicBloomFilterWithChecksum< HasherT >::may_contain (const void *key, size_t len) const
 Checks if the data set "may" contain the key. More...
 
bool Hypertable::BasicBloomFilterWithChecksum< HasherT >::may_contain (const String &key) const
 Overloaded may_contain function for Strings. More...
 
void Hypertable::BasicBloomFilterWithChecksum< HasherT >::serialize (StaticBuffer &buf)
 Serializes the BloomFilter into a static memory buffer. More...
 
uint8_t * Hypertable::BasicBloomFilterWithChecksum< HasherT >::base ()
 Getter for the serialized bloom filter data, including metadata and checksums. More...
 
void Hypertable::BasicBloomFilterWithChecksum< HasherT >::validate (String &filename)
 Validates the checksum of the BloomFilter. More...
 
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::size ()
 Getter for the bloom filter size. More...
 
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::total_size ()
 Getter for the total size (including checksum and metadata) More...
 
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::get_num_hashes ()
 Getter for the number of hash functions. More...
 
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::get_length_bits ()
 Getter for the number of bits. More...
 
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::get_items_estimate ()
 Getter for the estimated number of items. More...
 
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::get_items_actual ()
 Getter for the actual number of items. More...
 
void Hypertable::append_as_byte_string (DynamicBuffer &dst_buf, const void *value, uint32_t value_len)
 Serializes and appends a byte array to a DynamicBuffer object. More...
 
void Hypertable::append_as_byte_string (DynamicBuffer &dst_buf, const char *str)
 Serializes and appends a string to a DynamicBuffer object. More...
 
uint32_t Hypertable::fletcher32 (const void *data, size_t len)
 Compute fletcher32 checksum for arbitary data. More...
 
template<typename T , typename... Ts>
std::unique_ptr< T > make_unique (Ts &&...params)
 
bool Hypertable::Config::has (const String &name)
 Check existence of a configuration value. More...
 
bool Hypertable::Config::defaulted (const String &name)
 Check if a configuration value is defaulted. More...
 
template<typename T >
Hypertable::Config::get (const String &name)
 Retrieves a configuration value. More...
 
template<typename T >
Hypertable::Config::get (const String &name, const T &default_value)
 Retrieves a configuration value (or a default value, if the value was not set) More...
 
Desc & Hypertable::Config::cmdline_desc (const char *usage=nullptr)
 A macro which definds global functions like get_bool(), get_str(), get_i16() etc. More...
 
void Hypertable::Config::cmdline_desc (const Desc &desc)
 Set the command line options description. More...
 
Desc & Hypertable::Config::cmdline_hidden_desc ()
 Get the command line hidden options description (for positional options) More...
 
PositionalDesc & Hypertable::Config::cmdline_positional_desc ()
 Get the command line positional options description. More...
 
Desc & Hypertable::Config::file_desc (const char *usage=NULL)
 Get the config file options description. More...
 
void Hypertable::Config::file_desc (const Desc &desc)
 Set the config file options description. More...
 
void Hypertable::Config::parse_args (int argc, char *argv[])
 Initialization helper; parses the argc/argv parameters into properties, reads the configuration file, handles "help" and "help-config" parameters. More...
 
void Hypertable::Config::parse_file (const String &fname, const Desc &desc)
 Parses a configuration file and stores all configuration options into the option descriptor. More...
 
void Hypertable::Config::alias (const String &cmdline_opt, const String &file_opt, bool overwrite=false)
 Setup command line option alias for config file option. More...
 
void Hypertable::Config::sync_aliases ()
 Sync alias values. More...
 
bool Hypertable::Config::allow_unregistered_options (bool choice)
 Toggle allow unregistered options. More...
 
bool Hypertable::Config::allow_unregistered_options ()
 Returns true if unregistered options are allowed. More...
 
void Hypertable::Config::cleanup ()
 Free all resources used. More...
 
std::ostream & Hypertable::operator<< (std::ostream &os, const crontab_entry &entry)
 Helper function to write crontab_entry to an ostream. More...
 
template<int N>
void Hypertable::reconstruct_spec (const std::bitset< N > &bits, String &spec)
 Converts binary crontab spec back into string spec. More...
 
size_t Hypertable::hash_case_cstr (const char *s)
 
template<class _Key , class _Tp >
bool Hypertable::operator== (const directory_entry< _Key, _Tp > &lhs, const directory_entry< _Key, _Tp > &rhs)
 
template<class _Key , class _Tp >
bool Hypertable::operator!= (const directory_entry< _Key, _Tp > &lhs, const directory_entry< _Key, _Tp > &rhs)
 
template<class _Key , class _Tp >
bool Hypertable::operator< (const directory_entry< _Key, _Tp > &lhs, const directory_entry< _Key, _Tp > &rhs)
 
template<class _Key , class _Tp , class _Compare , class _Allocator >
bool Hypertable::operator== (const directory< _Key, _Tp, _Compare, _Allocator > &__x, const directory< _Key, _Tp, _Compare, _Allocator > &__y)
 
template<class _Key , class _Tp , class _Compare , class _Allocator >
bool Hypertable::operator!= (const directory< _Key, _Tp, _Compare, _Allocator > &__x, const directory< _Key, _Tp, _Compare, _Allocator > &__y)
 
template<class _Key , class _Tp , class _Compare , class _Allocator >
bool Hypertable::operator< (const directory< _Key, _Tp, _Compare, _Allocator > &__x, const directory< _Key, _Tp, _Compare, _Allocator > &__y)
 
template<class _Key , class _Tp , class _Compare , class _Allocator >
bool Hypertable::operator> (const directory< _Key, _Tp, _Compare, _Allocator > &__x, const directory< _Key, _Tp, _Compare, _Allocator > &__y)
 
template<class _Key , class _Tp , class _Compare , class _Allocator >
bool Hypertable::operator>= (const directory< _Key, _Tp, _Compare, _Allocator > &__x, const directory< _Key, _Tp, _Compare, _Allocator > &__y)
 
template<class _Key , class _Tp , class _Compare , class _Allocator >
bool Hypertable::operator<= (const directory< _Key, _Tp, _Compare, _Allocator > &__x, const directory< _Key, _Tp, _Compare, _Allocator > &__y)
 
template<class _Key , class _Tp , class _Compare , class _Allocator >
void Hypertable::swap (directory< _Key, _Tp, _Compare, _Allocator > &__x, directory< _Key, _Tp, _Compare, _Allocator > &__y) noexcept(noexcept(__x.swap(__y)))
 
std::ostream & Hypertable::operator<< (std::ostream &out, const Exception &)
 Global operator to print an Exception to a std::ostream. More...
 
std::ostream & Hypertable::operator<< (std::ostream &out, const ExceptionMessageRenderer &r)
 Global helper operator to print an Exception to a std::ostream. More...
 
std::ostream & Hypertable::operator<< (std::ostream &out, const ExceptionMessagesRenderer &r)
 Global helper operator to print an Exception to a std::ostream. More...
 
void Hypertable::escape (String &str, const String &escape_chars)
 Escapes a string. More...
 
void Hypertable::unescape (String &str)
 Unescapes a string. More...
 
static bool Hypertable::FailureInducer::enabled ()
 Returns true if the FailureInducer is enabled (= if an instance was allocated) More...
 
void Hypertable::FailureInducer::parse_option (String spec)
 Parses a spec string (as explained above) and stores it in an internal structure. More...
 
void Hypertable::FailureInducer::maybe_fail (const String &label)
 Tests and executes the induced failures. More...
 
bool Hypertable::FailureInducer::failure_signalled (const String &label)
 Returns true if a failure was signalled. More...
 
void Hypertable::FailureInducer::clear ()
 Clears the failure inducer. More...
 
void Hypertable::FailureInducer::parse_option_single (String option)
 Helper function to parse a single option. More...
 
bool Hypertable::operator< (const Filesystem::Dirent &lhs, const Filesystem::Dirent &rhs)
 
Filesystem::Flags Hypertable::convert (std::string str)
 Converts string mnemonic to corresponding Filesystem::Flags value. More...
 
template<class PolicyT >
void Hypertable::Config::init_with_policy (int argc, char *argv[], const Desc *desc=0)
 Init with policy (with init_options (called before parse_args) and init (called after parse_args) methods. More...
 
template<class PolicyListT >
void Hypertable::Config::init_with_policies (int argc, char *argv[], const Desc *desc=0)
 Convenience function (more of a demo) to init with a list of polices. More...
 
void Hypertable::Config::init (int argc, char *argv[], const Desc *desc=NULL)
 Initialize with default policy. More...
 
void Hypertable::Logger::initialize (const String &name)
 Public initialization function - creates a singleton instance of LogWriter. More...
 
LogWriter * Hypertable::Logger::get ()
 Accessor for the LogWriter singleton instance. More...
 
void md5_starts (md5_context *ctx)
 Initialize and setup a MD5 context structure. More...
 
void md5_update (md5_context *ctx, const unsigned char *input, int ilen)
 Adds data to the MD5 process buffer. More...
 
void md5_finish (md5_context *ctx, unsigned char output[16])
 Retrieve the final MD5 digest. More...
 
void md5_csum (const unsigned char *input, int ilen, unsigned char output[16])
 Convenience function to calculate the MD5 sum of an input buffer. More...
 
int md5_file (const char *path, unsigned char output[16])
 Convenience function to calculate the MD5 sum of a file. More...
 
void md5_hmac (unsigned char *key, int keylen, const unsigned char *input, int ilen, unsigned char output[16])
 Calculates a "Hashed MAC" of an input buffer combined with a secret key. More...
 
int md5_self_test (void)
 Runs a self test. More...
 
void md5_hex (const void *input, size_t ilen, char output[33])
 Convenience function to calculate the MD5 sum of an input buffer; returns string with the MD5 encoded in hexadecimal. More...
 
void md5_string (const char *input, char output[33])
 Calculates the hex string of MD5 of null terminated input. More...
 
int64_t md5_hash (const char *input)
 Returns a 64-bit hash checksum of a null terminated input buffer. More...
 
void md5_trunc_modified_base64 (const char *input, char output[17])
 Get the modified base64 encoded string of the first 12 Bytes of the 16 Byte MD5 code of a null terminated output; see http://en.wikipedia.org/wiki/Base64#URL_applications for more information. More...
 
void digest_to_trunc_modified_base64 (const char digest[16], char output[17])
 Get the modified base64 encoded string of a 16 byte message digest see http://en.wikipedia.org/wiki/Base64#URL_applications for more information. More...
 
uint32_t Hypertable::murmurhash2 (const void *data, size_t len, uint32_t hash)
 The murmurhash2 implementation. More...
 
template<typename CharT , class PageAlloc >
std::ostream & Hypertable::operator<< (std::ostream &out, const PageArena< CharT, PageAlloc > &m)
 
template<typename FunT >
ScopeGuardImpl0< FunT > Hypertable::make_guard (FunT fun)
 
template<typename FunT , typename P1T >
ScopeGuardImpl1< FunT, P1T > Hypertable::make_guard (FunT fun, P1T p1)
 
template<typename FunT , typename P1T , typename P2T >
ScopeGuardImpl2< FunT, P1T, P2T > Hypertable::make_guard (FunT fun, P1T p1, P2T p2)
 
template<typename FunT , typename P1T , typename P2T , typename P3T >
ScopeGuardImpl3< FunT, P1T,
P2T, P3T > 
Hypertable::make_guard (FunT fun, P1T p1, P2T p2, P3T p3)
 
template<class ObjT , typename MethodT >
ObjScopeGuardImpl0< ObjT, MethodT > Hypertable::make_obj_guard (ObjT &obj, MethodT method)
 
template<class ObjT , typename MethodT , typename P1T >
ObjScopeGuardImpl1< ObjT,
MethodT, P1T > 
Hypertable::make_obj_guard (ObjT &obj, MethodT method, P1T p1)
 
template<class ObjT , typename MethodT , typename P1T , typename P2T >
ObjScopeGuardImpl2< ObjT,
MethodT, P1T, P2T > 
Hypertable::make_obj_guard (ObjT &obj, MethodT method, P1T p1, P2T p2)
 
template<class T >
RefHolder< T > Hypertable::by_ref (T &t)
 
void Hypertable::Serialization::encode_i8 (uint8_t **bufp, uint8_t val)
 Encodes a byte into the given buffer. More...
 
uint8_t Hypertable::Serialization::decode_i8 (const uint8_t **bufp, size_t *remainp)
 Decode a 8-bit integer (a byte/character) More...
 
uint8_t Hypertable::Serialization::decode_byte (const uint8_t **bufp, size_t *remainp)
 Decodes a single byte from the given buffer. More...
 
void Hypertable::Serialization::encode_bool (uint8_t **bufp, bool bval)
 Encodes a boolean into the given buffer. More...
 
bool Hypertable::Serialization::decode_bool (const uint8_t **bufp, size_t *remainp)
 Decodes a boolean value from the given buffer. More...
 
void Hypertable::Serialization::encode_i16 (uint8_t **bufp, uint16_t val)
 Encode a 16-bit integer in little-endian order. More...
 
uint16_t Hypertable::Serialization::decode_i16 (const uint8_t **bufp, size_t *remainp)
 Decode a 16-bit integer in little-endian order. More...
 
void Hypertable::Serialization::encode_i32 (uint8_t **bufp, uint32_t val)
 Encode a 32-bit integer in little-endian order. More...
 
uint32_t Hypertable::Serialization::decode_i32 (const uint8_t **bufp, size_t *remainp)
 Decode a 32-bit integer in little-endian order. More...
 
void Hypertable::Serialization::encode_i64 (uint8_t **bufp, uint64_t val)
 Encode a 64-bit integer in little-endian order. More...
 
uint64_t Hypertable::Serialization::decode_i64 (const uint8_t **bufp, size_t *remainp)
 Decode a 64-bit integer in little-endian order. More...
 
int Hypertable::Serialization::encoded_length_vi32 (uint32_t val)
 Length of a variable length encoded 32-bit integer (up to 5 bytes) More...
 
int Hypertable::Serialization::encoded_length_vi64 (uint64_t val)
 Length of a variable length encoded 64-bit integer (up to 9 bytes) More...
 
void Hypertable::Serialization::encode_vi32 (uint8_t **bufp, uint32_t val)
 Encode a integer (up to 32-bit) in variable length encoding. More...
 
void Hypertable::Serialization::encode_vi64 (uint8_t **bufp, uint64_t val)
 Encode a integer (up to 64-bit) in variable length encoding. More...
 
uint32_t Hypertable::Serialization::decode_vi32 (const uint8_t **bufp, size_t *remainp)
 Decode a variable length encoded integer up to 32-bit. More...
 
uint64_t Hypertable::Serialization::decode_vi64 (const uint8_t **bufp, size_t *remainp)
 Decode a variable length encoded integer up to 64-bit. More...
 
uint32_t Hypertable::Serialization::decode_vi32 (const uint8_t **bufp)
 Decode a variable length encoded integer up to 32-bit. More...
 
uint64_t Hypertable::Serialization::decode_vi64 (const uint8_t **bufp)
 Decode a variable length encoded integer up to 64-bit. More...
 
size_t Hypertable::Serialization::encoded_length_bytes32 (int32_t len)
 Computes the encoded length of a 32-bit length byte array (i32, bytes) More...
 
void Hypertable::Serialization::encode_bytes32 (uint8_t **bufp, const void *data, int32_t len)
 Encodes a variable sized byte array into the given buffer. More...
 
uint8_t * Hypertable::Serialization::decode_bytes32 (const uint8_t **bufp, size_t *remainp, uint32_t *lenp)
 Decodes a variable sized byte array from the given buffer. More...
 
size_t Hypertable::Serialization::encoded_length_str16 (const char *str)
 Computes the encoded length of a string16 encoding. More...
 
size_t Hypertable::Serialization::encoded_length_str16 (const String &str)
 Computes the encoded length of a String. More...
 
void Hypertable::Serialization::encode_str16 (uint8_t **bufp, const void *str, uint16_t len)
 Encodes a string buffer into the given buffer. More...
 
void Hypertable::Serialization::encode_str16 (uint8_t **bufp, const char *str)
 Encodes a c-style null-terminated string into the given buffer. More...
 
template<class StringT >
void Hypertable::Serialization::encode_str16 (uint8_t **bufp, const StringT &str)
 Encodes a string into the given buffer. More...
 
const char * Hypertable::Serialization::decode_str16 (const uint8_t **bufp, size_t *remainp)
 Decodes a c-style string from the given buffer. More...
 
char * Hypertable::Serialization::decode_str16 (const uint8_t **bufp, size_t *remainp, uint16_t *lenp)
 Decodes a c-style string from the given buffer. More...
 
size_t Hypertable::Serialization::encoded_length_vstr (size_t len)
 Computes the encoded length of vstr (vint64, data, null) More...
 
size_t Hypertable::Serialization::encoded_length_vstr (const char *s)
 Computes the encoded length of vstr. More...
 
size_t Hypertable::Serialization::encoded_length_vstr (const String &s)
 Computes the encoded length of vstr. More...
 
void Hypertable::Serialization::encode_vstr (uint8_t **bufp, const void *buf, size_t len)
 Encode a buffer as variable length string (vint64, data, null) More...
 
void Hypertable::Serialization::encode_vstr (uint8_t **bufp, const char *s)
 Encode a c-style string as vstr. More...
 
template<class StringT >
void Hypertable::Serialization::encode_vstr (uint8_t **bufp, const StringT &s)
 Encode a String as vstr. More...
 
char * Hypertable::Serialization::decode_vstr (const uint8_t **bufp, size_t *remainp)
 Decode a vstr (vint64, data, null). More...
 
char * Hypertable::Serialization::decode_vstr (const uint8_t **bufp, size_t *remainp, uint32_t *lenp)
 Decode a vstr (vint64, data, null) More...
 
void Hypertable::Serialization::encode_inet_addr (uint8_t **bufp, const InetAddr &addr)
 Encode an InetAddr structure. More...
 
InetAddr Hypertable::Serialization::decode_inet_addr (const uint8_t **bufp, size_t *remainp)
 Decode an InetAddr structure. More...
 
void Hypertable::Serialization::encode_double (uint8_t **bufp, double val)
 Encodes a double with 18 decimal digits of precision as 64-bit left-of-decimal, followed by 64-bit right-of-decimal, both in little-endian order. More...
 
double Hypertable::Serialization::decode_double (const uint8_t **bufp, size_t *remainp)
 Decodes a double as 64-bit left-of-decimal, followed by 64-bit right-of-decimal, both in little-endian order. More...
 
int Hypertable::Serialization::encoded_length_double ()
 Length of an encoded double (16 bytes) More...
 
bool Hypertable::Serialization::equal (double a, double b)
 Compare doubles that may have been serialized and unserialized. More...
 
bool Hypertable::operator< (const StaticBuffer &sb1, const StaticBuffer &sb2)
 "Less than" operator for StaticBuffer; uses memcmp More...
 
bool Hypertable::operator== (const StaticBuffer &sb1, const StaticBuffer &sb2)
 Equality operator for StaticBuffer; uses memcmp. More...
 
bool Hypertable::operator!= (const StaticBuffer &sb1, const StaticBuffer &sb2)
 Inequality operator for StaticBuffer. More...
 
String Hypertable::format (const char *fmt,...) __attribute__((format(printf
 Returns a String using printf like format facilities Vanilla snprintf is about 1.5x faster than this, which is about: 10x faster than boost::format; 1.5x faster than std::string append (operator+=); 3.5x faster than std::string operator+;. More...
 
String Hypertable::format_number (int64_t n, int sep= ',')
 Return decimal number string separated by a separator (default: comma) for every 3 digits. More...
 
String Hypertable::format_bytes (size_t n, const void *buf, size_t len, const char *trailer="...")
 Return first n bytes of buffer with an optional trailer if the size of the buffer exceeds n. More...
 
template<class SequenceT >
String Hypertable::format_list (const SequenceT &seq, const char *sep=", ")
 Return a string presentation of a sequence. More...
 
bool Hypertable::strip_enclosing_quotes (const char *input, size_t input_len, const char **output, size_t *output_len)
 Strips enclosing quotes. More...
 
String operator+ (const String &s1, short sval)
 Append operator for shorts. More...
 
String operator+ (const String &s1, uint16_t sval)
 Append operator for ushorts. More...
 
String operator+ (const String &s1, int ival)
 Append operator for integers. More...
 
String operator+ (const String &s1, uint32_t ival)
 Append operator for unsigned integers. More...
 
String operator+ (const String &s1, int64_t llval)
 Append operator for 64bit integers. More...
 
String operator+ (const String &s1, uint64_t llval)
 Append operator for 64bit unsigned integers. More...
 
std::ostream & Hypertable::operator<< (std::ostream &, const CpuInfo &)
 Global operator<< to print a CpuInfo. More...
 
std::ostream & Hypertable::operator<< (std::ostream &, const CpuStat &)
 Global operator<< to print a CpuStat. More...
 
std::ostream & Hypertable::operator<< (std::ostream &, const MemStat &)
 Global operator<< to print a MemStat. More...
 
std::ostream & Hypertable::operator<< (std::ostream &, const DiskStat &)
 Global operator<< to print a DiskStat. More...
 
std::ostream & Hypertable::operator<< (std::ostream &, const OsInfo &)
 Global operator<< to print a OsInfo. More...
 
std::ostream & Hypertable::operator<< (std::ostream &, const SwapStat &)
 Global operator<< to print a SwapStat. More...
 
std::ostream & Hypertable::operator<< (std::ostream &, const NetInfo &)
 Global operator<< to print a NetInfo. More...
 
std::ostream & Hypertable::operator<< (std::ostream &, const NetStat &)
 Global operator<< to print a NetStat. More...
 
std::ostream & Hypertable::operator<< (std::ostream &, const ProcInfo &)
 Global operator<< to print a ProcInfo. More...
 
std::ostream & Hypertable::operator<< (std::ostream &, const ProcStat &)
 Global operator<< to print a ProcStat. More...
 
std::ostream & Hypertable::operator<< (std::ostream &, const FsStat &)
 Global operator<< to print a FsStat. More...
 
std::ostream & Hypertable::operator<< (std::ostream &, const TermInfo &)
 Global operator<< to print a TermInfo. More...
 
const char * Hypertable::system_info_lib_version ()
 Returns a descriptive string of the libsigar version. More...
 
size_t Hypertable::tcl_hash (const char *s)
 The Tcl hash by John Ousterhout for null-terminated c-strings, preferably alpha-numeric characters only. More...
 
size_t Hypertable::tcl_hash (const void *data, size_t len, size_t seed)
 Tcl hash for data with known length. More...
 
size_t Hypertable::tcl_hash2 (const void *data, size_t len, size_t seed)
 Unrolled Tcl hash, up to 20% faster for longer (> 8 bytes) strings. More...
 
void Hypertable::print_proc_stat ()
 Prints statistics about the current process. More...
 
 Hypertable::TestStat::TestStat ()
 
void Hypertable::TestStat::operator() (double x)
 
void Hypertable::TestStat::add (double x)
 
double Hypertable::TestStat::min () const
 
double Hypertable::TestStat::max () const
 
double Hypertable::TestStat::mean () const
 
double Hypertable::TestStat::stdev () const
 
std::ostream & Hypertable::operator<< (std::ostream &out, const TestStat &stat)
 Prints a TestStat instance to a stream. More...
 
 Hypertable::TestFun< FunT >::TestFun (FunT fun, bool proc_stat=false, TestStat *stat=NULL)
 
void Hypertable::TestFun< FunT >::operator() ()
 
template<typename FunT >
void Hypertable::serial_run (FunT fun, size_t n, bool proc_stat=false)
 Runs a test serially n times in a row while accumulating the benchmark results. More...
 
template<typename FunT >
void Hypertable::parallel_run (FunT fun, size_t n, bool proc_stat=false)
 Runs a test in parallel n times in a row while accumulating the benchmark results. More...
 
template<typename FunT >
void Hypertable::run_test (FunT fun, bool proc_stat=false, const Properties *props=0)
 Runs a test based on command line parameters: More...
 
int64_t Hypertable::get_ts64 ()
 Returns the current time in nanoseconds as a 64bit number. More...
 
ostream & Hypertable::hires_ts (std::ostream &)
 Prints the current time as seconds and nanoseconds, delimited by '.'. More...
 
int64_t Hypertable::parse_ts (const char *ts)
 Inline function which parses a string with a timestamp in localtime and returns a 64bit nanosecond timestamp. More...
 
int32_t Hypertable::random_int32 (int32_t maximum)
 Generate random 32-bit integer. More...
 
void Hypertable::random_generator_set_seed (unsigned seed)
 Sets random number generator seed. More...
 
void Hypertable::random_fill_with_chars (char *buf, size_t len, const char *charset=nullptr)
 Fills a buffer with random values from a set of characters. More...
 
 Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::directory (const key_compare &__comp) noexcept(std::is_nothrow_default_constructible< allocator_type >::value &&std::is_nothrow_copy_constructible< key_compare >::value)
 
 Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::directory (const allocator_type &__a)
 
 Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::directory (const key_compare &__comp, const allocator_type &__a)
 
 Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::directory (const directory &__d)
 
 Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::directory (directory &&__d) noexcept(std::is_nothrow_move_constructible< allocator_type >::value &&std::is_nothrow_move_constructible< value_compare >::value)
 
template<class _InputIterator >
void Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::insert (const_iterator pos, _InputIterator __f, _InputIterator __l)
 
void Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::swap (directory &__d) noexcept(__is_nothrow_swappable< value_compare >::value &&(!__node_traits::propagate_on_container_swap::value||__is_nothrow_swappable< __node_allocator >::value))
 
template<class _InputIterator >
void Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::insert (_InputIterator __f, _InputIterator __l)
 
__node_pointer Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::__create_node ()
 
template<class... _Args>
__node_pointer Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::__create_node (_Args &&...__args)
 
void Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::__destroy_node (__node *np)
 
std::ostream & Hypertable::ExceptionMessageRenderer::render (std::ostream &out) const
 Global helper function to print an Exception to a std::ostream. More...
 
std::ostream & Hypertable::ExceptionMessagesRenderer::render (std::ostream &out) const
 Global helper function to print an Exception to a std::ostream. More...
 

Variables

HasherT Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_hasher
 The hash function implementation. More...
 
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_items_estimate
 Estimated number of items. More...
 
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_items_actual
 Actual number of items. More...
 
float Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_false_positive_prob
 Probability of returning a false positive. More...
 
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_num_hash_functions
 Number of hash functions. More...
 
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_num_bits
 Number of bits. More...
 
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_num_bytes
 Number of bytes (approx. More...
 
uint8_t * Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_bloom_bits
 The actual bloom filter bit-array. More...
 
uint8_t * Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_bloom_base
 The serialized bloom filter data, including metadata and checksums. More...
 
std::recursive_mutex Hypertable::Config::rec_mutex
 A global (recursive) configuration mutex. More...
 
PropertiesPtr Hypertable::Config::properties
 This singleton map stores all options. More...
 
static FailureInducerHypertable::FailureInducer::instance = 0
 This is a singleton class. More...
 
uint32_t Hypertable::FailureInducer::failure_inducer_state::iteration
 Current iteration of the failure. More...
 
uint32_t Hypertable::FailureInducer::failure_inducer_state::trigger_iteration
 Number of iterations after which the failure is triggered. More...
 
int Hypertable::FailureInducer::failure_inducer_state::failure_type
 The failure type; an enum in FailureInducer.cc. More...
 
int Hypertable::FailureInducer::failure_inducer_state::error_code
 The error code which is thrown (if type is FAILURE_TYPE_THROW) More...
 
int Hypertable::FailureInducer::failure_inducer_state::pause_millis
 Milliseconds to pause (if type is FAILURE_TYPE_PAUSE) More...
 
std::mutex Hypertable::FailureInducer::m_mutex
 A mutex to serialize access. More...
 
StateMap Hypertable::FailureInducer::m_state_map
 A list of all failure settings. More...
 
std::mutex Hypertable::TestStat::m_mutex
 
double Hypertable::TestStat::m_minv
 
double Hypertable::TestStat::m_maxv
 
size_t Hypertable::TestStat::m_i
 
double Hypertable::TestStat::m_a0
 
double Hypertable::TestStat::m_a1
 
double Hypertable::TestStat::m_q0
 
double Hypertable::TestStat::m_q1
 
FunT Hypertable::TestFun< FunT >::fun
 
bool Hypertable::TestFun< FunT >::proc_stat
 
TestStat * Hypertable::TestFun< FunT >::stat_acc
 

Detailed Description

General purpose utility library.

The Common library contains general purpose utility classes used by all other modules within Hypertable. It is not dependent on any other library defined in Hypertable.

Macro Definition Documentation

#define BOOST_FILESYSTEM_DEPRECATED   1

Definition at line 48 of file Compat.h.

#define BOOST_FILESYSTEM_VERSION   3

Definition at line 47 of file Compat.h.

#define BOOST_IOSTREAMS_USE_DEPRECATED

Definition at line 46 of file Compat.h.

#define BOOST_SPIRIT_THREADSAFE

Definition at line 43 of file Compat.h.

#define HT_DELIM_CHECK (   _l_,
  _c_ 
)
Value:
do { \
if ((_l_) != (_c_)) \
throw std::runtime_error("expected " #_l_ " to be " #_c_); \
} while (0)

Definition at line 40 of file TimeInline.h.

#define HT_EXCEPTION (   _code_,
  _msg_ 
)    Exception(_code_, _msg_, __LINE__, HT_FUNC, __FILE__)

Definition at line 470 of file Error.h.

#define HT_EXCEPTION2 (   _code_,
  _ex_,
  _msg_ 
)    Exception(_code_, _msg_, _ex_, __LINE__, HT_FUNC, __FILE__)

Definition at line 474 of file Error.h.

#define HT_LOG_EXCEPTION (   _s_)
Value:
catch (Exception &e) { HT_ERROR_OUT << e <<", "<< _s_ << HT_END; } \
catch (std::bad_alloc &e) { \
HT_ERROR_OUT << "Out of memory, " << _s_ << HT_END; } \
catch (std::exception &e) { \
HT_ERROR_OUT << "Caught exception: " << e.what() <<", "<< _s_ << HT_END; } \
catch (...) { \
HT_ERROR_OUT << "Caught unknown exception, " << _s_ << HT_END; }
#define HT_END
Definition: Logger.h:220
#define HT_ERROR_OUT
Definition: Logger.h:301

Definition at line 523 of file Error.h.

#define HT_RANGE_CHECK (   _v_,
  _min_,
  _max_ 
)
Value:
do { \
if ((_v_) < (_min_) || (_v_) > (_max_)) \
throw std::range_error(#_v_ " must be between " #_min_ " and " #_max_); \
} while (0)

Definition at line 47 of file TimeInline.h.

#define HT_RETHROW (   _s_)    HT_RETHROWF("%s", _s_)

Definition at line 514 of file Error.h.

#define HT_RETHROWF (   _fmt_,
  ... 
)
Value:
catch (Exception &e) { HT_THROW2F(e.code(), e, _fmt_, __VA_ARGS__); } \
catch (std::bad_alloc &e) { \
} \
catch (std::exception &e) { \
HT_THROWF(Error::EXTERNAL, "caught std::exception: %s " _fmt_, e.what(), \
__VA_ARGS__); \
} \
catch (...) { \
HT_ERRORF("caught unknown exception " _fmt_, __VA_ARGS__); \
throw; \
}
#define HT_THROW2F(_code_, _ex_, _fmt_,...)
Definition: Error.h:494
#define HT_THROWF(_code_, _fmt_,...)
Definition: Error.h:490
#define HT_ERRORF(msg,...)
Definition: Logger.h:300

Definition at line 499 of file Error.h.

#define HT_TCLHASH_DO2 (   p,
 
)    ret += (ret << 3) + p[i]; ret += (ret << 3) + p[i+1]

Definition at line 71 of file TclHash.h.

#define HT_TCLHASH_DO4 (   p,
 
)    HT_TCLHASH_DO2(p, i); HT_TCLHASH_DO2(p, i+2);

Definition at line 74 of file TclHash.h.

#define HT_TCLHASH_DO8 (   p,
 
)    HT_TCLHASH_DO4(p, i); HT_TCLHASH_DO4(p, i+4);

Definition at line 75 of file TclHash.h.

#define HT_THREAD_ID_DECL (   _var_)

Definition at line 41 of file Thread.h.

#define HT_THREAD_ID_SET (   _var_)

Definition at line 42 of file Thread.h.

#define HT_THROW (   _code_,
  _msg_ 
)    throw HT_EXCEPTION(_code_, _msg_)

Definition at line 478 of file Error.h.

#define HT_THROW2 (   _code_,
  _ex_,
  _msg_ 
)    throw HT_EXCEPTION2(_code_, _ex_, _msg_)

Definition at line 484 of file Error.h.

#define HT_THROW2_ (   _code_,
  _ex_ 
)    HT_THROW2(_code_, _ex_, "")

Definition at line 487 of file Error.h.

#define HT_THROW2F (   _code_,
  _ex_,
  _fmt_,
  ... 
)    throw HT_EXCEPTION2(_code_, _ex_, Hypertable::format(_fmt_, __VA_ARGS__))

Definition at line 494 of file Error.h.

#define HT_THROW_ (   _code_)    HT_THROW(_code_, "")

Definition at line 481 of file Error.h.

#define HT_THROWF (   _code_,
  _fmt_,
  ... 
)    throw HT_EXCEPTION(_code_, Hypertable::format(_fmt_, __VA_ARGS__))

Definition at line 490 of file Error.h.

#define HT_TRY (   _s_,
  _code_ 
)
Value:
do { \
try { _code_; } \
} while (0)
#define HT_RETHROW(_s_)
Definition: Error.h:514

Definition at line 517 of file Error.h.

#define HT_TRY_OR_LOG (   _s_,
  _code_ 
)
Value:
do { \
try { _code_; } \
} while (0)
#define HT_LOG_EXCEPTION(_s_)
Definition: Error.h:523

Definition at line 533 of file Error.h.

#define HT_UNUSED (   x)    static_cast<void>(x)

Definition at line 50 of file Compat.h.

Typedef Documentation

Definition at line 284 of file BloomFilter.h.

Definition at line 318 of file BloomFilterWithChecksum.h.

typedef PageArena<unsigned char> Hypertable::ByteArena

Definition at line 361 of file PageArena.h.

typedef PageArena Hypertable::CharArena

Definition at line 360 of file PageArena.h.

typedef std::set<const char *, LtCstr> CstrSet

STL Set managing c-style strings.

Definition at line 52 of file StringExt.h.

typedef std::map<const char *, int32_t, LtCstr> CstrToInt32Map

STL map from c-style string to int32_t.

Definition at line 55 of file StringExt.h.

typedef std::map<const char *, int64_t, LtCstr> CstrToInt64MapT

STL map from c-style string to int64_t.

Definition at line 58 of file StringExt.h.

typedef Cons<TestPolicy, DefaultPolicy> Hypertable::Config::DefaultTestPolicy

Definition at line 218 of file TestUtils.h.

typedef PropertiesDesc Hypertable::Config::Desc

Definition at line 44 of file Config.h.

typedef std::shared_ptr<DiscreteRandomGenerator> Hypertable::DiscreteRandomGeneratorPtr

Definition at line 134 of file DiscreteRandomGenerator.h.

typedef std::vector<double> Hypertable::Doubles

Definition at line 150 of file Properties.h.

typedef std::shared_ptr<DynamicBuffer> Hypertable::DynamicBufferPtr

Definition at line 207 of file DynamicBuffer.h.

typedef std::shared_ptr<Filesystem> Hypertable::FilesystemPtr

Smart pointer to Filesystem.

Definition at line 572 of file Filesystem.h.

typedef NumericSignedFormatter<int16_t> Hypertable::Int16Formatter

Definition at line 247 of file String.h.

typedef NumericSignedFormatter<int32_t> Hypertable::Int32Formatter

Definition at line 248 of file String.h.

typedef NumericSignedFormatter<int64_t> Hypertable::Int64Formatter

Definition at line 249 of file String.h.

typedef std::vector<int64_t> Hypertable::Int64s

Definition at line 149 of file Properties.h.

typedef NumericSignedFormatter<int8_t> Hypertable::Int8Formatter

Definition at line 246 of file String.h.

typedef long long int Hypertable::Lld

Shortcut for printf formats.

Definition at line 53 of file String.h.

typedef long long unsigned int Hypertable::Llu

Shortcut for printf formats.

Definition at line 50 of file String.h.

typedef long unsigned int Hypertable::Lu

Shortcut for printf formats.

Definition at line 47 of file String.h.

typedef std::shared_ptr<MetricsCollectorGanglia> Hypertable::MetricsCollectorGangliaPtr

Smart pointer to MetricsCollectorGanglia.

Definition at line 144 of file MetricsCollectorGanglia.h.

typedef Po::positional_options_description Hypertable::PositionalDesc

Definition at line 201 of file Properties.h.

typedef Po::options_description Hypertable::PropertiesDesc

Definition at line 200 of file Properties.h.

typedef std::shared_ptr<Properties> Hypertable::PropertiesPtr

Definition at line 447 of file Properties.h.

typedef const ScopeGuardImplBase& Hypertable::ScopeGuard

Definition at line 68 of file ScopeGuard.h.

typedef std::unordered_map<String, failure_inducer_state *> Hypertable::FailureInducer::StateMap
private

Definition at line 120 of file FailureInducer.h.

typedef std::shared_ptr<StaticBuffer> Hypertable::StaticBufferPtr

Smart pointer to StaticBuffer.

Definition at line 232 of file StaticBuffer.h.

typedef std::shared_ptr<StatsSystem> Hypertable::StatsSystemPtr

Definition at line 150 of file StatsSystem.h.

typedef PageArena<uint8_t, DefaultPageAllocator> Hypertable::StlArena

Definition at line 35 of file StlAllocator.h.

typedef std::string Hypertable::String

A String is simply a typedef to std::string.

In the future we might want to use something better later, as std::string always causes a heap allocation, and is lacking in functionalities cf. http://www.and.org/vstr/comparison

Definition at line 44 of file String.h.

typedef std::vector<String> Hypertable::Strings

Definition at line 148 of file Properties.h.

typedef std::set<String> StringSet

STL Set managing Strings.

Definition at line 42 of file StringExt.h.

typedef boost::thread Hypertable::Thread

Definition at line 45 of file Thread.h.

typedef boost::thread_group Hypertable::ThreadGroup

Definition at line 46 of file Thread.h.

typedef NumericUnsignedFormatter<uint16_t> Hypertable::UInt16Formatter

Definition at line 242 of file String.h.

typedef NumericUnsignedFormatter<uint32_t> Hypertable::UInt32Formatter

Definition at line 243 of file String.h.

typedef NumericUnsignedFormatter<uint64_t> Hypertable::UInt64Formatter

Definition at line 244 of file String.h.

typedef NumericUnsignedFormatter<uint8_t> Hypertable::UInt8Formatter

Definition at line 241 of file String.h.

typedef std::shared_ptr<WordStream> Hypertable::WordStreamPtr

Definition at line 106 of file WordStream.h.

Enumeration Type Documentation

anonymous enum
Enumerator
EMERG 
FATAL 
ALERT 
CRIT 
ERROR 
WARN 
NOTICE 
INFO 
DEBUG 
NOTSET 

Definition at line 53 of file Logger.h.

template<typename CharT = char, class PageAllocatorT = DefaultPageAllocator>
anonymous enum
private

The default page size is 8 kb.

Enumerator
DEFAULT_PAGE_SIZE 

Definition at line 72 of file PageArena.h.

template<typename CharT = char, class PageAllocatorT = DefaultPageAllocator>
anonymous enum
Enumerator
SIZE 

Definition at line 129 of file PageArena.h.

template<class T >
anonymous enum
private
Enumerator
BUFFER_SIZE 

Definition at line 220 of file String.h.

All statistics categories that are provided by this class.

Enumerator
CPUINFO 
CPU 
LOADAVG 
MEMORY 
DISK 
SWAP 
NETINFO 
NET 
OSINFO 
PROCINFO 
PROC 
FS 
TERMINFO 

Definition at line 46 of file StatsSystem.h.

Enumerator
UNPOSSIBLE 
EXTERNAL 
FAILED_EXPECTATION 
OK 
PROTOCOL_ERROR 
REQUEST_TRUNCATED 
RESPONSE_TRUNCATED 
REQUEST_TIMEOUT 
LOCAL_IO_ERROR 
BAD_ROOT_LOCATION 
BAD_SCHEMA 
INVALID_METADATA 
BAD_KEY 
METADATA_NOT_FOUND 
HQL_PARSE_ERROR 
FILE_NOT_FOUND 
BLOCK_COMPRESSOR_UNSUPPORTED_TYPE 
BLOCK_COMPRESSOR_INVALID_ARG 
BLOCK_COMPRESSOR_TRUNCATED 
BLOCK_COMPRESSOR_BAD_HEADER 
BLOCK_COMPRESSOR_BAD_MAGIC 
BLOCK_COMPRESSOR_CHECKSUM_MISMATCH 
BLOCK_COMPRESSOR_DEFLATE_ERROR 
BLOCK_COMPRESSOR_INFLATE_ERROR 
BLOCK_COMPRESSOR_INIT_ERROR 
TABLE_NOT_FOUND 
MALFORMED_REQUEST 
TOO_MANY_COLUMNS 
BAD_DOMAIN_NAME 
COMMAND_PARSE_ERROR 
CONNECT_ERROR_MASTER 
CONNECT_ERROR_HYPERSPACE 
BAD_MEMORY_ALLOCATION 
BAD_SCAN_SPEC 
NOT_IMPLEMENTED 
VERSION_MISMATCH 
CANCELLED 
SCHEMA_PARSE_ERROR 
SYNTAX_ERROR 
DOUBLE_UNGET 
EMPTY_BLOOMFILTER 
BLOOMFILTER_CHECKSUM_MISMATCH 
NAME_ALREADY_IN_USE 
NAMESPACE_DOES_NOT_EXIST 
BAD_NAMESPACE 
NAMESPACE_EXISTS 
NO_RESPONSE 
NOT_ALLOWED 
INDUCED_FAILURE 
SERVER_SHUTTING_DOWN 
LOCATION_UNASSIGNED 
ALREADY_EXISTS 
CHECKSUM_MISMATCH 
CLOSED 
RANGESERVER_NOT_FOUND 
CONNECTION_NOT_INITIALIZED 
DUPLICATE_RANGE 
INVALID_PSEUDO_TABLE_NAME 
BAD_FORMAT 
INVALID_ARGUMENT 
INVALID_OPERATION 
UNSUPPORTED_OPERATION 
COLUMN_FAMILY_NOT_FOUND 
NOTHING_TO_DO 
INCOMPATIBLE_OPTIONS 
BAD_VALUE 
SCHEMA_GENERATION_MISMATCH 
INVALID_METHOD_IDENTIFIER 
SERVER_NOT_READY 
CONFIG_BAD_ARGUMENT 
CONFIG_BAD_CFG_FILE 
CONFIG_GET_ERROR 
CONFIG_BAD_VALUE 
COMM_NOT_CONNECTED 
COMM_BROKEN_CONNECTION 
COMM_CONNECT_ERROR 
COMM_ALREADY_CONNECTED 
COMM_SEND_ERROR 
COMM_RECEIVE_ERROR 
COMM_POLL_ERROR 
COMM_CONFLICTING_ADDRESS 
COMM_SOCKET_ERROR 
COMM_BIND_ERROR 
COMM_LISTEN_ERROR 
COMM_HEADER_CHECKSUM_MISMATCH 
COMM_PAYLOAD_CHECKSUM_MISMATCH 
COMM_BAD_HEADER 
COMM_INVALID_PROXY 
FSBROKER_BAD_FILE_HANDLE 
FSBROKER_IO_ERROR 
FSBROKER_FILE_NOT_FOUND 
FSBROKER_BAD_FILENAME 
FSBROKER_PERMISSION_DENIED 
FSBROKER_INVALID_ARGUMENT 
FSBROKER_INVALID_CONFIG 
FSBROKER_EOF 
HYPERSPACE_IO_ERROR 
HYPERSPACE_CREATE_FAILED 
HYPERSPACE_FILE_NOT_FOUND 
HYPERSPACE_ATTR_NOT_FOUND 
HYPERSPACE_DELETE_ERROR 
HYPERSPACE_BAD_PATHNAME 
HYPERSPACE_PERMISSION_DENIED 
HYPERSPACE_EXPIRED_SESSION 
HYPERSPACE_FILE_EXISTS 
HYPERSPACE_IS_DIRECTORY 
HYPERSPACE_INVALID_HANDLE 
HYPERSPACE_REQUEST_CANCELLED 
HYPERSPACE_MODE_RESTRICTION 
HYPERSPACE_ALREADY_LOCKED 
HYPERSPACE_LOCK_CONFLICT 
HYPERSPACE_NOT_LOCKED 
HYPERSPACE_BAD_ATTRIBUTE 
HYPERSPACE_BERKELEYDB_ERROR 
HYPERSPACE_DIR_NOT_EMPTY 
HYPERSPACE_BERKELEYDB_DEADLOCK 
HYPERSPACE_BERKELEYDB_REP_HANDLE_DEAD 
HYPERSPACE_FILE_OPEN 
HYPERSPACE_CLI_PARSE_ERROR 
HYPERSPACE_CREATE_SESSION_FAILED 
HYPERSPACE_NOT_MASTER_LOCATION 
HYPERSPACE_STATEDB_ERROR 
HYPERSPACE_STATEDB_DEADLOCK 
HYPERSPACE_STATEDB_BAD_KEY 
HYPERSPACE_STATEDB_BAD_VALUE 
HYPERSPACE_STATEDB_ALREADY_DELETED 
HYPERSPACE_STATEDB_EVENT_EXISTS 
HYPERSPACE_STATEDB_EVENT_NOT_EXISTS 
HYPERSPACE_STATEDB_EVENT_ATTR_NOT_FOUND 
HYPERSPACE_STATEDB_SESSION_EXISTS 
HYPERSPACE_STATEDB_SESSION_NOT_EXISTS 
HYPERSPACE_STATEDB_SESSION_ATTR_NOT_FOUND 
HYPERSPACE_STATEDB_HANDLE_EXISTS 
HYPERSPACE_STATEDB_HANDLE_NOT_EXISTS 
HYPERSPACE_STATEDB_HANDLE_ATTR_NOT_FOUND 
HYPERSPACE_STATEDB_NODE_EXISTS 
HYPERSPACE_STATEDB_NODE_NOT_EXISTS 
HYPERSPACE_STATEDB_NODE_ATTR_NOT_FOUND 
HYPERSPACE_VERSION_MISMATCH 
MASTER_TABLE_EXISTS 
MASTER_BAD_SCHEMA 
MASTER_NOT_RUNNING 
MASTER_NO_RANGESERVERS 
MASTER_FILE_NOT_LOCKED 
MASTER_RANGESERVER_ALREADY_REGISTERED 
MASTER_BAD_COLUMN_FAMILY 
MASTER_SCHEMA_GENERATION_MISMATCH 
MASTER_LOCATION_ALREADY_ASSIGNED 
MASTER_LOCATION_INVALID 
MASTER_OPERATION_IN_PROGRESS 
MASTER_RANGESERVER_IN_RECOVERY 
MASTER_BALANCE_PREVENTED 
RANGESERVER_GENERATION_MISMATCH 
RANGESERVER_RANGE_ALREADY_LOADED 
RANGESERVER_RANGE_MISMATCH 
RANGESERVER_NONEXISTENT_RANGE 
RANGESERVER_OUT_OF_RANGE 
RANGESERVER_RANGE_NOT_FOUND 
RANGESERVER_INVALID_SCANNER_ID 
RANGESERVER_SCHEMA_PARSE_ERROR 
RANGESERVER_SCHEMA_INVALID_CFID 
RANGESERVER_INVALID_COLUMNFAMILY 
RANGESERVER_TRUNCATED_COMMIT_LOG 
RANGESERVER_NO_METADATA_FOR_RANGE 
RANGESERVER_SHUTTING_DOWN 
RANGESERVER_CORRUPT_COMMIT_LOG 
RANGESERVER_UNAVAILABLE 
RANGESERVER_REVISION_ORDER_ERROR 
RANGESERVER_ROW_OVERFLOW 
RANGESERVER_TABLE_NOT_FOUND 
RANGESERVER_BAD_SCAN_SPEC 
RANGESERVER_CLOCK_SKEW 
RANGESERVER_BAD_CELLSTORE_FILENAME 
RANGESERVER_CORRUPT_CELLSTORE 
RANGESERVER_TABLE_DROPPED 
RANGESERVER_UNEXPECTED_TABLE_ID 
RANGESERVER_RANGE_BUSY 
RANGESERVER_BAD_CELL_INTERVAL 
RANGESERVER_SHORT_CELLSTORE_READ 
RANGESERVER_RANGE_NOT_ACTIVE 
RANGESERVER_FRAGMENT_ALREADY_PROCESSED 
RANGESERVER_RECOVERY_PLAN_GENERATION_MISMATCH 
RANGESERVER_PHANTOM_RANGE_MAP_NOT_FOUND 
RANGESERVER_RANGES_ALREADY_LIVE 
RANGESERVER_RANGE_NOT_YET_ACKNOWLEDGED 
RANGESERVER_SERVER_IN_READONLY_MODE 
RANGESERVER_RANGE_NOT_YET_RELINQUISHED 
HQL_BAD_LOAD_FILE_FORMAT 
HQL_BAD_COMMAND 
METALOG_ERROR 
METALOG_VERSION_MISMATCH 
METALOG_BAD_RS_HEADER 
METALOG_BAD_HEADER 
METALOG_ENTRY_TRUNCATED 
METALOG_CHECKSUM_MISMATCH 
METALOG_ENTRY_BAD_TYPE 
METALOG_ENTRY_BAD_ORDER 
METALOG_MISSING_RECOVER_ENTITY 
METALOG_BACKUP_FILE_MISMATCH 
METALOG_READ_ERROR 
SERIALIZATION_INPUT_OVERRUN 
SERIALIZATION_BAD_VINT 
SERIALIZATION_BAD_VSTR 
SERIALIZATION_VERSION_MISMATCH 
THRIFTBROKER_BAD_SCANNER_ID 
THRIFTBROKER_BAD_MUTATOR_ID 
THRIFTBROKER_BAD_NAMESPACE_ID 
THRIFTBROKER_BAD_FUTURE_ID 

Definition at line 43 of file Error.h.

enum Hypertable::Status::Code : int32_t
strong

Enumeration for status codes.

Enumerator
OK 

OK.

WARNING 

Warning.

CRITICAL 

Critical.

UNKNOWN 

Unknown.

Definition at line 47 of file Status.h.

enum Hypertable::Filesystem::Flags : uint8_t
strong

Enumeration type for append flags.

Enumerator
NONE 

None.

FLUSH 

Flush.

SYNC 

Sync.

Definition at line 76 of file Filesystem.h.

Statistics identifer; assigned in constructor.

Enumerator
SYSTEM 
RANGE 
TABLE 
RANGE_SERVER 

Definition at line 81 of file StatsSerializable.h.

Enumerator
OPEN_FLAG_DIRECTIO 
OPEN_FLAG_OVERWRITE 
OPEN_FLAG_VERIFY_CHECKSUM 

Definition at line 85 of file Filesystem.h.

Function Documentation

template<class _Key , class _Tp , class _Compare , class _Allocator >
directory< _Key, _Tp, _Compare, _Allocator >::__node_pointer Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::__create_node ( )
private

Definition at line 766 of file directory.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
template<class... _Args>
directory< _Key, _Tp, _Compare, _Allocator >::__node_pointer Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::__create_node ( _Args &&...  __args)
private

Definition at line 798 of file directory.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
void Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::__destroy_node ( __node np)
private

Definition at line 807 of file directory.h.

void Hypertable::TestStat::add ( double  x)
inline

Definition at line 92 of file TestUtils.h.

void Hypertable::Config::alias ( const String &  cmdline_opt,
const String &  file_opt,
bool  overwrite = false 
)

Setup command line option alias for config file option.

Typically used in policy init_options functions. The command line option has higher priority.

Requires use of sync_alias() afterwards.

Parameters
cmdline_optCommand line option name
file_optConfiguration file option name
overwriteIf true then existing aliases are overwritten

Definition at line 607 of file Config.cc.

bool Hypertable::Config::allow_unregistered_options ( bool  choice)

Toggle allow unregistered options.

By default unregistered options are not allowed.

Parameters
choiceIf true then unregistered options are allowed, otherwise not
Returns
The previous value

Definition at line 654 of file Config.cc.

bool Hypertable::Config::allow_unregistered_options ( )

Returns true if unregistered options are allowed.

Returns
true if unregistered options are allowed, otherwise false

Definition at line 661 of file Config.cc.

void Hypertable::append_as_byte_string ( DynamicBuffer &  dst_buf,
const void *  value,
uint32_t  value_len 
)
inline

Serializes and appends a byte array to a DynamicBuffer object.

Parameters
dst_bufThe DynamicBuffer which will receive the data
valueA pointer to the data which is appended
value_lenThe size of the data, in bytes

Definition at line 130 of file ByteString.h.

void Hypertable::append_as_byte_string ( DynamicBuffer &  dst_buf,
const char *  str 
)
inline

Serializes and appends a string to a DynamicBuffer object.

Parameters
dst_bufThe DynamicBuffer which will receive the data
strA pointer to a zero-terminated buffer with the data

Definition at line 146 of file ByteString.h.

template<class HasherT = MurmurHash2>
uint8_t* Hypertable::BasicBloomFilterWithChecksum< HasherT >::base ( )
inline

Getter for the serialized bloom filter data, including metadata and checksums.

Returns
pointer to the serialized bloom filter data

Definition at line 232 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
Hypertable::BasicBloomFilterWithChecksum< HasherT >::BasicBloomFilterWithChecksum ( size_t  items_estimate,
float  false_positive_prob 
)
inline

Constructor.

Parameters
items_estimateAn estimated number of items that will be inserted
false_positive_probThe probability for false positives

Definition at line 62 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
Hypertable::BasicBloomFilterWithChecksum< HasherT >::BasicBloomFilterWithChecksum ( size_t  items_estimate,
float  bits_per_item,
size_t  num_hashes 
)
inline

Alternative constructor.

Parameters
items_estimateAn estimated number of items that will be inserted
bits_per_itemAverage bits per item
num_hashesNumber of hash functions for the filter

Definition at line 92 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
Hypertable::BasicBloomFilterWithChecksum< HasherT >::BasicBloomFilterWithChecksum ( size_t  items_estimate,
size_t  items_actual,
int64_t  length,
size_t  num_hashes 
)
inline

Alternative constructor.

Parameters
items_estimateAn estimated number of items that will be inserted
items_actualActual number of items
lengthNumber of bits
num_hashesNumber of hash functions for the filter

Definition at line 121 of file BloomFilterWithChecksum.h.

template<class T >
RefHolder<T> Hypertable::by_ref ( T &  t)
inline

Definition at line 286 of file ScopeGuard.h.

void Hypertable::Config::cleanup ( )

Free all resources used.

Definition at line 666 of file Config.cc.

void FailureInducer::clear ( )

Clears the failure inducer.

Definition at line 106 of file FailureInducer.cc.

Desc & Hypertable::Config::cmdline_desc ( const char *  usage = nullptr)

A macro which definds global functions like get_bool(), get_str(), get_i16() etc.

See also
Properties.h Get the command line options description
Parameters
usageOptional usage string (first time)
Returns
Reference to the Description object

Definition at line 72 of file Config.cc.

void Hypertable::Config::cmdline_desc ( const Desc &  desc)

Set the command line options description.

Parameters
descReference to the Description object

Definition at line 99 of file Config.cc.

Desc & Hypertable::Config::cmdline_hidden_desc ( )

Get the command line hidden options description (for positional options)

Returns
desc Reference to the hidden description object

Definition at line 81 of file Config.cc.

PositionalDesc & Hypertable::Config::cmdline_positional_desc ( )

Get the command line positional options description.

Returns
Reference to the positional escription object

Definition at line 90 of file Config.cc.

Filesystem::Flags Hypertable::convert ( std::string  str)

Converts string mnemonic to corresponding Filesystem::Flags value.

Parameters
strString mnemonic for append flag ("NONE", "FLUSH", or "SYNC")
Returns
Append flag corresponding to string mnemonic
Exceptions
Exceptionwith code equal to Error::INVALID_ARGUMENT if string mnemonic is not recognized

Definition at line 180 of file Filesystem.cc.

bool Hypertable::Serialization::decode_bool ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Decodes a boolean value from the given buffer.

Increments buffer pointer and decrements remainp on success.

Parameters
bufpPointer to the source buffer pointer
remainpPointer to number of bytes remaining in buffer
Returns
The boolean value

Definition at line 96 of file Serialization.h.

uint8_t Hypertable::Serialization::decode_byte ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Decodes a single byte from the given buffer.

Increments buffer pointer and decrements remainp on success.

Parameters
bufpPointer to the source buffer pointer
remainpPointer to the number of bytes remaining in buffer
Returns
The byte value

Definition at line 73 of file Serialization.h.

uint8_t* Hypertable::Serialization::decode_bytes32 ( const uint8_t **  bufp,
size_t *  remainp,
uint32_t *  lenp 
)
inline

Decodes a variable sized byte array from the given buffer.

Byte array i encoded as a 4 byte length followed by the data. Increments buffer pointer and decrements remainp on success.

Parameters
bufpAddress of buffer containing encoded byte array
remainpAddress of variable containing number of bytes remaining
lenpAddress of length of decoded byte array

Definition at line 287 of file Serialization.h.

double Hypertable::Serialization::decode_double ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Decodes a double as 64-bit left-of-decimal, followed by 64-bit right-of-decimal, both in little-endian order.

Parameters
bufpPointer to pointer of the source buffer
remainpPointer to remaining size variable
Returns
The decoded value

Definition at line 577 of file Serialization.h.

uint16_t Hypertable::Serialization::decode_i16 ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Decode a 16-bit integer in little-endian order.

Parameters
bufpPointer to the source buffer pointer
remainpPointer to the remaining size variable
Returns
The decoded value

Definition at line 117 of file Serialization.h.

uint32_t Hypertable::Serialization::decode_i32 ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Decode a 32-bit integer in little-endian order.

Parameters
bufpPointer to the source buffer pointer
remainpPointer to the remaining size variable
Returns
The decoded value

Definition at line 140 of file Serialization.h.

uint64_t Hypertable::Serialization::decode_i64 ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Decode a 64-bit integer in little-endian order.

Parameters
bufpPointer to the source buffer pointer
remainpPointer to the remaining size variable
Returns
The decoded value

Definition at line 163 of file Serialization.h.

uint8_t Hypertable::Serialization::decode_i8 ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Decode a 8-bit integer (a byte/character)

Parameters
bufpThe pointer to the source buffer
remainpThe pointer to the remaining size variable
Returns
The decoded value

Definition at line 60 of file Serialization.h.

InetAddr Hypertable::Serialization::decode_inet_addr ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Decode an InetAddr structure.

Parameters
bufpPointer to pointer of the source buffer
remainpPointer to remaining size variable
Returns
The decoded InetAddr object

Definition at line 545 of file Serialization.h.

StringT Hypertable::Serialization::decode_str16 ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Decodes a c-style string from the given buffer.

Decodes a str16 from the given buffer to a String.

The encoding of the string is a 2 byte length followed by the string, followed by a '\0' termination byte. The length does not include the '\0' terminator. The decoded string pointer points back into the encoding buffer. Increments buffer pointer and decrements remainp on success.

Parameters
bufpPointer to pointer of buffer containing encoded string
remainpAddress of variable of number of bytes remaining in buffer
Returns
Pointer to a c-style string

The encoding of the string is a 2 byte length followed by the string, followed by a '\0' termination byte. The length does not include the '\0' terminator. Increments buffer pointer and decrements remainp on success.

Parameters
bufpPointer to pointer of buffer containing encoded string
remainpAddress of variable of number of bytes remaining in buffer
Returns
True on success, false if buffer has insufficient room

Definition at line 370 of file Serialization.h.

char* Hypertable::Serialization::decode_str16 ( const uint8_t **  bufp,
size_t *  remainp,
uint16_t *  lenp 
)
inline

Decodes a c-style string from the given buffer.

The encoding of the string is a 2 byte length followed by the string, followed by a '\0' termination byte. The length does not include the '\0' terminator. The decoded string pointer points back into the encoding buffer. Increments buffer pointer and decrements remainp on success.

Parameters
bufpPointer to pointer of buffer containing encoded string
remainpAddress of variable of number of bytes remaining in buffer
lenpAddress of varaible to hold the len of the string
Returns
Pointer to a c-style string

Definition at line 389 of file Serialization.h.

uint32_t Hypertable::Serialization::decode_vi32 ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Decode a variable length encoded integer up to 32-bit.

Parameters
bufpPointer to the source buffer pointer
remainpPointer to the remaining size variable
Returns
The decoded value

Definition at line 216 of file Serialization.h.

uint32_t Hypertable::Serialization::decode_vi32 ( const uint8_t **  bufp)
inline

Decode a variable length encoded integer up to 32-bit.

Parameters
bufpPointer to the source buffer pointer
Returns
The decoded value

Definition at line 239 of file Serialization.h.

uint64_t Hypertable::Serialization::decode_vi64 ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Decode a variable length encoded integer up to 64-bit.

Parameters
bufpPointer to the source buffer pointer
remainpPointer to the remaining size variable
Returns
The decoded value

Definition at line 228 of file Serialization.h.

uint64_t Hypertable::Serialization::decode_vi64 ( const uint8_t **  bufp)
inline

Decode a variable length encoded integer up to 64-bit.

Parameters
bufpPointer to the source buffer pointer
Returns
The decoded value

Definition at line 250 of file Serialization.h.

String Hypertable::Serialization::decode_vstr ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Decode a vstr (vint64, data, null).

Decode a vstr (vint64, data, null)

Note: decoding a vstr longer than 4GiB on a 32-bit platform is obviously futile (throws bad vstr exception)

Parameters
bufpPointer to pointer of the source buffer
remainpPointer to the remaining size variable
Returns
Pointer to the decoded string data
Parameters
bufpPointer to pointer of the source buffer
remainpPointer to the remaining size variable
Returns
The decoded string

Definition at line 487 of file Serialization.h.

char* Hypertable::Serialization::decode_vstr ( const uint8_t **  bufp,
size_t *  remainp,
uint32_t *  lenp 
)
inline

Decode a vstr (vint64, data, null)

Parameters
bufpPointer to pointer of the source buffer
remainpPointer to the remaining size variable
lenpPointer to the string length
Returns
Pointer to the decoded string

Definition at line 518 of file Serialization.h.

bool Hypertable::Config::defaulted ( const String &  name)
inline

Check if a configuration value is defaulted.

Parameters
nameThe name of the option
Returns
true if this option's value is the default value

Definition at line 67 of file Config.h.

void Hypertable::destruct ( char *  )
inline

helper functions which call the destructor of an object; destructor is not called on POD types (using template specialization)

There used to be std::destroy's, but they never made it into the final standard.

Definition at line 46 of file Allocator.h.

void Hypertable::destruct ( unsigned char *  )
inline

Definition at line 47 of file Allocator.h.

void Hypertable::destruct ( short *  )
inline

Definition at line 48 of file Allocator.h.

void Hypertable::destruct ( unsigned short *  )
inline

Definition at line 49 of file Allocator.h.

void Hypertable::destruct ( int *  )
inline

Definition at line 50 of file Allocator.h.

void Hypertable::destruct ( unsigned int *  )
inline

Definition at line 51 of file Allocator.h.

void Hypertable::destruct ( long *  )
inline

Definition at line 52 of file Allocator.h.

void Hypertable::destruct ( unsigned long *  )
inline

Definition at line 53 of file Allocator.h.

void Hypertable::destruct ( long long *  )
inline

Definition at line 54 of file Allocator.h.

void Hypertable::destruct ( unsigned long long *  )
inline

Definition at line 55 of file Allocator.h.

void Hypertable::destruct ( float *  )
inline

Definition at line 56 of file Allocator.h.

void Hypertable::destruct ( double *  )
inline

Definition at line 57 of file Allocator.h.

void Hypertable::destruct ( long double *  )
inline

Definition at line 58 of file Allocator.h.

template<typename T >
void Hypertable::destruct ( T *  p)
inline

Definition at line 61 of file Allocator.h.

void digest_to_trunc_modified_base64 ( const char  digest[16],
char  output[17] 
)

Get the modified base64 encoded string of a 16 byte message digest see http://en.wikipedia.org/wiki/Base64#URL_applications for more information.

Parameters
digestThe 16 byte input buffer
outputHex string representation of MD5 checksum

Definition at line 402 of file md5.cc.

template<class _Key , class _Tp , class _Compare , class _Allocator >
Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::directory ( const key_compare __comp)
explicitnoexcept

Definition at line 657 of file directory.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::directory ( const allocator_type __a)
explicit

Definition at line 664 of file directory.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::directory ( const key_compare __comp,
const allocator_type __a 
)

Definition at line 669 of file directory.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::directory ( const directory< _Key, _Tp, _Compare, _Allocator > &  __d)

Definition at line 675 of file directory.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::directory ( directory< _Key, _Tp, _Compare, _Allocator > &&  __d)
noexcept

Definition at line 682 of file directory.h.

static bool Hypertable::FailureInducer::enabled ( )
inlinestatic

Returns true if the FailureInducer is enabled (= if an instance was allocated)

Definition at line 80 of file FailureInducer.h.

void Hypertable::Serialization::encode_bool ( uint8_t **  bufp,
bool  bval 
)
inline

Encodes a boolean into the given buffer.

Assumes there is enough space available. Increments buffer pointer.

Parameters
bufpAddress of the destination buffer
bvalThe boolean value

Definition at line 84 of file Serialization.h.

void Hypertable::Serialization::encode_bytes32 ( uint8_t **  bufp,
const void *  data,
int32_t  len 
)
inline

Encodes a variable sized byte array into the given buffer.

Encoded as a 4 byte length followed by the data. Assumes there is enough space available. Increments buffer pointer.

Parameters
bufpAddress of the destination buffer
dataPointer to array of bytes
lenThe length of the byte array

Definition at line 274 of file Serialization.h.

void Hypertable::Serialization::encode_double ( uint8_t **  bufp,
double  val 
)
inline

Encodes a double with 18 decimal digits of precision as 64-bit left-of-decimal, followed by 64-bit right-of-decimal, both in little-endian order.

Parameters
bufpPointer to the destination buffer
valThe double to encode

Definition at line 562 of file Serialization.h.

void Hypertable::Serialization::encode_i16 ( uint8_t **  bufp,
uint16_t  val 
)
inline

Encode a 16-bit integer in little-endian order.

Parameters
bufpPointer to the destination buffer
valThe value to encode

Definition at line 106 of file Serialization.h.

void Hypertable::Serialization::encode_i32 ( uint8_t **  bufp,
uint32_t  val 
)
inline

Encode a 32-bit integer in little-endian order.

Parameters
bufpPointer to the destination buffer pointer
valThe value to encode

Definition at line 129 of file Serialization.h.

void Hypertable::Serialization::encode_i64 ( uint8_t **  bufp,
uint64_t  val 
)
inline

Encode a 64-bit integer in little-endian order.

Parameters
bufpPointer to the destination buffer pointer
valThe value to encode

Definition at line 152 of file Serialization.h.

void Hypertable::Serialization::encode_i8 ( uint8_t **  bufp,
uint8_t  val 
)
inline

Encodes a byte into the given buffer.

Assumes there is enough space available. Increments buffer pointer.

Parameters
bufpAddress of the destination buffer
valThe byte

Definition at line 49 of file Serialization.h.

void Hypertable::Serialization::encode_inet_addr ( uint8_t **  bufp,
const InetAddr &  addr 
)
inline

Encode an InetAddr structure.

Parameters
bufpPointer to pointer of the destination buffer
addrReference to the InetAddr object to encode

Definition at line 532 of file Serialization.h.

void Hypertable::Serialization::encode_str16 ( uint8_t **  bufp,
const void *  str,
uint16_t  len 
)
inline

Encodes a string buffer into the given buffer.

Encoded as a 2 byte length followed by the string data, followed by a '\0' termination byte. The length value does not include the '\0'. Assumes there is enough space available. Increments buffer pointer.

Parameters
bufpAddress of the destination buffer
strThe c-style string to encode
lenLength of the string

Definition at line 325 of file Serialization.h.

void Hypertable::Serialization::encode_str16 ( uint8_t **  bufp,
const char *  str 
)
inline

Encodes a c-style null-terminated string into the given buffer.

Encoded as a 2 byte length followed by the string data, followed by a '\0' termination byte. The length value does not include the '\0'. Assumes there is enough space available. Increments buffer pointer.

Parameters
bufpPointer to pointer of destination buffer
strThe c-style string to encode

Definition at line 339 of file Serialization.h.

template<class StringT >
void Hypertable::Serialization::encode_str16 ( uint8_t **  bufp,
const StringT &  str 
)
inline

Encodes a string into the given buffer.

Encoded as a 2 byte length followed by the string data, followed by a '\0' termination byte. The length value does not include the '\0'. Assumes there is enough space available. Increments buffer pointer.

Parameters
bufpPointer to pointer of the destinatin buffer
strThe String to encode

Definition at line 355 of file Serialization.h.

void Hypertable::Serialization::encode_vi32 ( uint8_t **  bufp,
uint32_t  val 
)
inline

Encode a integer (up to 32-bit) in variable length encoding.

Parameters
bufpPointer to the destination buffer pointer
valThe value to encode

Definition at line 195 of file Serialization.h.

void Hypertable::Serialization::encode_vi64 ( uint8_t **  bufp,
uint64_t  val 
)
inline

Encode a integer (up to 64-bit) in variable length encoding.

Parameters
bufpThe pointer to the destination buffer pointer
valThe value to encode

Definition at line 205 of file Serialization.h.

void Hypertable::Serialization::encode_vstr ( uint8_t **  bufp,
const void *  buf,
size_t  len 
)
inline

Encode a buffer as variable length string (vint64, data, null)

Parameters
bufpPointer to pointer of destination buffer
bufPointer to the start of the input buffer
lenLength of the input buffer

Definition at line 453 of file Serialization.h.

void Hypertable::Serialization::encode_vstr ( uint8_t **  bufp,
const char *  s 
)
inline

Encode a c-style string as vstr.

Parameters
bufpPointer to pointer of destination buffer
sPointer to the start of the string

Definition at line 463 of file Serialization.h.

template<class StringT >
void Hypertable::Serialization::encode_vstr ( uint8_t **  bufp,
const StringT &  s 
)
inline

Encode a String as vstr.

Parameters
bufpPointer to pointer of destination buffer
sThe string to encode

Definition at line 474 of file Serialization.h.

size_t Hypertable::Serialization::encoded_length_bytes32 ( int32_t  len)
inline

Computes the encoded length of a 32-bit length byte array (i32, bytes)

Parameters
lenLength of the byte array to be encoded
Returns
The encoded length of a byte array of length len

Definition at line 261 of file Serialization.h.

int Hypertable::Serialization::encoded_length_double ( )
inline

Length of an encoded double (16 bytes)

Returns
The number of bytes required to encode a double

Definition at line 589 of file Serialization.h.

size_t Hypertable::Serialization::encoded_length_str16 ( const char *  str)
inline

Computes the encoded length of a string16 encoding.

Parameters
strPointer to the c-style string
Returns
The encoded length of str

Definition at line 300 of file Serialization.h.

size_t Hypertable::Serialization::encoded_length_str16 ( const String &  str)
inline

Computes the encoded length of a String.

Parameters
strReference to string object
Returns
The encoded length of str

Definition at line 310 of file Serialization.h.

int Hypertable::Serialization::encoded_length_vi32 ( uint32_t  val)
inline

Length of a variable length encoded 32-bit integer (up to 5 bytes)

Parameters
valThe 32-bit integer to encode
Returns
The number of bytes required for serializing this number

Definition at line 175 of file Serialization.h.

int Hypertable::Serialization::encoded_length_vi64 ( uint64_t  val)
inline

Length of a variable length encoded 64-bit integer (up to 9 bytes)

Parameters
valThe 64-bit integer to encode
Returns
The number of bytes required for serializing this number

Definition at line 185 of file Serialization.h.

size_t Hypertable::Serialization::encoded_length_vstr ( size_t  len)
inline

Computes the encoded length of vstr (vint64, data, null)

Parameters
lenThe string length
Returns
The encoded length of str

Definition at line 420 of file Serialization.h.

size_t Hypertable::Serialization::encoded_length_vstr ( const char *  s)
inline

Computes the encoded length of vstr.

Assumes that the string length can be encoded in 32-bit integer

Parameters
sPointer to the the c-style string
Returns
The encoded length of s

Definition at line 431 of file Serialization.h.

size_t Hypertable::Serialization::encoded_length_vstr ( const String &  s)
inline

Computes the encoded length of vstr.

Assumes that the string length can be encoded in 32-bit integer

Parameters
sThe string to encode
Returns
The encoded length of s

Definition at line 442 of file Serialization.h.

bool Hypertable::Serialization::equal ( double  a,
double  b 
)
inline

Compare doubles that may have been serialized and unserialized.

The serialization process loses precision, so this function is necessary to compare pre-serialized with post-serialized values

Parameters
aFirst value to compare
bSecond value to compare
Returns
True of values are logically equal, false otherwise

Definition at line 602 of file Serialization.h.

void Hypertable::escape ( String str,
const String escape_chars 
)

Escapes a string.

Parameters
strThe string to escape [in/out]
escape_charsAll characters that are escaped

Definition at line 34 of file Escaper.cc.

bool FailureInducer::failure_signalled ( const String label)

Returns true if a failure was signalled.

This function is usually not invoked directly; use HT_FAILURE_SIGNALLED instead

Definition at line 94 of file FailureInducer.cc.

Desc & Hypertable::Config::file_desc ( const char *  usage = NULL)

Get the config file options description.

Parameters
usage- optional usage string
Returns
Reference to the Description object

Definition at line 108 of file Config.cc.

void Hypertable::Config::file_desc ( const Desc &  desc)

Set the config file options description.

Parameters
descReference to the Description object

Definition at line 118 of file Config.cc.

uint32_t Hypertable::fletcher32 ( const void *  data,
size_t  len 
)

Compute fletcher32 checksum for arbitary data.

See http://en.wikipedia.org/wiki/Fletcher%27s_checksum for more information about the algorithm. Fletcher32 is the default checksum used in Hypertable.

Parameters
dataPointer to the input data
lenInput data length in bytes
Returns
The calculated checksum

Definition at line 42 of file Checksum.cc.

String Hypertable::format ( const char *  fmt,
  ... 
)

Returns a String using printf like format facilities Vanilla snprintf is about 1.5x faster than this, which is about: 10x faster than boost::format; 1.5x faster than std::string append (operator+=); 3.5x faster than std::string operator+;.

Parameters
fmtA printf-like format string
Returns
A new String with the formatted text

Definition at line 37 of file String.cc.

String Hypertable::format_bytes ( size_t  n,
const void *  buf,
size_t  len,
const char *  trailer = "..." 
)

Return first n bytes of buffer with an optional trailer if the size of the buffer exceeds n.

Parameters
nThe max. displayed size of the buffer
bufThe memory buffer
lenThe size of the memory buffer
trailerAppended if len exceeds n
Returns
A new String with the formatted text

Definition at line 103 of file String.cc.

template<class SequenceT >
String Hypertable::format_list ( const SequenceT &  seq,
const char *  sep = ", " 
)

Return a string presentation of a sequence.

Is quite slow but versatile, as it uses ostringstream.

Parameters
seqA STL-compatible sequence with forward-directional iterators
sepA separator which is inserted after each list item
Returns
A new String with the formatted text

Definition at line 99 of file String.h.

String String Hypertable::format_number ( int64_t  n,
int  sep = ',' 
)

Return decimal number string separated by a separator (default: comma) for every 3 digits.

Only 10-15% slower than sprintf("%lld", n);

Parameters
nThe 64-bit number
sepThe separator for every 3 digits
Returns
A new String with the formatted text

Definition at line 73 of file String.cc.

LogWriter * Hypertable::Logger::get ( )

Accessor for the LogWriter singleton instance.

Definition at line 49 of file Logger.cc.

template<typename T >
T Hypertable::Config::get ( const String &  name)

Retrieves a configuration value.

This is a template function and usually not used directly. The file Properties.h provides global functions like get_bool(), get_string() that are usually used.

Parameters
nameThe name of the option
Returns
The option's value

Definition at line 82 of file Config.h.

template<typename T >
T Hypertable::Config::get ( const String &  name,
const T &  default_value 
)

Retrieves a configuration value (or a default value, if the value was not set)

Parameters
nameThe name of the option
default_valueThe default value which is returned if the value was not set
Returns
The option's value

Definition at line 96 of file Config.h.

size_t Hypertable::get_align_offset ( void *  p)
inline

Convenience function returning a size aligned to 8 or 4 bytes, depending on the system's architecture.

Definition at line 66 of file Allocator.h.

template<class HasherT = MurmurHash2>
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::get_items_actual ( )
inline

Getter for the actual number of items.

Returns
The actual number of items

Definition at line 287 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::get_items_estimate ( )
inline

Getter for the estimated number of items.

Returns
The estimated number of items

Definition at line 281 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::get_length_bits ( )
inline

Getter for the number of bits.

Returns
The number of bits

Definition at line 275 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::get_num_hashes ( )
inline

Getter for the number of hash functions.

Returns
The number of hash functions

Definition at line 269 of file BloomFilterWithChecksum.h.

int64_t Hypertable::get_ts64 ( )

Returns the current time in nanoseconds as a 64bit number.

Definition at line 40 of file Time.cc.

bool Hypertable::Config::has ( const String &  name)
inline

Check existence of a configuration value.

Parameters
nameThe name of the option to search for
Returns
true if there is an option with this name

Definition at line 57 of file Config.h.

size_t Hypertable::hash_case_cstr ( const char *  s)
inline

Definition at line 58 of file CstrHashTraits.h.

std::ostream & Hypertable::hires_ts ( ostream &  out)

Prints the current time as seconds and nanoseconds, delimited by '.'.

Definition at line 45 of file Time.cc.

void Hypertable::Config::init ( int  argc,
char *  argv[],
const Desc *  desc = NULL 
)
inline

Initialize with default policy.

Parameters
argcThe argc parameter of the main() function
argvThe argv parameter of the main() function
descOptional command option descriptor

Definition at line 95 of file Init.h.

template<class PolicyListT >
void Hypertable::Config::init_with_policies ( int  argc,
char *  argv[],
const Desc *  desc = 0 
)
inline

Convenience function (more of a demo) to init with a list of polices.

See also
init_with
Parameters
argcThe argc parameter of the main() function
argvThe argv parameter of the main() function
descOptional command option descriptor

Definition at line 84 of file Init.h.

template<class PolicyT >
void Hypertable::Config::init_with_policy ( int  argc,
char *  argv[],
const Desc *  desc = 0 
)
inline

Init with policy (with init_options (called before parse_args) and init (called after parse_args) methods.

The Policy template class is usually a list of configuration policies, i.e.

typedef Meta::list<Policy1, Policy2, ...> MyPolicy;

See also
Config::parse_args for params.
Parameters
argcThe argc parameter of the main() function
argvThe argv parameter of the main() function
descOptional command option descriptor

Definition at line 53 of file Init.h.

void Hypertable::Logger::initialize ( const String &  name)

Public initialization function - creates a singleton instance of LogWriter.

Definition at line 45 of file Logger.cc.

template<class HasherT = MurmurHash2>
void Hypertable::BasicBloomFilterWithChecksum< HasherT >::insert ( const void *  key,
size_t  len 
)
inline

Inserts a new blob into the hash.

Runs through each hash function and sets the appropriate bit for each hash.

Parameters
keyPointer to the key's data
lenSize of the data (in bytes)

Definition at line 162 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
void Hypertable::BasicBloomFilterWithChecksum< HasherT >::insert ( const String key)
inline

Overloaded insert function for Strings.

Parameters
keyReference to the string.

Definition at line 176 of file BloomFilterWithChecksum.h.

template<class _Key, class _Tp, class _Compare = std::less<_Key>, class _Allocator = std::allocator<directory_entry<const _Key, _Tp> >>
template<class _InputIterator >
void Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::insert ( const_iterator  pos,
_InputIterator  __f,
_InputIterator  __l 
)

Definition at line 693 of file directory.h.

template<class _Key, class _Tp, class _Compare = std::less<_Key>, class _Allocator = std::allocator<directory_entry<const _Key, _Tp> >>
template<class _InputIterator >
void Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::insert ( _InputIterator  __f,
_InputIterator  __l 
)

Definition at line 756 of file directory.h.

template<typename FunT >
ScopeGuardImpl0<FunT> Hypertable::make_guard ( FunT  fun)
inline

Definition at line 89 of file ScopeGuard.h.

template<typename FunT , typename P1T >
ScopeGuardImpl1<FunT, P1T> Hypertable::make_guard ( FunT  fun,
P1T  p1 
)
inline

Definition at line 114 of file ScopeGuard.h.

template<typename FunT , typename P1T , typename P2T >
ScopeGuardImpl2<FunT, P1T, P2T> Hypertable::make_guard ( FunT  fun,
P1T  p1,
P2T  p2 
)
inline

Definition at line 140 of file ScopeGuard.h.

template<typename FunT , typename P1T , typename P2T , typename P3T >
ScopeGuardImpl3<FunT, P1T, P2T, P3T> Hypertable::make_guard ( FunT  fun,
P1T  p1,
P2T  p2,
P3T  p3 
)
inline

Definition at line 170 of file ScopeGuard.h.

template<class ObjT , typename MethodT >
ObjScopeGuardImpl0<ObjT, MethodT> Hypertable::make_obj_guard ( ObjT &  obj,
MethodT  method 
)
inline

Definition at line 198 of file ScopeGuard.h.

template<class ObjT , typename MethodT , typename P1T >
ObjScopeGuardImpl1<ObjT, MethodT, P1T> Hypertable::make_obj_guard ( ObjT &  obj,
MethodT  method,
P1T  p1 
)
inline

Definition at line 227 of file ScopeGuard.h.

template<class ObjT , typename MethodT , typename P1T , typename P2T >
ObjScopeGuardImpl2<ObjT, MethodT, P1T, P2T> Hypertable::make_obj_guard ( ObjT &  obj,
MethodT  method,
P1T  p1,
P2T  p2 
)
inline

Definition at line 257 of file ScopeGuard.h.

template<typename T , typename... Ts>
std::unique_ptr<T> make_unique ( Ts &&...  params)

Definition at line 53 of file Compat.h.

double Hypertable::TestStat::max ( ) const
inline

Definition at line 98 of file TestUtils.h.

template<class HasherT = MurmurHash2>
bool Hypertable::BasicBloomFilterWithChecksum< HasherT >::may_contain ( const void *  key,
size_t  len 
) const
inline

Checks if the data set "may" contain the key.

This can return false positives.

This function runs through all hash tables and checks if the hashed bit is set. If any of them is not set then the key is definitely not part of the data set. If all bits are set then the key "may" be in the data set.

Parameters
keyPointer to the key's data
lenSize of the data (in bytes)
Returns
true if the key "may" be contained, otherwise false

Definition at line 191 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
bool Hypertable::BasicBloomFilterWithChecksum< HasherT >::may_contain ( const String key) const
inline

Overloaded may_contain function for Strings.

Parameters
keyThe String to look for
Returns
true if the key "may" be contained, otherwise false

Definition at line 213 of file BloomFilterWithChecksum.h.

void FailureInducer::maybe_fail ( const String label)

Tests and executes the induced failures.

This function is usually not invoked directly; use HT_MAYBE_FAIL and HT_MAYBE_FAIL_X instead

Definition at line 63 of file FailureInducer.cc.

void md5_csum ( const unsigned char *  input,
int  ilen,
unsigned char  output[16] 
)

Convenience function to calculate the MD5 sum of an input buffer.

Parameters
inputbuffer holding the data
ilenlength of the input data
outputMD5 checksum result

Definition at line 312 of file md5.cc.

int md5_file ( const char *  path,
unsigned char  output[16] 
)

Convenience function to calculate the MD5 sum of a file.

Parameters
pathinput file name
outputMD5 checksum result
Returns
0 if successful, or 1 if fopen failed
void md5_finish ( md5_context ctx,
unsigned char  output[16] 
)

Retrieve the final MD5 digest.

Parameters
ctxMD5 context
outputMD5 checksum result

Definition at line 260 of file md5.cc.

int64_t md5_hash ( const char *  input)

Returns a 64-bit hash checksum of a null terminated input buffer.

Parameters
inputinput string

Definition at line 388 of file md5.cc.

void md5_hex ( const void *  input,
size_t  ilen,
char  output[33] 
)

Convenience function to calculate the MD5 sum of an input buffer; returns string with the MD5 encoded in hexadecimal.

Parameters
inputinput string
ilenlength of the input data
outputHex string representation of MD5 checksum

Definition at line 366 of file md5.cc.

void md5_hmac ( unsigned char *  key,
int  keylen,
const unsigned char *  input,
int  ilen,
unsigned char  output[16] 
)

Calculates a "Hashed MAC" of an input buffer combined with a secret key.

Parameters
keyHMAC secret key
keylenlength of the HMAC key
inputbuffer holding the data
ilenlength of the input data
outputHMAC-MD5 result

Definition at line 325 of file md5.cc.

int md5_self_test ( void  )

Runs a self test.

Returns
0 if successful, or 1 if the test failed

Definition at line 476 of file md5.cc.

void md5_starts ( md5_context ctx)

Initialize and setup a MD5 context structure.

Parameters
ctxMD5 context to be initialized

Definition at line 71 of file md5.cc.

void md5_string ( const char *  input,
char  output[33] 
)

Calculates the hex string of MD5 of null terminated input.

Parameters
inputinput string
outputHex string representation of MD5 checksum

Definition at line 384 of file md5.cc.

void md5_trunc_modified_base64 ( const char *  input,
char  output[17] 
)

Get the modified base64 encoded string of the first 12 Bytes of the 16 Byte MD5 code of a null terminated output; see http://en.wikipedia.org/wiki/Base64#URL_applications for more information.

Parameters
inputPointer to the input string
outputHex string representation of MD5 checksum

Definition at line 425 of file md5.cc.

void md5_update ( md5_context ctx,
const unsigned char *  input,
int  ilen 
)

Adds data to the MD5 process buffer.

Parameters
ctxMD5 context
inputbuffer holding the data
ilenlength of the input data

Definition at line 208 of file md5.cc.

double Hypertable::TestStat::mean ( ) const
inline

Definition at line 99 of file TestUtils.h.

double Hypertable::TestStat::min ( ) const
inline

Definition at line 97 of file TestUtils.h.

uint32_t Hypertable::murmurhash2 ( const void *  data,
size_t  len,
uint32_t  hash 
)

The murmurhash2 implementation.

Parameters
dataPointer to the input buffer
lenSize of the input buffer
hashInitial seed for the hash; usually set to 0
Returns
The 32bit hash of the input buffer

Definition at line 29 of file MurmurHash.cc.

template<class _Key , class _Tp >
bool Hypertable::operator!= ( const directory_entry< _Key, _Tp > &  lhs,
const directory_entry< _Key, _Tp > &  rhs 
)
inline

Definition at line 122 of file directory.h.

bool Hypertable::operator!= ( const StaticBuffer &  sb1,
const StaticBuffer &  sb2 
)
inline

Inequality operator for StaticBuffer.

Definition at line 227 of file StaticBuffer.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
bool Hypertable::operator!= ( const directory< _Key, _Tp, _Compare, _Allocator > &  __x,
const directory< _Key, _Tp, _Compare, _Allocator > &  __y 
)
inline

Definition at line 825 of file directory.h.

void Hypertable::TestStat::operator() ( double  x)
inline

Definition at line 81 of file TestUtils.h.

template<typename FunT>
void Hypertable::TestFun< FunT >::operator() ( )
inline

Definition at line 125 of file TestUtils.h.

String operator+ ( const String s1,
short  sval 
)
inline

Append operator for shorts.

Definition at line 61 of file StringExt.h.

String operator+ ( const String s1,
uint16_t  sval 
)
inline

Append operator for ushorts.

Definition at line 66 of file StringExt.h.

String operator+ ( const String s1,
int  ival 
)
inline

Append operator for integers.

Definition at line 71 of file StringExt.h.

String operator+ ( const String s1,
uint32_t  ival 
)
inline

Append operator for unsigned integers.

Definition at line 76 of file StringExt.h.

String operator+ ( const String s1,
int64_t  llval 
)
inline

Append operator for 64bit integers.

Definition at line 81 of file StringExt.h.

String operator+ ( const String s1,
uint64_t  llval 
)
inline

Append operator for 64bit unsigned integers.

Definition at line 86 of file StringExt.h.

template<class _Key , class _Tp >
bool Hypertable::operator< ( const directory_entry< _Key, _Tp > &  lhs,
const directory_entry< _Key, _Tp > &  rhs 
)
inline

Definition at line 128 of file directory.h.

bool Hypertable::operator< ( const StaticBuffer &  sb1,
const StaticBuffer &  sb2 
)
inline

"Less than" operator for StaticBuffer; uses memcmp

Definition at line 209 of file StaticBuffer.h.

bool Hypertable::operator< ( const Filesystem::Dirent &  lhs,
const Filesystem::Dirent &  rhs 
)
inline

Definition at line 574 of file Filesystem.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
bool Hypertable::operator< ( const directory< _Key, _Tp, _Compare, _Allocator > &  __x,
const directory< _Key, _Tp, _Compare, _Allocator > &  __y 
)
inline

Definition at line 834 of file directory.h.

std::ostream& Hypertable::operator<< ( std::ostream &  out,
const TestStat &  stat 
)
inline

Prints a TestStat instance to a stream.

Definition at line 110 of file TestUtils.h.

std::ostream & Hypertable::operator<< ( std::ostream &  os,
const crontab_entry entry 
)

Helper function to write crontab_entry to an ostream.

Parameters
osOutput stream
entryBinary crontab specification structure
Returns
Output stream (os)

Definition at line 301 of file Crontab.cc.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const Exception e 
)

Global operator to print an Exception to a std::ostream.

Definition at line 364 of file Error.cc.

template<typename CharT , class PageAlloc >
std::ostream& Hypertable::operator<< ( std::ostream &  out,
const PageArena< CharT, PageAlloc > &  m 
)
inline

Definition at line 365 of file PageArena.h.

std::ostream& Hypertable::operator<< ( std::ostream &  out,
const ExceptionMessageRenderer &  r 
)
inline

Global helper operator to print an Exception to a std::ostream.

Definition at line 459 of file Error.h.

std::ostream& Hypertable::operator<< ( std::ostream &  out,
const ExceptionMessagesRenderer &  r 
)
inline

Global helper operator to print an Exception to a std::ostream.

Definition at line 465 of file Error.h.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const CpuInfo i 
)

Global operator<< to print a CpuInfo.

Definition at line 821 of file SystemInfo.cc.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const CpuStat s 
)

Global operator<< to print a CpuStat.

Definition at line 829 of file SystemInfo.cc.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const MemStat s 
)

Global operator<< to print a MemStat.

Definition at line 837 of file SystemInfo.cc.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const DiskStat s 
)

Global operator<< to print a DiskStat.

Definition at line 844 of file SystemInfo.cc.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const OsInfo i 
)

Global operator<< to print a OsInfo.

Definition at line 851 of file SystemInfo.cc.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const SwapStat s 
)

Global operator<< to print a SwapStat.

Definition at line 860 of file SystemInfo.cc.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const NetInfo i 
)

Global operator<< to print a NetInfo.

Definition at line 866 of file SystemInfo.cc.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const NetStat s 
)

Global operator<< to print a NetStat.

Definition at line 873 of file SystemInfo.cc.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const ProcInfo i 
)

Global operator<< to print a ProcInfo.

Definition at line 881 of file SystemInfo.cc.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const ProcStat s 
)

Global operator<< to print a ProcStat.

Definition at line 892 of file SystemInfo.cc.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const FsStat s 
)

Global operator<< to print a FsStat.

Definition at line 903 of file SystemInfo.cc.

std::ostream & Hypertable::operator<< ( std::ostream &  out,
const TermInfo i 
)

Global operator<< to print a TermInfo.

Definition at line 910 of file SystemInfo.cc.

template<class _Key , class _Tp , class _Compare , class _Allocator >
bool Hypertable::operator<= ( const directory< _Key, _Tp, _Compare, _Allocator > &  __x,
const directory< _Key, _Tp, _Compare, _Allocator > &  __y 
)
inline

Definition at line 868 of file directory.h.

template<class _Key , class _Tp >
bool Hypertable::operator== ( const directory_entry< _Key, _Tp > &  lhs,
const directory_entry< _Key, _Tp > &  rhs 
)
inline

Definition at line 112 of file directory.h.

bool Hypertable::operator== ( const StaticBuffer &  sb1,
const StaticBuffer &  sb2 
)
inline

Equality operator for StaticBuffer; uses memcmp.

Definition at line 216 of file StaticBuffer.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
bool Hypertable::operator== ( const directory< _Key, _Tp, _Compare, _Allocator > &  __x,
const directory< _Key, _Tp, _Compare, _Allocator > &  __y 
)
inline

Definition at line 817 of file directory.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
bool Hypertable::operator> ( const directory< _Key, _Tp, _Compare, _Allocator > &  __x,
const directory< _Key, _Tp, _Compare, _Allocator > &  __y 
)
inline

Definition at line 852 of file directory.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
bool Hypertable::operator>= ( const directory< _Key, _Tp, _Compare, _Allocator > &  __x,
const directory< _Key, _Tp, _Compare, _Allocator > &  __y 
)
inline

Definition at line 860 of file directory.h.

template<typename FunT >
void Hypertable::parallel_run ( FunT  fun,
size_t  n,
bool  proc_stat = false 
)

Runs a test in parallel n times in a row while accumulating the benchmark results.

Definition at line 167 of file TestUtils.h.

void Hypertable::Config::parse_args ( int  argc,
char *  argv[] 
)

Initialization helper; parses the argc/argv parameters into properties, reads the configuration file, handles "help" and "help-config" parameters.

Parameters
argcNumber of elements in argv
argvName of binary and command line arguments

Definition at line 567 of file Config.cc.

void Hypertable::Config::parse_file ( const String &  fname,
const Desc &  desc 
)

Parses a configuration file and stores all configuration options into the option descriptor.

Parameters
fnameThe filename of the configuration file
descReference to the Description object
Exceptions
Error::CONFIG_BAD_CFG_FILEon error

Definition at line 603 of file Config.cc.

void FailureInducer::parse_option ( String  spec)

Parses a spec string (as explained above) and stores it in an internal structure.

There can be multiple calls to parse_options, and multiple failure inducer specs can be concatenated by ';'.

Parameters
specThe spec string

Definition at line 56 of file FailureInducer.cc.

void FailureInducer::parse_option_single ( String  option)
private

Helper function to parse a single option.

Definition at line 114 of file FailureInducer.cc.

int64_t Hypertable::parse_ts ( const char *  ts)
inline

Inline function which parses a string with a timestamp in localtime and returns a 64bit nanosecond timestamp.

Parameters
tsc-string with the timestamp formatted as YYYY-mm-dd[ HH:MM[:SS[.SS|:NS]]]
Returns
Timestamp in nanoseconds
Exceptions
std::range_errorif a range (i.e. 0..59) is exceeded
std::runtime_errorif a delimiter is missing

Definition at line 64 of file TimeInline.h.

void Hypertable::print_proc_stat ( )
inline

Prints statistics about the current process.

Definition at line 64 of file TestUtils.h.

void Hypertable::random_fill_with_chars ( char *  buf,
size_t  len,
const char *  charset = nullptr 
)

Fills a buffer with random values from a set of characters.

Parameters
bufPointer to the buffer
lenNumber of bytes to fill
charsetA string containing the allowed characters

Definition at line 44 of file DataGeneratorRandom.cc.

void Hypertable::random_generator_set_seed ( unsigned  seed)

Sets random number generator seed.

Parameters
seedRandom number generator seed

Definition at line 40 of file DataGeneratorRandom.cc.

int32_t Hypertable::random_int32 ( int32_t  maximum)

Generate random 32-bit integer.

Returns
Random integer within range [0,maximum)

Definition at line 35 of file DataGeneratorRandom.cc.

template<int N>
void Hypertable::reconstruct_spec ( const std::bitset< N > &  bits,
String spec 
)

Converts binary crontab spec back into string spec.

Note
For testing
Template Parameters
NNumber of bits in bits
Parameters
bitsBit set representing crontab field
specCrontab field string equivalent of bits

Definition at line 319 of file Crontab.cc.

std::ostream & Hypertable::ExceptionMessageRenderer::render ( std::ostream &  out) const
inline

Global helper function to print an Exception to a std::ostream.

Definition at line 447 of file Error.h.

std::ostream & Hypertable::ExceptionMessagesRenderer::render ( std::ostream &  out) const
inline

Global helper function to print an Exception to a std::ostream.

Definition at line 453 of file Error.h.

template<typename FunT >
void Hypertable::run_test ( FunT  fun,
bool  proc_stat = false,
const Properties *  props = 0 
)

Runs a test based on command line parameters:

–threads The number of threads (runs serially if not specified) –repeats How often the test function is invoked

Definition at line 185 of file TestUtils.h.

template<typename FunT >
void Hypertable::serial_run ( FunT  fun,
size_t  n,
bool  proc_stat = false 
)

Runs a test serially n times in a row while accumulating the benchmark results.

Definition at line 152 of file TestUtils.h.

template<class HasherT = MurmurHash2>
void Hypertable::BasicBloomFilterWithChecksum< HasherT >::serialize ( StaticBuffer buf)
inline

Serializes the BloomFilter into a static memory buffer.

Parameters
bufThe static memory buffer

Definition at line 221 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::size ( )
inline

Getter for the bloom filter size.

Returns
The size of the bloom filter data (in bytes)

Definition at line 254 of file BloomFilterWithChecksum.h.

double Hypertable::TestStat::stdev ( ) const
inline

Definition at line 100 of file TestUtils.h.

bool Hypertable::strip_enclosing_quotes ( const char *  input,
size_t  input_len,
const char **  output,
size_t *  output_len 
)
inline

Strips enclosing quotes.

Inspects the first and last characters of the string defined by input and input_len and if they are either both single quotes or double quotes, it sets output and output_len to contained between them. Otherwise, *output is set to input and *output_len is set to input_len.

Parameters
inputInput char string
input_lenInput char string length
outputAddress of output char string pointer
output_lenAddress of output char string pointer
Returns
true if quotes were stripped, false otherwise.

Definition at line 129 of file String.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
void Hypertable::directory< _Key, _Tp, _Compare, _Allocator >::swap ( directory< _Key, _Tp, _Compare, _Allocator > &  __d)
noexcept

Definition at line 742 of file directory.h.

template<class _Key , class _Tp , class _Compare , class _Allocator >
void Hypertable::swap ( directory< _Key, _Tp, _Compare, _Allocator > &  __x,
directory< _Key, _Tp, _Compare, _Allocator > &  __y 
)
inlinenoexcept

Definition at line 876 of file directory.h.

void Hypertable::Config::sync_aliases ( )

Sync alias values.

Typically called after parse_* functions to setup values in the configuration variable map.

Definition at line 611 of file Config.cc.

const char * Hypertable::system_info_lib_version ( )

Returns a descriptive string of the libsigar version.

Definition at line 816 of file SystemInfo.cc.

size_t Hypertable::tcl_hash ( const char *  s)
inline

The Tcl hash by John Ousterhout for null-terminated c-strings, preferably alpha-numeric characters only.

Parameters
sPointer to the null-terminated c-string
Returns
The calculated hash value

Definition at line 44 of file TclHash.h.

size_t Hypertable::tcl_hash ( const void *  data,
size_t  len,
size_t  seed 
)
inline

Tcl hash for data with known length.

Parameters
dataA pointer to the memory buffer
lenThe length of the buffer, in bytes
seedAn initial seed
Returns
The calculated hash value

Definition at line 61 of file TclHash.h.

size_t Hypertable::tcl_hash2 ( const void *  data,
size_t  len,
size_t  seed 
)
inline

Unrolled Tcl hash, up to 20% faster for longer (> 8 bytes) strings.

Parameters
dataA pointer to the memory buffer
lenThe length of the buffer, in bytes
seedAn initial seed
Returns
The calculated hash value

Definition at line 85 of file TclHash.h.

template<typename FunT>
Hypertable::TestFun< FunT >::TestFun ( FunT  fun,
bool  proc_stat = false,
TestStat stat = NULL 
)
inline

Definition at line 121 of file TestUtils.h.

Hypertable::TestStat::TestStat ( )
inline

Definition at line 75 of file TestUtils.h.

template<class HasherT = MurmurHash2>
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::total_size ( )
inline

Getter for the total size (including checksum and metadata)

Returns
The total size of the bloom filter data (including checksum and metadata, in bytes)

Definition at line 261 of file BloomFilterWithChecksum.h.

void Hypertable::unescape ( String str)

Unescapes a string.

Parameters
strThe string to unescape [in/out]

Definition at line 57 of file Escaper.cc.

template<class HasherT = MurmurHash2>
void Hypertable::BasicBloomFilterWithChecksum< HasherT >::validate ( String filename)
inline

Validates the checksum of the BloomFilter.

Parameters
filenameThe filename of this BloomFilter; required to calculate the checksum
Exceptions
Error::BLOOMFILTER_CHECKSUM_MISMATCHIf the checksum does not match

Definition at line 241 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
Hypertable::BasicBloomFilterWithChecksum< HasherT >::~BasicBloomFilterWithChecksum ( )
inline

Destructor; releases resources.

Definition at line 144 of file BloomFilterWithChecksum.h.

Variable Documentation

int Hypertable::FailureInducer::failure_inducer_state::error_code

The error code which is thrown (if type is FAILURE_TYPE_THROW)

Definition at line 115 of file FailureInducer.h.

int Hypertable::FailureInducer::failure_inducer_state::failure_type

The failure type; an enum in FailureInducer.cc.

Definition at line 113 of file FailureInducer.h.

template<typename FunT>
FunT Hypertable::TestFun< FunT >::fun

Definition at line 142 of file TestUtils.h.

FailureInducer * FailureInducer::instance = 0
static

This is a singleton class.

When initializing an application, the FailureInducer is usually instantiated like this:

if (FailureInducer::instance == 0)
  FailureInducer::instance = new FailureInducer();

Definition at line 75 of file FailureInducer.h.

uint32_t Hypertable::FailureInducer::failure_inducer_state::iteration

Current iteration of the failure.

Definition at line 109 of file FailureInducer.h.

double Hypertable::TestStat::m_a0
private

Definition at line 106 of file TestUtils.h.

double Hypertable::TestStat::m_a1
private

Definition at line 106 of file TestUtils.h.

template<class HasherT = MurmurHash2>
uint8_t* Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_bloom_base
private

The serialized bloom filter data, including metadata and checksums.

Definition at line 315 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
uint8_t* Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_bloom_bits
private

The actual bloom filter bit-array.

Definition at line 312 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
float Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_false_positive_prob
private

Probability of returning a false positive.

Definition at line 300 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
HasherT Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_hasher
private

The hash function implementation.

Definition at line 291 of file BloomFilterWithChecksum.h.

size_t Hypertable::TestStat::m_i
private

Definition at line 105 of file TestUtils.h.

template<class HasherT = MurmurHash2>
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_items_actual
private

Actual number of items.

Definition at line 297 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_items_estimate
private

Estimated number of items.

Definition at line 294 of file BloomFilterWithChecksum.h.

double Hypertable::TestStat::m_maxv
private

Definition at line 104 of file TestUtils.h.

double Hypertable::TestStat::m_minv
private

Definition at line 104 of file TestUtils.h.

std::mutex Hypertable::TestStat::m_mutex
mutableprivate

Definition at line 103 of file TestUtils.h.

std::mutex Hypertable::FailureInducer::m_mutex
private

A mutex to serialize access.

Definition at line 123 of file FailureInducer.h.

template<class HasherT = MurmurHash2>
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_num_bits
private

Number of bits.

Definition at line 306 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_num_bytes
private

Number of bytes (approx.

m_num_bits / 8)

Definition at line 309 of file BloomFilterWithChecksum.h.

template<class HasherT = MurmurHash2>
size_t Hypertable::BasicBloomFilterWithChecksum< HasherT >::m_num_hash_functions
private

Number of hash functions.

Definition at line 303 of file BloomFilterWithChecksum.h.

double Hypertable::TestStat::m_q0
private

Definition at line 106 of file TestUtils.h.

double Hypertable::TestStat::m_q1
private

Definition at line 106 of file TestUtils.h.

StateMap Hypertable::FailureInducer::m_state_map
private

A list of all failure settings.

Definition at line 126 of file FailureInducer.h.

int Hypertable::FailureInducer::failure_inducer_state::pause_millis

Milliseconds to pause (if type is FAILURE_TYPE_PAUSE)

Definition at line 117 of file FailureInducer.h.

template<typename FunT>
bool Hypertable::TestFun< FunT >::proc_stat

Definition at line 143 of file TestUtils.h.

PropertiesPtr Hypertable::Config::properties

This singleton map stores all options.

Definition at line 47 of file Config.cc.

std::recursive_mutex Hypertable::Config::rec_mutex

A global (recursive) configuration mutex.

Definition at line 46 of file Config.cc.

template<typename FunT>
TestStat* Hypertable::TestFun< FunT >::stat_acc

Definition at line 144 of file TestUtils.h.

uint32_t Hypertable::FailureInducer::failure_inducer_state::trigger_iteration

Number of iterations after which the failure is triggered.

Definition at line 111 of file FailureInducer.h.