1
0
Fork 0
arangodb/arangod/MMFiles
jsteemann 377431b138 abort waitForSync ops during server shutdown 2017-06-01 17:07:09 +02:00
..
CMakeLists.txt optimize away own transaction management for RocksDB engine 2017-05-04 23:16:53 +02:00
MMFilesAllocatorThread.cpp
MMFilesAllocatorThread.h
MMFilesAqlFunctions.cpp
MMFilesAqlFunctions.h
MMFilesCleanupThread.cpp removing unused and unimplemented methods 2017-05-10 18:25:41 +02:00
MMFilesCleanupThread.h
MMFilesCollection.cpp fixed incremental replication 2017-05-31 18:08:05 +02:00
MMFilesCollection.h fixed incremental replication 2017-05-31 18:08:05 +02:00
MMFilesCollectionExport.cpp move common code into its own file 2017-05-22 17:46:12 +02:00
MMFilesCollectionExport.h move common code into its own file 2017-05-22 17:46:12 +02:00
MMFilesCollectionKeys.cpp removing unused and unimplemented methods 2017-05-10 18:25:41 +02:00
MMFilesCollectionKeys.h
MMFilesCollectionReadLocker.h honor exclusive locks 2017-04-25 12:56:56 +02:00
MMFilesCollectionWriteLocker.h honor exclusive locks 2017-04-25 12:56:56 +02:00
MMFilesCollectorCache.h
MMFilesCollectorThread.cpp optimize away own transaction management for RocksDB engine 2017-05-04 23:16:53 +02:00
MMFilesCollectorThread.h
MMFilesCompactionLocker.h
MMFilesCompactorThread.cpp removing unused and unimplemented methods 2017-05-10 18:25:41 +02:00
MMFilesCompactorThread.h
MMFilesDatafile.cpp Various warnings 2017-04-26 11:26:08 +02:00
MMFilesDatafile.h
MMFilesDatafileHelper.h
MMFilesDatafileStatistics.cpp
MMFilesDatafileStatistics.h
MMFilesDatafileStatisticsContainer.cpp
MMFilesDatafileStatisticsContainer.h
MMFilesDitch.cpp
MMFilesDitch.h
MMFilesDocumentOperation.cpp
MMFilesDocumentOperation.h
MMFilesDocumentPosition.h
MMFilesEdgeIndex.cpp fix crashes 2017-04-25 15:47:11 +02:00
MMFilesEdgeIndex.h fix crashes 2017-04-25 15:47:11 +02:00
MMFilesEngine.cpp abort waitForSync ops during server shutdown 2017-06-01 17:07:09 +02:00
MMFilesEngine.h added tests for intermediate commits 2017-05-30 12:03:58 +02:00
MMFilesExportCursor.cpp move common code into its own file 2017-05-22 17:46:12 +02:00
MMFilesExportCursor.h
MMFilesFulltextIndex.cpp Geo index update, renaming 2017-05-11 13:19:51 +02:00
MMFilesFulltextIndex.h Fixing fulltext deduplication 2017-05-10 16:17:46 +02:00
MMFilesGeoIndex.cpp Changed index VPack building to include forPersistence flag. 2017-04-17 17:04:50 -04:00
MMFilesGeoIndex.h Changed index VPack building to include forPersistence flag. 2017-04-17 17:04:50 -04:00
MMFilesHashIndex.cpp fix crashes 2017-04-25 15:47:11 +02:00
MMFilesHashIndex.h fix crashes 2017-04-25 15:47:11 +02:00
MMFilesIncrementalSync.h Renaming files 2017-05-31 18:12:47 +02:00
MMFilesIndexElement.cpp
MMFilesIndexElement.h
MMFilesIndexFactory.cpp Removed code paths that wrote objectIds into the Agency. This did break replication. 2017-05-02 14:59:19 +02:00
MMFilesIndexFactory.h Removed code paths that wrote objectIds into the Agency. This did break replication. 2017-05-02 14:59:19 +02:00
MMFilesLogfileManager.cpp abort waitForSync ops during server shutdown 2017-06-01 17:07:09 +02:00
MMFilesLogfileManager.h optimize away own transaction management for RocksDB engine 2017-05-04 23:16:53 +02:00
MMFilesOptimizerRules.cpp Working geo index + tests 2017-05-09 15:04:51 +02:00
MMFilesOptimizerRules.h Working geo index + tests 2017-05-09 15:04:51 +02:00
MMFilesPathBasedIndex.cpp added assert 2017-04-12 15:38:01 +02:00
MMFilesPathBasedIndex.h
MMFilesPersistentIndex.cpp Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-04-18 11:33:16 +02:00
MMFilesPersistentIndex.h Changed index VPack building to include forPersistence flag. 2017-04-17 17:04:50 -04:00
MMFilesPersistentIndexFeature.cpp remove unused options 2017-05-12 12:12:09 +02:00
MMFilesPersistentIndexFeature.h change --rocksdb.enabled to be a obosolete option 2017-04-19 14:54:10 +02:00
MMFilesPersistentIndexKeyComparator.cpp
MMFilesPersistentIndexKeyComparator.h
MMFilesPrimaryIndex.cpp fixes for non-array IN lookups, added tests 2017-04-25 01:47:07 +02:00
MMFilesPrimaryIndex.h Changed index VPack building to include forPersistence flag. 2017-04-17 17:04:50 -04:00
MMFilesRemoverThread.cpp
MMFilesRemoverThread.h
MMFilesRestExportHandler.cpp move common code into its own file 2017-05-22 17:46:12 +02:00
MMFilesRestExportHandler.h move common code into its own file 2017-05-22 17:46:12 +02:00
MMFilesRestHandlers.cpp Moved MMFiles replication handler. 2017-04-18 15:35:45 -04:00
MMFilesRestHandlers.h
MMFilesRestReplicationHandler.cpp try to honor server shutdown while locks are held 2017-06-01 02:24:00 +02:00
MMFilesRestReplicationHandler.h more dictributeShardsLike code mergedfrom 3.1 2017-04-24 15:13:40 +02:00
MMFilesRestWalHandler.cpp issue #2505 2017-05-29 10:29:47 +02:00
MMFilesRestWalHandler.h
MMFilesRevisionsCache.cpp
MMFilesRevisionsCache.h
MMFilesSkiplist.h
MMFilesSkiplistIndex.cpp fix gcc 4.9 compilation issue 2017-04-24 11:25:10 +02:00
MMFilesSkiplistIndex.h Changed index VPack building to include forPersistence flag. 2017-04-17 17:04:50 -04:00
MMFilesSynchronizerThread.cpp
MMFilesSynchronizerThread.h
MMFilesToken.h
MMFilesTransactionCollection.cpp turn off deadlock detector in obvious cases in which it is not necessary 2017-04-27 14:47:19 +02:00
MMFilesTransactionCollection.h
MMFilesTransactionContextData.cpp
MMFilesTransactionContextData.h
MMFilesTransactionManager.cpp optimize away own transaction management for RocksDB engine 2017-05-04 23:16:53 +02:00
MMFilesTransactionManager.h optimize away own transaction management for RocksDB engine 2017-05-04 23:16:53 +02:00
MMFilesTransactionState.cpp added tests for intermediate commits 2017-05-30 12:03:58 +02:00
MMFilesTransactionState.h added tests for intermediate commits 2017-05-30 12:03:58 +02:00
MMFilesV8Functions.cpp fix db._engineStats() 2017-05-04 00:33:36 +02:00
MMFilesV8Functions.h fix db._engineStats() 2017-05-04 00:33:36 +02:00
MMFilesView.cpp
MMFilesView.h
MMFilesWalLogfile.cpp
MMFilesWalLogfile.h
MMFilesWalMarker.h
MMFilesWalRecoverState.cpp fix compile warning 2017-04-19 12:31:13 +02:00
MMFilesWalRecoverState.h
MMFilesWalRecoveryFeature.cpp try to fix startup order 2017-04-25 11:14:10 +02:00
MMFilesWalRecoveryFeature.h
MMFilesWalSlot.cpp
MMFilesWalSlot.h
MMFilesWalSlots.cpp abort waitForSync ops during server shutdown 2017-06-01 17:07:09 +02:00
MMFilesWalSlots.h abort waitForSync ops during server shutdown 2017-06-01 17:07:09 +02:00
MMFilesWalSyncRegion.h
README.md
mmfiles-fulltext-common.h
mmfiles-fulltext-handles.cpp
mmfiles-fulltext-handles.h
mmfiles-fulltext-index.cpp cppcheck 2017-05-10 18:24:34 +02:00
mmfiles-fulltext-index.h cppcheck 2017-05-10 18:24:34 +02:00
mmfiles-fulltext-list.cpp
mmfiles-fulltext-list.h
mmfiles-fulltext-query.cpp
mmfiles-fulltext-query.h
mmfiles-fulltext-result.cpp
mmfiles-fulltext-result.h
mmfiles-geo-index.cpp
mmfiles-geo-index.h
mmfiles-replication-dump.cpp Squashed commit of the following: 2017-05-12 23:22:22 +02:00
mmfiles-replication-dump.h Squashed commit of the following: 2017-05-12 23:22:22 +02:00

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.