1
0
Fork 0
arangodb/arangod/MMFiles
Vasiliy a46122efde issue 427.2: ensure the underlying error is properly propagated up (#6100) 2018-08-07 15:22:04 +02:00
..
CMakeLists.txt
MMFilesAllocatorThread.cpp
MMFilesAllocatorThread.h
MMFilesCleanupThread.cpp
MMFilesCleanupThread.h
MMFilesCollection.cpp Fix dumping of views in the cluster (#6024) 2018-08-02 17:25:49 +02:00
MMFilesCollection.h Bug fix/meierloch (#5895) 2018-07-17 11:39:50 +02:00
MMFilesCollectionExport.cpp
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 Async AQL (#5806) 2018-07-09 14:24:10 +02:00
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 Feature/feature phases (#5272) 2018-07-16 14:09:36 +02:00
MMFilesCompactionFeature.h
MMFilesCompactionLocker.h
MMFilesCompactorThread.cpp issue 430.3: remove redundant constructor from SingleCollectionTransaction (#5996) 2018-07-26 16:54:53 +03:00
MMFilesCompactorThread.h issue 430.3: remove redundant constructor from SingleCollectionTransaction (#5996) 2018-07-26 16:54:53 +03:00
MMFilesDatafile.cpp View Replication (#5915) 2018-07-26 10:28:46 +02:00
MMFilesDatafile.h View Replication (#5915) 2018-07-26 10:28:46 +02:00
MMFilesDatafileHelper.h View Replication (#5915) 2018-07-26 10:28:46 +02:00
MMFilesDatafileStatistics.cpp
MMFilesDatafileStatistics.h
MMFilesDatafileStatisticsContainer.cpp
MMFilesDatafileStatisticsContainer.h
MMFilesDitch.cpp issue 399.2: use a LogicalCollection& instead of LogicalCollection* in PhysicalCollection (#5861) 2018-07-13 15:02:43 +03:00
MMFilesDitch.h issue 399.2: use a LogicalCollection& instead of LogicalCollection* in PhysicalCollection (#5861) 2018-07-13 15:02:43 +03:00
MMFilesDocumentOperation.cpp
MMFilesDocumentOperation.h
MMFilesDocumentPosition.h
MMFilesEdgeIndex.cpp allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
MMFilesEdgeIndex.h allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
MMFilesEngine.cpp allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
MMFilesEngine.h View Replication (#5915) 2018-07-26 10:28:46 +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 issue 399.4: use LogicalCollection& instead of LogicalCollection* in Index (#5929) 2018-07-20 14:55:58 +03:00
MMFilesFulltextIndex.h issue 399.4: use LogicalCollection& instead of LogicalCollection* in Index (#5929) 2018-07-20 14:55:58 +03:00
MMFilesGeoIndex.cpp allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
MMFilesGeoIndex.h issue 399.4: use LogicalCollection& instead of LogicalCollection* in Index (#5929) 2018-07-20 14:55:58 +03:00
MMFilesHashIndex.cpp allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
MMFilesHashIndex.h allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
MMFilesIncrementalSync.h issue 430.3: remove redundant constructor from SingleCollectionTransaction (#5996) 2018-07-26 16:54:53 +03:00
MMFilesIndex.h issue 399.4: use LogicalCollection& instead of LogicalCollection* in Index (#5929) 2018-07-20 14:55:58 +03: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 issue 399.4: use LogicalCollection& instead of LogicalCollection* in Index (#5929) 2018-07-20 14:55:58 +03:00
MMFilesIndexFactory.h issue 399.4: use LogicalCollection& instead of LogicalCollection* in Index (#5929) 2018-07-20 14:55:58 +03:00
MMFilesLogfileManager.cpp Bug fix/3107 (#6046) 2018-08-01 12:50:55 +02:00
MMFilesLogfileManager.h
MMFilesOptimizerRules.cpp use ExecutionNode::castTo (#5875) 2018-07-13 20:09:16 +02:00
MMFilesOptimizerRules.h
MMFilesPathBasedIndex.cpp remove methods from VelocyPackHelper that are also in VPackSlice (#5946) 2018-07-25 09:01:29 +02:00
MMFilesPathBasedIndex.h issue 399.4: use LogicalCollection& instead of LogicalCollection* in Index (#5929) 2018-07-20 14:55:58 +03:00
MMFilesPersistentIndex.cpp issue 399.4: use LogicalCollection& instead of LogicalCollection* in Index (#5929) 2018-07-20 14:55:58 +03:00
MMFilesPersistentIndex.h issue 399.4: use LogicalCollection& instead of LogicalCollection* in Index (#5929) 2018-07-20 14:55:58 +03:00
MMFilesPersistentIndexFeature.cpp Feature/feature phases (#5272) 2018-07-16 14:09:36 +02:00
MMFilesPersistentIndexFeature.h
MMFilesPersistentIndexKeyComparator.cpp
MMFilesPersistentIndexKeyComparator.h
MMFilesPrimaryIndex.cpp Bug fix/3007 (#6019) 2018-07-30 17:16:47 +02:00
MMFilesPrimaryIndex.h allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
MMFilesRemoverThread.cpp
MMFilesRemoverThread.h
MMFilesRestExportHandler.cpp Async AQL (#5806) 2018-07-09 14:24:10 +02:00
MMFilesRestExportHandler.h Async AQL (#5806) 2018-07-09 14:24:10 +02:00
MMFilesRestHandlers.cpp
MMFilesRestHandlers.h
MMFilesRestReplicationHandler.cpp Bug fix/3107 (#6046) 2018-08-01 12:50:55 +02:00
MMFilesRestReplicationHandler.h Async AQL (#5806) 2018-07-09 14:24:10 +02:00
MMFilesRestWalHandler.cpp remove methods from VelocyPackHelper that are also in VPackSlice (#5946) 2018-07-25 09:01:29 +02:00
MMFilesRestWalHandler.h Async AQL (#5806) 2018-07-09 14:24:10 +02:00
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 Feature/misc spelling corrections (#5164) 2018-07-13 13:06:20 +02:00
MMFilesSkiplistIndex.cpp allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
MMFilesSkiplistIndex.h allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
MMFilesSynchronizerThread.cpp
MMFilesSynchronizerThread.h
MMFilesTransactionCollection.cpp issue 427.2: ensure the underlying error is properly propagated up (#6100) 2018-08-07 15:22:04 +02:00
MMFilesTransactionCollection.h
MMFilesTransactionContextData.cpp
MMFilesTransactionContextData.h
MMFilesTransactionManager.cpp
MMFilesTransactionManager.h
MMFilesTransactionState.cpp
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 View Replication (#5915) 2018-07-26 10:28:46 +02:00
MMFilesWalAccess.h
MMFilesWalLogfile.cpp
MMFilesWalLogfile.h
MMFilesWalMarker.h
MMFilesWalRecoverState.cpp issue 430.3: remove redundant constructor from SingleCollectionTransaction (#5996) 2018-07-26 16:54:53 +03:00
MMFilesWalRecoverState.h
MMFilesWalRecoveryFeature.cpp Feature/feature phases (#5272) 2018-07-16 14:09:36 +02:00
MMFilesWalRecoveryFeature.h
MMFilesWalSlot.cpp
MMFilesWalSlot.h
MMFilesWalSlots.cpp Feature/misc spelling corrections (#5164) 2018-07-13 13:06:20 +02:00
MMFilesWalSlots.h
MMFilesWalSyncRegion.h
README.md
mmfiles-fulltext-common.h
mmfiles-fulltext-index.cpp fix typos 2018-08-07 11:53:51 +02:00
mmfiles-fulltext-index.h
mmfiles-fulltext-list.cpp Feature/misc spelling corrections (#5164) 2018-07-13 13:06:20 +02:00
mmfiles-fulltext-list.h
mmfiles-fulltext-query.cpp
mmfiles-fulltext-query.h
mmfiles-replication-common.cpp View Replication (#5915) 2018-07-26 10:28:46 +02:00
mmfiles-replication-common.h
mmfiles-replication-dump.cpp View Replication (#5915) 2018-07-26 10:28:46 +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.