mirror of https://gitee.com/bigwinds/arangodb
removed VocBase/marker.h and VocBase/marker.cpp
This commit is contained in:
parent
f7f1b3116a
commit
7501fad516
|
@ -120,7 +120,6 @@ add_executable(
|
||||||
VocBase/headers.cpp
|
VocBase/headers.cpp
|
||||||
VocBase/index.cpp
|
VocBase/index.cpp
|
||||||
VocBase/key-generator.cpp
|
VocBase/key-generator.cpp
|
||||||
VocBase/marker.cpp
|
|
||||||
VocBase/primary-index.cpp
|
VocBase/primary-index.cpp
|
||||||
VocBase/replication-applier.cpp
|
VocBase/replication-applier.cpp
|
||||||
VocBase/replication-common.cpp
|
VocBase/replication-common.cpp
|
||||||
|
|
|
@ -98,7 +98,6 @@ bin_arangod_SOURCES = \
|
||||||
arangod/VocBase/headers.cpp \
|
arangod/VocBase/headers.cpp \
|
||||||
arangod/VocBase/index.cpp \
|
arangod/VocBase/index.cpp \
|
||||||
arangod/VocBase/key-generator.cpp \
|
arangod/VocBase/key-generator.cpp \
|
||||||
arangod/VocBase/marker.cpp \
|
|
||||||
arangod/VocBase/primary-index.cpp \
|
arangod/VocBase/primary-index.cpp \
|
||||||
arangod/VocBase/replication-applier.cpp \
|
arangod/VocBase/replication-applier.cpp \
|
||||||
arangod/VocBase/replication-common.cpp \
|
arangod/VocBase/replication-common.cpp \
|
||||||
|
|
|
@ -2020,7 +2020,7 @@ int TRI_UpgradeCollection13 (TRI_vocbase_t* vocbase,
|
||||||
tick = TRI_NewTickServer();
|
tick = TRI_NewTickServer();
|
||||||
|
|
||||||
// datafile header
|
// datafile header
|
||||||
TRI_InitMarker((char*) &header, TRI_DF_MARKER_HEADER, sizeof(TRI_df_header_marker_t));
|
TRI_InitMarkerDatafile((char*) &header, TRI_DF_MARKER_HEADER, sizeof(TRI_df_header_marker_t));
|
||||||
header._version = TRI_DF_VERSION;
|
header._version = TRI_DF_VERSION;
|
||||||
header._maximalSize = actualSize;
|
header._maximalSize = actualSize;
|
||||||
header._fid = tick;
|
header._fid = tick;
|
||||||
|
@ -2030,7 +2030,7 @@ int TRI_UpgradeCollection13 (TRI_vocbase_t* vocbase,
|
||||||
written += TRI_WRITE(fdout, &header.base, header.base._size);
|
written += TRI_WRITE(fdout, &header.base, header.base._size);
|
||||||
|
|
||||||
// col header
|
// col header
|
||||||
TRI_InitMarker((char*) &cm, TRI_COL_MARKER_HEADER, sizeof(TRI_col_header_marker_t));
|
TRI_InitMarkerDatafile((char*) &cm, TRI_COL_MARKER_HEADER, sizeof(TRI_col_header_marker_t));
|
||||||
cm._type = (TRI_col_type_t) info->_type;
|
cm._type = (TRI_col_type_t) info->_type;
|
||||||
cm._cid = info->_cid;
|
cm._cid = info->_cid;
|
||||||
cm.base._tick = tick;
|
cm.base._tick = tick;
|
||||||
|
@ -2086,7 +2086,7 @@ int TRI_UpgradeCollection13 (TRI_vocbase_t* vocbase,
|
||||||
tick = TRI_NewTickServer();
|
tick = TRI_NewTickServer();
|
||||||
|
|
||||||
// datafile footer
|
// datafile footer
|
||||||
TRI_InitMarker((char*) &footer, TRI_DF_MARKER_FOOTER, sizeof(TRI_df_footer_marker_t));
|
TRI_InitMarkerDatafile((char*) &footer, TRI_DF_MARKER_FOOTER, sizeof(TRI_df_footer_marker_t));
|
||||||
footer.base._tick = tick;
|
footer.base._tick = tick;
|
||||||
footer.base._crc = TRI_FinalCrc32(TRI_BlockCrc32(TRI_InitialCrc32(), (char const*) &footer.base, footer.base._size));
|
footer.base._crc = TRI_FinalCrc32(TRI_BlockCrc32(TRI_InitialCrc32(), (char const*) &footer.base, footer.base._size));
|
||||||
written += TRI_WRITE(fdout, &footer.base, footer.base._size);
|
written += TRI_WRITE(fdout, &footer.base, footer.base._size);
|
||||||
|
@ -2249,7 +2249,7 @@ int TRI_UpgradeCollection15 (TRI_vocbase_t* vocbase,
|
||||||
tick = TRI_NewTickServer();
|
tick = TRI_NewTickServer();
|
||||||
|
|
||||||
// datafile header
|
// datafile header
|
||||||
TRI_InitMarker((char*) &header, TRI_DF_MARKER_HEADER, sizeof(TRI_df_header_marker_t));
|
TRI_InitMarkerDatafile((char*) &header, TRI_DF_MARKER_HEADER, sizeof(TRI_df_header_marker_t));
|
||||||
header._version = TRI_DF_VERSION;
|
header._version = TRI_DF_VERSION;
|
||||||
header._maximalSize = 0; // TODO: seems ok to set this to 0, check if this is ok
|
header._maximalSize = 0; // TODO: seems ok to set this to 0, check if this is ok
|
||||||
header._fid = tick;
|
header._fid = tick;
|
||||||
|
@ -2259,7 +2259,7 @@ int TRI_UpgradeCollection15 (TRI_vocbase_t* vocbase,
|
||||||
written += TRI_WRITE(fdout, &header.base, header.base._size);
|
written += TRI_WRITE(fdout, &header.base, header.base._size);
|
||||||
|
|
||||||
// col header
|
// col header
|
||||||
TRI_InitMarker((char*) &cm, TRI_COL_MARKER_HEADER, sizeof(TRI_col_header_marker_t));
|
TRI_InitMarkerDatafile((char*) &cm, TRI_COL_MARKER_HEADER, sizeof(TRI_col_header_marker_t));
|
||||||
cm._type = (TRI_col_type_t) info->_type;
|
cm._type = (TRI_col_type_t) info->_type;
|
||||||
cm._cid = info->_cid;
|
cm._cid = info->_cid;
|
||||||
cm.base._tick = tick;
|
cm.base._tick = tick;
|
||||||
|
@ -2299,7 +2299,7 @@ int TRI_UpgradeCollection15 (TRI_vocbase_t* vocbase,
|
||||||
ssize_t minSize;
|
ssize_t minSize;
|
||||||
|
|
||||||
tick = TRI_NewTickServer();
|
tick = TRI_NewTickServer();
|
||||||
TRI_InitMarker((char*) &footer, TRI_DF_MARKER_FOOTER, sizeof(TRI_df_footer_marker_t));
|
TRI_InitMarkerDatafile((char*) &footer, TRI_DF_MARKER_FOOTER, sizeof(TRI_df_footer_marker_t));
|
||||||
footer.base._tick = tick;
|
footer.base._tick = tick;
|
||||||
footer.base._crc = TRI_FinalCrc32(TRI_BlockCrc32(TRI_InitialCrc32(), (char const*) &footer.base, footer.base._size));
|
footer.base._crc = TRI_FinalCrc32(TRI_BlockCrc32(TRI_InitialCrc32(), (char const*) &footer.base, footer.base._size));
|
||||||
|
|
||||||
|
|
|
@ -36,7 +36,6 @@
|
||||||
#include "BasicsC/logging.h"
|
#include "BasicsC/logging.h"
|
||||||
#include "BasicsC/tri-strings.h"
|
#include "BasicsC/tri-strings.h"
|
||||||
#include "VocBase/document-collection.h"
|
#include "VocBase/document-collection.h"
|
||||||
#include "VocBase/marker.h"
|
|
||||||
#include "VocBase/primary-index.h"
|
#include "VocBase/primary-index.h"
|
||||||
#include "VocBase/server.h"
|
#include "VocBase/server.h"
|
||||||
#include "VocBase/vocbase.h"
|
#include "VocBase/vocbase.h"
|
||||||
|
@ -46,11 +45,6 @@
|
||||||
// --SECTION-- private constants
|
// --SECTION-- private constants
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @addtogroup VocBase
|
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief minimum size of dead data (in bytes) in a datafile that will make
|
/// @brief minimum size of dead data (in bytes) in a datafile that will make
|
||||||
/// the datafile eligible for compaction at all.
|
/// the datafile eligible for compaction at all.
|
||||||
|
@ -110,19 +104,10 @@
|
||||||
|
|
||||||
static int const COMPACTOR_INTERVAL = (1 * 1000 * 1000);
|
static int const COMPACTOR_INTERVAL = (1 * 1000 * 1000);
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
// --SECTION-- private types
|
// --SECTION-- private types
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @addtogroup VocBase
|
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief compaction blocker entry
|
/// @brief compaction blocker entry
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -168,19 +153,10 @@ typedef struct compaction_info_s {
|
||||||
}
|
}
|
||||||
compaction_info_t;
|
compaction_info_t;
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
// --SECTION-- private functions
|
// --SECTION-- private functions
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @addtogroup VocBase
|
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief creates a compactor file, based on a datafile
|
/// @brief creates a compactor file, based on a datafile
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -1226,19 +1202,10 @@ static bool CheckAndLockCompaction (TRI_vocbase_t* vocbase) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
// --SECTION-- public functions
|
// --SECTION-- public functions
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @addtogroup VocBase
|
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief initialise the compaction blockers structure
|
/// @brief initialise the compaction blockers structure
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -1538,10 +1505,6 @@ void TRI_CompactorVocBase (void* data) {
|
||||||
LOG_TRACE("shutting down compactor thread");
|
LOG_TRACE("shutting down compactor thread");
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
// Local Variables:
|
// Local Variables:
|
||||||
// mode: outline-minor
|
// mode: outline-minor
|
||||||
// outline-regexp: "/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|/// @page\\|// --SECTION--\\|/// @\\}"
|
// outline-regexp: "/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|/// @page\\|// --SECTION--\\|/// @\\}"
|
||||||
|
|
|
@ -37,7 +37,6 @@
|
||||||
#include "BasicsC/memory-map.h"
|
#include "BasicsC/memory-map.h"
|
||||||
#include "BasicsC/tri-strings.h"
|
#include "BasicsC/tri-strings.h"
|
||||||
#include "BasicsC/files.h"
|
#include "BasicsC/files.h"
|
||||||
#include "VocBase/marker.h"
|
|
||||||
#include "VocBase/server.h"
|
#include "VocBase/server.h"
|
||||||
|
|
||||||
|
|
||||||
|
@ -47,11 +46,6 @@
|
||||||
// --SECTION-- private functions
|
// --SECTION-- private functions
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @addtogroup VocBase
|
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief return whether the datafile is a physical file (true) or an
|
/// @brief return whether the datafile is a physical file (true) or an
|
||||||
/// anonymous mapped region (false)
|
/// anonymous mapped region (false)
|
||||||
|
@ -806,19 +800,10 @@ static TRI_datafile_t* OpenDatafile (char const* filename,
|
||||||
return datafile;
|
return datafile;
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
// --SECTION-- constructors and destructors
|
// --SECTION-- constructors and destructors
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @addtogroup VocBase
|
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief creates either an anonymous or a physical datafile
|
/// @brief creates either an anonymous or a physical datafile
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -1038,19 +1023,100 @@ void TRI_FreeDatafile (TRI_datafile_t* datafile) {
|
||||||
TRI_Free(TRI_UNKNOWN_MEM_ZONE, datafile);
|
TRI_Free(TRI_UNKNOWN_MEM_ZONE, datafile);
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
// --SECTION-- public functions
|
// --SECTION-- public functions
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @addtogroup VocBase
|
/// @brief returns the name for a marker
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
char const* TRI_NameMarkerDatafile (TRI_df_marker_t const* marker) {
|
||||||
|
switch (marker->_type) {
|
||||||
|
case TRI_DOC_MARKER_KEY_DOCUMENT:
|
||||||
|
return "document";
|
||||||
|
case TRI_DOC_MARKER_KEY_EDGE:
|
||||||
|
return "edge";
|
||||||
|
case TRI_DOC_MARKER_KEY_DELETION:
|
||||||
|
return "deletion";
|
||||||
|
case TRI_DOC_MARKER_BEGIN_TRANSACTION:
|
||||||
|
return "begin transaction";
|
||||||
|
case TRI_DOC_MARKER_COMMIT_TRANSACTION:
|
||||||
|
return "commit transaction";
|
||||||
|
case TRI_DOC_MARKER_ABORT_TRANSACTION:
|
||||||
|
return "abort transaction";
|
||||||
|
case TRI_DOC_MARKER_PREPARE_TRANSACTION:
|
||||||
|
return "prepare transaction";
|
||||||
|
|
||||||
|
case TRI_DF_MARKER_HEADER:
|
||||||
|
case TRI_COL_MARKER_HEADER:
|
||||||
|
return "header";
|
||||||
|
case TRI_DF_MARKER_FOOTER:
|
||||||
|
return "footer";
|
||||||
|
case TRI_DF_MARKER_ATTRIBUTE:
|
||||||
|
return "attribute";
|
||||||
|
case TRI_DF_MARKER_SHAPE:
|
||||||
|
return "shape";
|
||||||
|
|
||||||
|
case TRI_DOC_MARKER_DOCUMENT:
|
||||||
|
case TRI_DOC_MARKER_EDGE:
|
||||||
|
case TRI_DOC_MARKER_DELETION:
|
||||||
|
return "deprecated";
|
||||||
|
|
||||||
|
case TRI_WAL_MARKER_ATTRIBUTE:
|
||||||
|
return "attribute (wal)";
|
||||||
|
case TRI_WAL_MARKER_SHAPE:
|
||||||
|
return "shape (wal)";
|
||||||
|
case TRI_WAL_MARKER_DOCUMENT:
|
||||||
|
return "document (wal)";
|
||||||
|
case TRI_WAL_MARKER_EDGE:
|
||||||
|
return "edge (wal)";
|
||||||
|
case TRI_WAL_MARKER_REMOVE:
|
||||||
|
return "deletion (wal)";
|
||||||
|
case TRI_WAL_MARKER_BEGIN_TRANSACTION:
|
||||||
|
return "begin transaction (wal)";
|
||||||
|
case TRI_WAL_MARKER_COMMIT_TRANSACTION:
|
||||||
|
return "commit transaction (wal)";
|
||||||
|
case TRI_WAL_MARKER_ABORT_TRANSACTION:
|
||||||
|
return "abort transaction (wal)";
|
||||||
|
case TRI_WAL_MARKER_CREATE_COLLECTION:
|
||||||
|
return "create collection (wal)";
|
||||||
|
case TRI_WAL_MARKER_DROP_COLLECTION:
|
||||||
|
return "drop collection (wal)";
|
||||||
|
case TRI_WAL_MARKER_RENAME_COLLECTION:
|
||||||
|
return "rename collection (wal)";
|
||||||
|
case TRI_WAL_MARKER_CHANGE_COLLECTION:
|
||||||
|
return "change collection (wal)";
|
||||||
|
|
||||||
|
default:
|
||||||
|
return "unused/unknown";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
/// @brief initialises a marker with the most basic information
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
void TRI_InitMarkerDatafile (char* marker,
|
||||||
|
TRI_df_marker_type_e type,
|
||||||
|
TRI_voc_size_t size) {
|
||||||
|
|
||||||
|
TRI_df_marker_t* df = (TRI_df_marker_t*) marker;
|
||||||
|
|
||||||
|
TRI_ASSERT_MAINTAINER(marker != NULL);
|
||||||
|
TRI_ASSERT_MAINTAINER(type > TRI_MARKER_MIN && type < TRI_MARKER_MAX);
|
||||||
|
TRI_ASSERT_MAINTAINER(size > 0);
|
||||||
|
|
||||||
|
// initialise the basic bytes
|
||||||
|
memset(marker, 0, size);
|
||||||
|
|
||||||
|
df->_size = size;
|
||||||
|
df->_type = type;
|
||||||
|
// not needed because of memset above
|
||||||
|
// marker->_crc = 0;
|
||||||
|
// marker->_tick = 0;
|
||||||
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief create the initial datafile header marker
|
/// @brief create the initial datafile header marker
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -1063,7 +1129,7 @@ int TRI_WriteInitialHeaderMarkerDatafile (TRI_datafile_t* datafile,
|
||||||
int res;
|
int res;
|
||||||
|
|
||||||
// create the header
|
// create the header
|
||||||
TRI_InitMarker((char*) &header, TRI_DF_MARKER_HEADER, sizeof(TRI_df_header_marker_t));
|
TRI_InitMarkerDatafile((char*) &header, TRI_DF_MARKER_HEADER, sizeof(TRI_df_header_marker_t));
|
||||||
header.base._tick = (TRI_voc_tick_t) fid;
|
header.base._tick = (TRI_voc_tick_t) fid;
|
||||||
|
|
||||||
header._version = TRI_DF_VERSION;
|
header._version = TRI_DF_VERSION;
|
||||||
|
@ -1641,7 +1707,7 @@ int TRI_SealDatafile (TRI_datafile_t* datafile) {
|
||||||
|
|
||||||
|
|
||||||
// create the footer
|
// create the footer
|
||||||
TRI_InitMarker((char*) &footer, TRI_DF_MARKER_FOOTER, sizeof(TRI_df_footer_marker_t));
|
TRI_InitMarkerDatafile((char*) &footer, TRI_DF_MARKER_FOOTER, sizeof(TRI_df_footer_marker_t));
|
||||||
// set a proper tick value
|
// set a proper tick value
|
||||||
footer.base._tick = datafile->_tickMax;
|
footer.base._tick = datafile->_tickMax;
|
||||||
|
|
||||||
|
@ -1783,10 +1849,6 @@ void TRI_DestroyDatafileScan (TRI_df_scan_t* scan) {
|
||||||
TRI_DestroyVector(&scan->_entries);
|
TRI_DestroyVector(&scan->_entries);
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
// Local Variables:
|
// Local Variables:
|
||||||
// mode: outline-minor
|
// mode: outline-minor
|
||||||
// outline-regexp: "/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|/// @page\\|// --SECTION--\\|/// @\\}"
|
// outline-regexp: "/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|/// @page\\|// --SECTION--\\|/// @\\}"
|
||||||
|
|
|
@ -93,11 +93,6 @@
|
||||||
// --SECTION-- public constants
|
// --SECTION-- public constants
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @addtogroup VocBase
|
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief datafile version
|
/// @brief datafile version
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -116,19 +111,10 @@
|
||||||
|
|
||||||
#define TRI_MARKER_MAXIMAL_SIZE (256 * 1024 * 1024)
|
#define TRI_MARKER_MAXIMAL_SIZE (256 * 1024 * 1024)
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
// --SECTION-- public types
|
// --SECTION-- public types
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @addtogroup VocBase
|
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief state of the datafile
|
/// @brief state of the datafile
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -464,19 +450,10 @@ typedef struct TRI_doc_prepare_transaction_marker_s {
|
||||||
}
|
}
|
||||||
TRI_doc_prepare_transaction_marker_t;
|
TRI_doc_prepare_transaction_marker_t;
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
// --SECTION-- constructors and destructors
|
// --SECTION-- constructors and destructors
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @addtogroup VocBase
|
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief creates a new datafile
|
/// @brief creates a new datafile
|
||||||
///
|
///
|
||||||
|
@ -531,19 +508,24 @@ void TRI_DestroyDatafile (TRI_datafile_t*);
|
||||||
|
|
||||||
void TRI_FreeDatafile (TRI_datafile_t*);
|
void TRI_FreeDatafile (TRI_datafile_t*);
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
// --SECTION-- public functions
|
// --SECTION-- public functions
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @addtogroup VocBase
|
/// @brief returns the name for a marker
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
char const* TRI_NameMarkerDatafile (TRI_df_marker_t const*);
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
/// @brief initialises a marker with the most basic information
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
void TRI_InitMarkerDatafile (char*,
|
||||||
|
TRI_df_marker_type_e,
|
||||||
|
TRI_voc_size_t);
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief create the initial datafile header marker
|
/// @brief create the initial datafile header marker
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -674,10 +656,6 @@ TRI_df_scan_t TRI_ScanDatafile (char const* path);
|
||||||
|
|
||||||
void TRI_DestroyDatafileScan (TRI_df_scan_t* scan);
|
void TRI_DestroyDatafileScan (TRI_df_scan_t* scan);
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Local Variables:
|
// Local Variables:
|
||||||
|
|
|
@ -42,7 +42,6 @@
|
||||||
#include "VocBase/edge-collection.h"
|
#include "VocBase/edge-collection.h"
|
||||||
#include "VocBase/index.h"
|
#include "VocBase/index.h"
|
||||||
#include "VocBase/key-generator.h"
|
#include "VocBase/key-generator.h"
|
||||||
#include "VocBase/marker.h"
|
|
||||||
#include "VocBase/primary-index.h"
|
#include "VocBase/primary-index.h"
|
||||||
#include "VocBase/replication-logger.h"
|
#include "VocBase/replication-logger.h"
|
||||||
#include "VocBase/server.h"
|
#include "VocBase/server.h"
|
||||||
|
@ -278,7 +277,7 @@ static TRI_datafile_t* CreateCompactor (TRI_document_collection_t* document,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
TRI_InitMarker((char*) &cm, TRI_COL_MARKER_HEADER, sizeof(TRI_col_header_marker_t));
|
TRI_InitMarkerDatafile((char*) &cm, TRI_COL_MARKER_HEADER, sizeof(TRI_col_header_marker_t));
|
||||||
cm.base._tick = (TRI_voc_tick_t) fid;
|
cm.base._tick = (TRI_voc_tick_t) fid;
|
||||||
cm._type = (TRI_col_type_t) collection->_info._type;
|
cm._type = (TRI_col_type_t) collection->_info._type;
|
||||||
cm._cid = collection->_info._cid;
|
cm._cid = collection->_info._cid;
|
||||||
|
@ -366,7 +365,7 @@ static TRI_datafile_t* CreateJournal (TRI_document_collection_t* document,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
TRI_InitMarker((char*) &cm, TRI_COL_MARKER_HEADER, sizeof(TRI_col_header_marker_t));
|
TRI_InitMarkerDatafile((char*) &cm, TRI_COL_MARKER_HEADER, sizeof(TRI_col_header_marker_t));
|
||||||
cm.base._tick = (TRI_voc_tick_t) fid;
|
cm.base._tick = (TRI_voc_tick_t) fid;
|
||||||
cm._type = (TRI_col_type_t) collection->_info._type;
|
cm._type = (TRI_col_type_t) collection->_info._type;
|
||||||
cm._cid = collection->_info._cid;
|
cm._cid = collection->_info._cid;
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
#include "VocBase/collection.h"
|
#include "VocBase/collection.h"
|
||||||
#include "VocBase/headers.h"
|
#include "VocBase/headers.h"
|
||||||
#include "VocBase/index.h"
|
#include "VocBase/index.h"
|
||||||
#include "VocBase/marker.h"
|
|
||||||
#include "VocBase/primary-index.h"
|
#include "VocBase/primary-index.h"
|
||||||
#include "VocBase/transaction.h"
|
#include "VocBase/transaction.h"
|
||||||
#include "VocBase/update-policy.h"
|
#include "VocBase/update-policy.h"
|
||||||
|
|
|
@ -1,128 +0,0 @@
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @brief markers
|
|
||||||
///
|
|
||||||
/// @file
|
|
||||||
///
|
|
||||||
/// DISCLAIMER
|
|
||||||
///
|
|
||||||
/// Copyright 2004-2013 triAGENS GmbH, Cologne, Germany
|
|
||||||
///
|
|
||||||
/// Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
/// you may not use this file except in compliance with the License.
|
|
||||||
/// You may obtain a copy of the License at
|
|
||||||
///
|
|
||||||
/// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
///
|
|
||||||
/// Unless required by applicable law or agreed to in writing, software
|
|
||||||
/// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
/// See the License for the specific language governing permissions and
|
|
||||||
/// limitations under the License.
|
|
||||||
///
|
|
||||||
/// Copyright holder is triAGENS GmbH, Cologne, Germany
|
|
||||||
///
|
|
||||||
/// @author Jan Steemann
|
|
||||||
/// @author Copyright 2011-2013, triAGENS GmbH, Cologne, Germany
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
#include "marker.h"
|
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
|
||||||
// --SECTION-- public functions
|
|
||||||
// -----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @addtogroup VocBase
|
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @brief returns the name for a marker
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
char const* TRI_NameMarker (TRI_df_marker_t const* marker) {
|
|
||||||
switch (marker->_type) {
|
|
||||||
case TRI_DOC_MARKER_KEY_DOCUMENT:
|
|
||||||
return "document";
|
|
||||||
case TRI_DOC_MARKER_KEY_EDGE:
|
|
||||||
return "edge";
|
|
||||||
case TRI_DOC_MARKER_KEY_DELETION:
|
|
||||||
return "deletion";
|
|
||||||
case TRI_DOC_MARKER_BEGIN_TRANSACTION:
|
|
||||||
return "begin transaction";
|
|
||||||
case TRI_DOC_MARKER_COMMIT_TRANSACTION:
|
|
||||||
return "commit transaction";
|
|
||||||
case TRI_DOC_MARKER_ABORT_TRANSACTION:
|
|
||||||
return "abort transaction";
|
|
||||||
case TRI_DOC_MARKER_PREPARE_TRANSACTION:
|
|
||||||
return "prepare transaction";
|
|
||||||
|
|
||||||
case TRI_DF_MARKER_HEADER:
|
|
||||||
case TRI_COL_MARKER_HEADER:
|
|
||||||
return "header";
|
|
||||||
case TRI_DF_MARKER_FOOTER:
|
|
||||||
return "footer";
|
|
||||||
case TRI_DF_MARKER_ATTRIBUTE:
|
|
||||||
return "attribute";
|
|
||||||
case TRI_DF_MARKER_SHAPE:
|
|
||||||
return "shape";
|
|
||||||
|
|
||||||
case TRI_DOC_MARKER_DOCUMENT:
|
|
||||||
case TRI_DOC_MARKER_EDGE:
|
|
||||||
case TRI_DOC_MARKER_DELETION:
|
|
||||||
return "deprecated";
|
|
||||||
|
|
||||||
case TRI_WAL_MARKER_ATTRIBUTE:
|
|
||||||
return "attribute (wal)";
|
|
||||||
case TRI_WAL_MARKER_SHAPE:
|
|
||||||
return "shape (wal)";
|
|
||||||
case TRI_WAL_MARKER_DOCUMENT:
|
|
||||||
return "document (wal)";
|
|
||||||
case TRI_WAL_MARKER_EDGE:
|
|
||||||
return "edge (wal)";
|
|
||||||
case TRI_WAL_MARKER_REMOVE:
|
|
||||||
return "deletion (wal)";
|
|
||||||
case TRI_WAL_MARKER_BEGIN_TRANSACTION:
|
|
||||||
return "begin transaction (wal)";
|
|
||||||
case TRI_WAL_MARKER_COMMIT_TRANSACTION:
|
|
||||||
return "commit transaction (wal)";
|
|
||||||
case TRI_WAL_MARKER_ABORT_TRANSACTION:
|
|
||||||
return "abort transaction (wal)";
|
|
||||||
|
|
||||||
default:
|
|
||||||
return "unused/unknown";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @brief initialises a marker with the most basic information
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
void TRI_InitMarker (char* marker,
|
|
||||||
TRI_df_marker_type_e type,
|
|
||||||
TRI_voc_size_t size) {
|
|
||||||
|
|
||||||
TRI_df_marker_t* df = (TRI_df_marker_t*) marker;
|
|
||||||
|
|
||||||
TRI_ASSERT_MAINTAINER(marker != NULL);
|
|
||||||
TRI_ASSERT_MAINTAINER(type > TRI_MARKER_MIN && type < TRI_MARKER_MAX);
|
|
||||||
TRI_ASSERT_MAINTAINER(size > 0);
|
|
||||||
|
|
||||||
// initialise the basic bytes
|
|
||||||
memset(marker, 0, size);
|
|
||||||
|
|
||||||
df->_size = size;
|
|
||||||
df->_type = type;
|
|
||||||
// not needed because of memset above
|
|
||||||
// marker->_crc = 0;
|
|
||||||
// marker->_tick = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
// Local Variables:
|
|
||||||
// mode: outline-minor
|
|
||||||
// outline-regexp: "/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|/// @page\\|// --SECTION--\\|/// @\\}"
|
|
||||||
// End:
|
|
|
@ -1,67 +0,0 @@
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @brief markers
|
|
||||||
///
|
|
||||||
/// @file
|
|
||||||
///
|
|
||||||
/// DISCLAIMER
|
|
||||||
///
|
|
||||||
/// Copyright 2004-2013 triAGENS GmbH, Cologne, Germany
|
|
||||||
///
|
|
||||||
/// Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
/// you may not use this file except in compliance with the License.
|
|
||||||
/// You may obtain a copy of the License at
|
|
||||||
///
|
|
||||||
/// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
///
|
|
||||||
/// Unless required by applicable law or agreed to in writing, software
|
|
||||||
/// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
/// See the License for the specific language governing permissions and
|
|
||||||
/// limitations under the License.
|
|
||||||
///
|
|
||||||
/// Copyright holder is triAGENS GmbH, Cologne, Germany
|
|
||||||
///
|
|
||||||
/// @author Jan Steemann
|
|
||||||
/// @author Copyright 2011-2013, triAGENS GmbH, Cologne, Germany
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
#ifndef TRIAGENS_VOC_BASE_MARKER_H
|
|
||||||
#define TRIAGENS_VOC_BASE_MARKER_H 1
|
|
||||||
|
|
||||||
#include "Basics/Common.h"
|
|
||||||
#include "VocBase/datafile.h"
|
|
||||||
#include "VocBase/voc-types.h"
|
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
|
||||||
// --SECTION-- public functions
|
|
||||||
// -----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @addtogroup VocBase
|
|
||||||
/// @{
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @brief returns the name for a marker
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
char const* TRI_NameMarker (TRI_df_marker_t const*);
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @brief initialises a marker with the most basic information
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
void TRI_InitMarker (char*,
|
|
||||||
TRI_df_marker_type_e,
|
|
||||||
TRI_voc_size_t);
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Local Variables:
|
|
||||||
// mode: outline-minor
|
|
||||||
// outline-regexp: "/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|/// @page\\|// --SECTION--\\|/// @\\}"
|
|
||||||
// End:
|
|
|
@ -184,7 +184,7 @@ char* Logfile::reserve (size_t size) {
|
||||||
TRI_df_header_marker_t Logfile::getHeaderMarker () const {
|
TRI_df_header_marker_t Logfile::getHeaderMarker () const {
|
||||||
TRI_df_header_marker_t header;
|
TRI_df_header_marker_t header;
|
||||||
size_t const size = sizeof(TRI_df_header_marker_t);
|
size_t const size = sizeof(TRI_df_header_marker_t);
|
||||||
TRI_InitMarker((char*) &header, TRI_DF_MARKER_HEADER, size);
|
TRI_InitMarkerDatafile((char*) &header, TRI_DF_MARKER_HEADER, size);
|
||||||
|
|
||||||
header._version = TRI_DF_VERSION;
|
header._version = TRI_DF_VERSION;
|
||||||
header._maximalSize = static_cast<TRI_voc_size_t>(allocatedSize());
|
header._maximalSize = static_cast<TRI_voc_size_t>(allocatedSize());
|
||||||
|
@ -200,7 +200,7 @@ TRI_df_header_marker_t Logfile::getHeaderMarker () const {
|
||||||
TRI_df_footer_marker_t Logfile::getFooterMarker () const {
|
TRI_df_footer_marker_t Logfile::getFooterMarker () const {
|
||||||
TRI_df_footer_marker_t footer;
|
TRI_df_footer_marker_t footer;
|
||||||
size_t const size = sizeof(TRI_df_footer_marker_t);
|
size_t const size = sizeof(TRI_df_footer_marker_t);
|
||||||
TRI_InitMarker((char*) &footer, TRI_DF_MARKER_FOOTER, size);
|
TRI_InitMarkerDatafile((char*) &footer, TRI_DF_MARKER_FOOTER, size);
|
||||||
|
|
||||||
return footer;
|
return footer;
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
#include "Basics/Common.h"
|
#include "Basics/Common.h"
|
||||||
#include "BasicsC/logging.h"
|
#include "BasicsC/logging.h"
|
||||||
#include "VocBase/datafile.h"
|
#include "VocBase/datafile.h"
|
||||||
#include "VocBase/marker.h"
|
#include "Wal/Marker.h"
|
||||||
|
|
||||||
namespace triagens {
|
namespace triagens {
|
||||||
namespace wal {
|
namespace wal {
|
||||||
|
|
|
@ -27,7 +27,6 @@
|
||||||
|
|
||||||
#include "Marker.h"
|
#include "Marker.h"
|
||||||
#include "VocBase/document-collection.h"
|
#include "VocBase/document-collection.h"
|
||||||
#include "VocBase/marker.h"
|
|
||||||
|
|
||||||
#undef DEBUG_WAL
|
#undef DEBUG_WAL
|
||||||
#undef DEBUG_WAL_DETAIL
|
#undef DEBUG_WAL_DETAIL
|
||||||
|
|
|
@ -31,7 +31,6 @@
|
||||||
#include "BasicsC/hashes.h"
|
#include "BasicsC/hashes.h"
|
||||||
#include "BasicsC/logging.h"
|
#include "BasicsC/logging.h"
|
||||||
#include "VocBase/datafile.h"
|
#include "VocBase/datafile.h"
|
||||||
#include "VocBase/marker.h"
|
|
||||||
#include "Wal/LogfileManager.h"
|
#include "Wal/LogfileManager.h"
|
||||||
|
|
||||||
using namespace triagens::wal;
|
using namespace triagens::wal;
|
||||||
|
|
Loading…
Reference in New Issue