1
0
Fork 0
arangodb/arangod/MMFiles
Jan 7290380dc7
Bug fix 3.4/increase replication timeouts (#6741)
2018-10-08 09:40:58 +02:00
..
CMakeLists.txt
MMFilesAllocatorThread.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesAllocatorThread.h
MMFilesCleanupThread.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesCleanupThread.h
MMFilesCollection.cpp backported some fixes from devel (#6698) 2018-10-02 19:58:55 +02:00
MMFilesCollection.h Resilience test failure points (#6545) 2018-09-20 01:04:38 +02:00
MMFilesCollectionExport.cpp Bug fix/add aql collection count cache (#6227) 2018-08-23 16:05:51 +02:00
MMFilesCollectionExport.h
MMFilesCollectionKeys.cpp issue 430.3: remove redundant constructor from SingleCollectionTransaction (#5996) 2018-07-26 16:54:53 +03:00
MMFilesCollectionKeys.h
MMFilesCollectionWriteLocker.h
MMFilesCollectorCache.h
MMFilesCollectorThread.cpp allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
MMFilesCollectorThread.h
MMFilesCompactionFeature.cpp issue 427.5: use ApplicationServer reference instead of pointer (#6145) 2018-08-15 12:16:02 +03:00
MMFilesCompactionFeature.h issue 427.5: use ApplicationServer reference instead of pointer (#6145) 2018-08-15 12:16:02 +03:00
MMFilesCompactionLocker.h
MMFilesCompactorThread.cpp Bug fix/add aql collection count cache (#6227) 2018-08-23 16:05:51 +02:00
MMFilesCompactorThread.h Bug fix/add aql collection count cache (#6227) 2018-08-23 16:05:51 +02:00
MMFilesDatafile.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesDatafile.h fixed some rare assertion failures complaining about non-sealed datafiles (#6139) 2018-08-09 21:55:13 +02:00
MMFilesDatafileHelper.h
MMFilesDatafileStatistics.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesDatafileStatistics.h
MMFilesDatafileStatisticsContainer.cpp
MMFilesDatafileStatisticsContainer.h
MMFilesDitch.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesDitch.h
MMFilesDocumentOperation.cpp
MMFilesDocumentOperation.h
MMFilesDocumentPosition.h
MMFilesEdgeIndex.cpp take over selectivity estimates (#6512) 2018-09-17 16:42:24 +02:00
MMFilesEdgeIndex.h take over selectivity estimates (#6512) 2018-09-17 16:42:24 +02:00
MMFilesEngine.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesEngine.h Bug fix/fixes 2508 (#6254) 2018-08-27 21:36:39 +02:00
MMFilesExportCursor.cpp fix non-blocking stream cursors (#6064) 2018-08-03 12:41:52 +02:00
MMFilesExportCursor.h fix non-blocking stream cursors (#6064) 2018-08-03 12:41:52 +02:00
MMFilesFulltextIndex.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesFulltextIndex.h Hide links (#6348) 2018-09-03 15:36:37 +02:00
MMFilesGeoIndex.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesGeoIndex.h Hide links (#6348) 2018-09-03 15:36:37 +02:00
MMFilesHashIndex.cpp take over selectivity estimates (#6512) 2018-09-17 16:42:24 +02:00
MMFilesHashIndex.h take over selectivity estimates (#6512) 2018-09-17 16:42:24 +02:00
MMFilesIncrementalSync.h Bug fix/add aql collection count cache (#6227) 2018-08-23 16:05:51 +02:00
MMFilesIndex.h Use RangeDelete where possible (#6121) 2018-08-15 18:52:09 +02:00
MMFilesIndexElement.cpp allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
MMFilesIndexElement.h
MMFilesIndexFactory.cpp
MMFilesIndexFactory.h
MMFilesLogfileManager.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesLogfileManager.h attempt to make replication_sync more reliable in tests for MMFiles (#6184) 2018-08-17 14:20:40 +02:00
MMFilesOptimizerRules.cpp Disable JS on DBServer, fix race in UserManager (#6244) 2018-08-24 22:20:49 +02:00
MMFilesOptimizerRules.h
MMFilesPathBasedIndex.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesPathBasedIndex.h Hide links (#6348) 2018-09-03 15:36:37 +02:00
MMFilesPersistentIndex.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesPersistentIndex.h take over selectivity estimates (#6512) 2018-09-17 16:42:24 +02:00
MMFilesPersistentIndexFeature.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesPersistentIndexFeature.h issue 427.5: use ApplicationServer reference instead of pointer (#6145) 2018-08-15 12:16:02 +03:00
MMFilesPersistentIndexKeyComparator.cpp
MMFilesPersistentIndexKeyComparator.h
MMFilesPrimaryIndex.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesPrimaryIndex.h take over selectivity estimates (#6512) 2018-09-17 16:42:24 +02:00
MMFilesRemoverThread.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesRemoverThread.h
MMFilesRestExportHandler.cpp
MMFilesRestExportHandler.h
MMFilesRestHandlers.cpp
MMFilesRestHandlers.h
MMFilesRestReplicationHandler.cpp Bug fix 3.4/increase replication timeouts (#6741) 2018-10-08 09:40:58 +02:00
MMFilesRestReplicationHandler.h
MMFilesRestWalHandler.cpp attempt to make MMFiles replication tests more deterministic (#6219) 2018-08-22 14:54:27 +02:00
MMFilesRestWalHandler.h
MMFilesRevisionsCache.cpp
MMFilesRevisionsCache.h allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
MMFilesSkiplist.h
MMFilesSkiplistIndex.cpp take over selectivity estimates (#6512) 2018-09-17 16:42:24 +02:00
MMFilesSkiplistIndex.h take over selectivity estimates (#6512) 2018-09-17 16:42:24 +02:00
MMFilesSynchronizerThread.cpp
MMFilesSynchronizerThread.h
MMFilesTransactionCollection.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesTransactionCollection.h
MMFilesTransactionContextData.cpp
MMFilesTransactionContextData.h
MMFilesTransactionManager.cpp
MMFilesTransactionManager.h
MMFilesTransactionState.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesTransactionState.h
MMFilesV8Functions.cpp issue 430.3: remove redundant constructor from SingleCollectionTransaction (#5996) 2018-07-26 16:54:53 +03:00
MMFilesV8Functions.h
MMFilesWalAccess.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesWalAccess.h
MMFilesWalLogfile.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesWalLogfile.h [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesWalMarker.h
MMFilesWalRecoverState.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesWalRecoverState.h
MMFilesWalRecoveryFeature.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesWalRecoveryFeature.h issue 427.5: use ApplicationServer reference instead of pointer (#6145) 2018-08-15 12:16:02 +03:00
MMFilesWalSlot.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesWalSlot.h
MMFilesWalSlots.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
MMFilesWalSlots.h
MMFilesWalSyncRegion.h
README.md
mmfiles-fulltext-common.h
mmfiles-fulltext-index.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
mmfiles-fulltext-index.h
mmfiles-fulltext-list.cpp
mmfiles-fulltext-list.h
mmfiles-fulltext-query.cpp
mmfiles-fulltext-query.h
mmfiles-replication-common.cpp
mmfiles-replication-common.h
mmfiles-replication-dump.cpp [3.4] Additional and cleaned-up logging (#6648) 2018-10-01 19:03:05 +02:00
mmfiles-replication-dump.h

README.md

MMFilesEngine

How operations are stored - Overview

All operations like insert or remove are written as markers to a write ahead log (WAL). This WAL consists of files of a certain size and if such a file is full (or is manually flushed), all relevant markers are transferred (transferMarkers()) to the journals of the respective collections. During the transfer any obsolete markers will be thrown away: a sequence of insert, remove, insert on the same document will result in the last insert discarding the previous operations. When a journal file of size (journalSize()) is full, it will be sealed and renamed. By applying these operations it will become a datafile that is read-only. Datafiles will eventually be merged by a compactor thread that does about the same work as the transferMarkers function, reducing the size of the stored data.

Ditches

Ditches are used to pin objects in WAL or journal as long as they are used by other operations.