1
0
Fork 0
Commit Graph

3076 Commits

Author SHA1 Message Date
Michael Hackstein 99d1b1edec Moved CompactionLocker into MMFiles. 2017-02-22 10:39:31 +01:00
Jan Christoph Uhde fcfe66e254 add getAll/AnyIterator to LogicalCollection 2017-02-22 09:24:38 +01:00
Jan Christoph Uhde 3467031cb9 remove transferMarkers from StorageEngine.h 2017-02-21 16:00:37 +01:00
Jan Christoph Uhde d73d25a310 remove some includes 2017-02-21 14:43:21 +01:00
Michael Hackstein 0f7d50765d Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-21 14:12:16 +01:00
Michael Hackstein fbdbfdcb6d Moved primaryIndex knowledge out of Logical Collection. Also moved logic for close into MMFiles 2017-02-21 14:12:07 +01:00
Jan Christoph Uhde 133961ff8d remove applyForTickRange from LogicalCollection 2017-02-21 13:42:59 +01:00
jsteemann f5c8932744 initial version of query execution plan cache, still very rough 2017-02-21 11:58:38 +01:00
Jan Christoph Uhde e9555e4b10 remove rotateJournals from LogicalCollection 2017-02-21 11:06:53 +01:00
Jan Christoph Uhde 6e1f77be24 remove ditches from interface. the ditches concept needs fixing!! 2017-02-21 10:53:51 +01:00
Jan Christoph Uhde 0f86801645 remove updateStats from LogicalCollection interface 2017-02-21 10:06:51 +01:00
Jan Christoph Uhde cf970ed230 Squashed commit of the following:
commit 2644735fe06806ec8ffb78ceb2ede04037258952
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Feb 21 09:10:55 2017 +0100

    failed ammend

commit c2b8604df5a60fd00e57b4f088fe8a2624d9ac3b
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Feb 20 12:49:58 2017 +0100

    move - maxTick to Physical - RACE!
2017-02-21 09:19:49 +01:00
Jan Christoph Uhde 071137adf6 move doCompact into PhysicalColletion 2017-02-20 10:53:11 +01:00
Jan Christoph Uhde f3a1f128ee remove isFullyCollected from LogicalCollection 2017-02-20 10:28:28 +01:00
Jan Christoph Uhde 40a1345f76 Merge branch 'engine-api' of github.com:arangodb/arangodb into obi-engine-api
* 'engine-api' of github.com:arangodb/arangodb:
  Moved logic for drop index into MMFilesCollection
2017-02-20 09:50:17 +01:00
Michael Hackstein 17effdc065 Moved logic for drop index into MMFilesCollection 2017-02-20 09:06:41 +01:00
Jan Christoph Uhde 21cb8e3217 Merge branch 'engine-api' of github.com:arangodb/arangodb into obi-engine-api
* 'engine-api' of github.com:arangodb/arangodb:
  Removed readRevision from LogicalCollection. You only get readDocument with a token. Moved it's logic into MMFilesCollection. removed the ignoreWal parameter from readDocumentConditional. It was always true anyways...
  Moved pre-commit document modifications out of logical-collection into the physical collection. They are only relevant when actually writing to disc.
  Moved useSecondaryIndexes check from Logical to MMFiles collection
  Some cleanup in Logical collection imports
  Moved index filling into the MMFiles collection
  changelog
  grunt build
  css
  ui: queries now using cursors api - issue #2065
  remove crosscompile hack - it doesn't work anymore
  updated CHANGELOG
  add changlog entry for stacktrace log messages
  clean up write lockers a bit
  fix too early closing of sockets
  Moved restoreIndex to Physical collection.
  Fix a shell script used during build.
  Lower log level to debug in shutdown message.
  fix spelling
  Moved saveIndex logic into the physical collection
  fix potential deadlock

Conflicts:
	arangod/MMFiles/MMFilesCollection.cpp
	arangod/MMFiles/MMFilesCollection.h
	arangod/VocBase/LogicalCollection.cpp
2017-02-18 19:10:45 +01:00
Jan Christoph Uhde 2d5e74f7f6 move journaize() to PhysicalCollection
MMFilesCollection ctor might be buggy
2017-02-17 20:06:47 +01:00
Michael Hackstein 92f52b13d3 Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-17 17:29:53 +01:00
Michael Hackstein 91f303e963 Removed readRevision from LogicalCollection. You only get readDocument with a token. Moved it's logic into MMFilesCollection. removed the ignoreWal parameter from readDocumentConditional. It was always true anyways... 2017-02-17 17:29:49 +01:00
Michael Hackstein b84b05244f Moved pre-commit document modifications out of logical-collection into the physical collection. They are only relevant when actually writing to disc. 2017-02-17 16:07:02 +01:00
jsteemann c652a313da Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-17 14:03:59 +01:00
Michael Hackstein 5366f09ec8 Moved useSecondaryIndexes check from Logical to MMFiles collection 2017-02-17 13:33:00 +01:00
Michael Hackstein e396446a17 Some cleanup in Logical collection imports 2017-02-17 13:16:22 +01:00
Michael Hackstein c543dd06a4 Moved index filling into the MMFiles collection 2017-02-17 12:56:54 +01:00
jsteemann 3e7432ccd6 clean up write lockers a bit 2017-02-16 15:44:45 +01:00
Michael Hackstein f0fbe78b2d Moved restoreIndex to Physical collection. 2017-02-16 15:01:00 +01:00
Jan Christoph Uhde b34d4356bc remove dead code 2017-02-16 13:14:27 +01:00
Michael Hackstein a3aae2e43b Moved saveIndex logic into the physical collection 2017-02-16 12:53:05 +01:00
jsteemann e7a0b181e6 fix potential deadlock 2017-02-16 12:04:36 +01:00
Michael Hackstein 94fbfaa453 Moved the entire logic of open() to the Physical collection. It is different for each StorageEngine. 2017-02-15 16:26:55 +01:00
Michael Hackstein c3ff82f4e1 Moved version management to MMFiles collection. Logical does not need to know it. Removed PhysicalCollection inclode from logicical collection. Now we should rebuild less code whan changing sth in storage engine. 2017-02-15 15:48:33 +01:00
jsteemann 7ff2e19abb Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-15 12:46:06 +01:00
Michael Hackstein cc999641a5 Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-15 12:36:53 +01:00
Jan Christoph Uhde be89cac445 move path from logical to physical 2017-02-15 11:43:38 +01:00
Michael Hackstein d49cbffc46 Moved revision handling from Logical to MMFiles collection. That is only relevant for MMFiles. 2017-02-15 11:26:58 +01:00
jsteemann ffa5e2aa54 Merge branch 'engine-api' of https://github.com/arangodb/arangodb into engine-api 2017-02-15 10:26:11 +01:00
jsteemann df3a3eff9f refactoring 2017-02-15 10:26:05 +01:00
Michael Hackstein 9e41a7a6bb Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-15 10:09:55 +01:00
Michael Hackstein 089816a353 Moved Rollback Operation and InsertIntoIndexes from Logical to MMFilesCollection. This is marker/index specific code. 2017-02-15 10:09:51 +01:00
jsteemann 328ff8a09e Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-15 00:09:42 +01:00
jsteemann 3ba6f1a1f5 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-14 16:16:01 +01:00
Jan Christoph Uhde ce3b1ff9b5 Merge branch 'obi-storage' into devel
* obi-storage:
  move compation locking / figures out of logical collection

Conflicts:
	arangod/MMFiles/MMFilesCollection.h
	arangod/VocBase/LogicalCollection.h
2017-02-14 16:14:25 +01:00
jsteemann 1b5445731b potential fixes for MSVC 2017-02-14 16:01:00 +01:00
Michael Hackstein 50368b9985 Moved CollectionRead/WriteLocker to MMFiles. Also moved cleanupIndexes to MMFilesCollection 2017-02-14 15:12:36 +01:00
Michael Hackstein dffd9fc807 Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-14 14:08:56 +01:00
Michael Hackstein d5e14a95f4 Moved truncate logic from Transaction::Methods to MMFilesCollection. It can do optimizations if close to the DB layer 2017-02-14 13:50:29 +01:00
jsteemann 0909ffe69b moved helper functions into their own file 2017-02-14 13:44:54 +01:00
jsteemann 8a2e353f3d move encoding functions into their own file 2017-02-14 12:57:15 +01:00
Michael Hackstein c6830fb999 Moved more internal logic from Logical to Physical collection 2017-02-14 12:38:09 +01:00
jsteemann 80be198a39 moved helper classes into their own file 2017-02-14 12:35:34 +01:00
Jan Christoph Uhde 071d147c5f move compation locking / figures out of logical collection 2017-02-14 12:34:46 +01:00
Michael Hackstein 6605a01410 Moved lookupDocument form LogicalCollection into MMFilesCollection. It is SE specific. 2017-02-14 11:37:45 +01:00
Michael Hackstein 32bd15d098 Renamed collection->update() to update the properties of a collection to collection->updateProperties(). There is another update() which is used for the stored Documents. 2017-02-14 10:32:24 +01:00
Michael Hackstein c8757efc8e Moved engine specific logic of Document Remove from Logical To Physical Collection 2017-02-14 10:20:32 +01:00
jsteemann b666254d4b make constructor explicit 2017-02-14 08:59:05 +01:00
Michael Hackstein 2824c349bb Moved EngineSpecific logic of update() from LogicalCollection to MMFilesCollection. 2017-02-13 17:45:33 +01:00
Michael Hackstein c42b358987 Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-13 16:27:41 +01:00
Michael Hackstein 91a0d30122 Moved the engine specific parts of remove from LogicalCollection to Physical Collection. 2017-02-13 16:17:26 +01:00
jsteemann 0e5cd5ea1d fix compile errors 2017-02-13 15:42:35 +01:00
jsteemann 383b534f5d fix compile errors 2017-02-13 15:42:02 +01:00
jsteemann 1ce4d4a97e Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-13 15:29:59 +01:00
jsteemann 92f61416ca Merge branch 'engine-api' of https://github.com/arangodb/arangodb into engine-api 2017-02-13 15:25:17 +01:00
Jan Christoph Uhde 82f91cfa1b prepare move of compaction to physicalcollection 2017-02-13 15:22:38 +01:00
jsteemann 7e690a0c61 renaming 2017-02-13 15:18:40 +01:00
Michael Hackstein e0bdc5c122 Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-13 14:58:54 +01:00
Michael Hackstein 0c30c290c6 Moved parts of LogicalCollection->insert() into the PhysicalCollectioN 2017-02-13 14:38:22 +01:00
jsteemann eb73dbf960 renaming 2017-02-13 13:30:57 +01:00
Jan Christoph Uhde 27309d1de0 Merge branch 'devel' of github.com:arangodb/arangodb into devel
* 'devel' of github.com:arangodb/arangodb: (47 commits)
  arangoexport: continue documentation
  arangoexport: documentation continued
  arangoexport: config for client package
  arangoexport: refix xml attribute escaping
  arangoexport: Documentation
  README_maintainers: mention pythons webserver to view generated documentation
  arangoexport: Documentation
  arangoexport: start documentation
  arangoexport: switch to LOG_TOPIC
  arangoexport: xgmml encode attribute values
  arangoexport: remove unnecessary xmlns declaration
  arangoexport: added stats http, written size
  arangoexport: take --xgmml-label-attribute into account
  arangoexport: xgmml set label attribute
  arangoexport: error msgs improvements, dont create file if collection or graph are 404
  added arangoexport to Documentation/CMakeLists
  updated ReleaseNotes and added NewFeatures32
  arangoexport: added manpage
  arangoexport: mention in CHANGELOG
  arangoexport: inital work on test
  ...
2017-02-13 12:59:58 +01:00
jsteemann f09ec85127 renaming 2017-02-13 12:27:26 +01:00
Jan Christoph Uhde 163b3d45bf remove fullyCollected and friends from LogicalCollection 2017-02-13 11:47:22 +01:00
jsteemann 8b273b5eaf Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-13 08:37:41 +01:00
jsteemann 1e78acad49 fix size_t vs uint64_t confusion 2017-02-10 23:43:47 +01:00
Michael Hackstein 01d5559ad5 Removed unnecessary includes 2017-02-10 16:28:05 +01:00
Simon Grätzer edab268572 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	arangod/Aql/FunctionDefinitions.cpp
#	arangod/Aql/Functions.h
#	arangod/Utils/ExplicitTransaction.h
2017-02-10 15:21:24 +01:00
Jan Christoph Uhde 929390cee1 move index marker creation to storage engine
remove MMFilesLogfileManager from LogicalCollection

fix marker type
2017-02-10 15:14:34 +01:00
Michael Hackstein 6b5d4b1d3d Reimplemented EdgeCollectionInfo to use Ast Conditions instead of VelocyPack. 2017-02-10 15:11:36 +01:00
jsteemann 103ceec2f5 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-10 09:43:23 +01:00
jsteemann d024a6d00a remove logging for non-topics 2017-02-10 09:32:50 +01:00
jsteemann ab21b0b1ff move functionality into engine 2017-02-09 14:50:41 +01:00
Michael Hackstein 5dfd652d64 Merge branch 'devel' of github.com:arangodb/arangodb into engine-api 2017-02-08 15:57:30 +01:00
Max Neunhoeffer bde48d524d Change undocumented behaviour in case of invalid rev in JS document ops.
An invalid rev should lead to a 1200 ("conflict") error rather than a
1239 ("illegal document revision") error. This is more intuitive and
in line with the corresponding change in the HTTP API. No tests needed
adjustment.
2017-02-08 10:59:04 +01:00
jsteemann 5bc2a3680c move some MMFiles-specific things into MMFiles directory 2017-02-07 16:38:04 +01:00
jsteemann 2c9e220f03 refactoring 2017-02-07 14:36:03 +01:00
jsteemann 3b1e3fac52 make TransactionCollection more engine-specific 2017-02-07 11:24:58 +01:00
jsteemann 27113d2b8c moved function into class 2017-02-07 08:55:20 +01:00
Michael Hackstein 63f0e52e49 Fixed a bug in primaryindex. In some cases it reported that it could not find more documents although there were more. 2017-02-03 16:15:41 +01:00
Michael Hackstein 5e4b9e42b3 Fixed minor bugs in usage of callback-based index-api. Remove unused old next and nextBabies index iterator functions. 2017-02-03 13:22:06 +01:00
Michael Hackstein d250a3e12d Replaced SingleServer EdgeCursor mit Callback based OpCursor API. This class is NOT future-proof. It assumes that Slice addresses stay valid 2017-02-02 15:32:45 +01:00
Simon Grätzer 13f19fe51b Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	arangod/CMakeLists.txt
#	arangod/RestServer/arangod.cpp
#	arangod/Utils/ExplicitTransaction.h
#	arangod/V8Server/v8-collection.cpp
2017-02-02 11:25:23 +01:00
Michael Hackstein 5f4027a75c Removed further unnecessary includes 2017-02-01 16:39:37 +01:00
jsteemann fae1f7ba63 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-01 13:00:34 +01:00
jsteemann e9709763f7 removed a left-over usleep 2017-02-01 13:00:18 +01:00
jsteemann 5939ff249f remove now unused files 2017-02-01 12:39:24 +01:00
jsteemann 769d58ec82 fix MSVC compile warning 2017-02-01 10:57:54 +01:00
jsteemann 62827583d4 try to fix compile error 2017-01-31 16:12:16 +01:00
jsteemann 6598828449 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-01-31 00:33:42 +01:00
Simon Grätzer 40b3d1511c Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-30 20:39:36 +01:00
Dan Larkin 5b736dc319 Changed index-filling to dispatch batch insertion tasks to scheduler, obsoleted index-threads option. 2017-01-30 13:05:10 -05:00
jsteemann d96ce9af37 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-01-30 12:53:10 +01:00
jsteemann cea0ecabad Merge branch 'engine-api' of https://github.com/arangodb/arangodb into engine-api 2017-01-30 09:03:55 +01:00
jsteemann 802c384448 renaming 2017-01-30 09:02:57 +01:00
Michael Hackstein 55e0f63fec Moved major Index-creation out of LogicalCollection into the StorageEngine Specific IndexFactory. 2017-01-29 15:08:26 +01:00
Simon Grätzer 37243315e9 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-28 15:30:28 +01:00
Max Neunhoeffer 542e9a0f10 Fix LogicalCollection::toVelocyPack after merge chaos. 2017-01-27 22:32:06 +01:00
Michael Hackstein 57b6174ff1 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2017-01-27 17:57:21 +01:00
Simon Grätzer 64343cd579 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	scripts/startLocalCluster.sh
2017-01-27 15:58:22 +01:00
jsteemann 4d5875f42f refactoring 2017-01-27 15:57:22 +01:00
jsteemann 67ac80a469 fixed after merge 2017-01-27 13:55:50 +01:00
jsteemann bbca3dde1c Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-01-27 13:52:36 +01:00
jsteemann d9f0496cf4 fix segfault 2017-01-27 13:10:23 +01:00
Michael Hackstein d5d316b971 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2017-01-27 09:58:02 +01:00
jsteemann a4356f0499 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-01-26 16:52:13 +01:00
jsteemann 0cb7d416d0 moved transaction collections into their own files 2017-01-26 16:51:57 +01:00
Andreas Streichardt 8e5a28d6fc assert so we get a core :S 2017-01-26 16:33:58 +01:00
jsteemann b7aa2abdce fixed test 2017-01-26 13:15:52 +01:00
jsteemann 20a2fd308b speed up remove a bit 2017-01-26 12:49:34 +01:00
Michael Hackstein f61a27d0e6 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2017-01-26 09:50:00 +01:00
jsteemann 6a4842b229 Merge branch 'engine-api' of https://github.com/arangodb/arangodb into engine-api 2017-01-25 16:30:33 +01:00
jsteemann de41509d9d factored out TransactionState 2017-01-25 15:55:01 +01:00
Michael Hackstein 00448bfc26 Transaction::invokeOnAllElements now works with a callback taken DocumentIdentifierTokens instead of IndexElements. 2017-01-25 15:03:08 +01:00
jsteemann 3a61217438 Merge branch 'engine-api' of https://github.com/arangodb/arangodb into engine-api 2017-01-25 13:29:13 +01:00
jsteemann 4e0a07411f fix timeout 2017-01-25 13:28:53 +01:00
Michael Hackstein 786ab413f8 Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-01-25 13:20:24 +01:00
Michael Hackstein ce6d3b3492 The Fulltext index now return DocumentIdentifierTokens instead of revisions. Removed one inderection rid <-> Index_doc which were a typedef. 2017-01-25 13:20:15 +01:00
jsteemann d7b131852c factored out transaction hints 2017-01-25 13:12:09 +01:00
jsteemann 00b1632ece factored out AccessMode from transaction.h 2017-01-25 11:57:21 +01:00
Michael Hackstein 78b83eefc4 Renamed => getMoreMptr in OpCursor to getMoreTokens, Removed default Parameter 2017-01-25 10:46:37 +01:00
Michael Hackstein 2133b1448c Moved index API to return DocumentIdentifierTokens which are independent of the underlying storage engine. The agreement is, that the Engine gives a uint64_t sized identifier which allows to fetch any document back again. For MMFiles Engine this identifier is the revision. 2017-01-24 18:19:25 +01:00
jsteemann e3bcb90916 remove revisions cache 2017-01-24 10:48:07 +01:00
jsteemann d4d5d1f39f fixed some tests 2017-01-23 16:55:41 +01:00
jsteemann c4d2ff3dce renaming 2017-01-23 15:36:11 +01:00
jsteemann 7fedb4e956 moved files into engine directory 2017-01-23 13:52:57 +01:00
Michael Hackstein 92ad574c97 Moved Indexes to StorageEngine 2017-01-23 13:32:23 +01:00
jsteemann c2cbce507f added exclusive locks 2017-01-23 13:16:28 +01:00
jsteemann 952c3f848e factored out transaction manager from logfile manager 2017-01-23 12:31:45 +01:00
jsteemann f9fb701505 moved LogfileManager into engine 2017-01-23 10:30:55 +01:00
Simon Grätzer dd14b7b2dd Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-20 15:56:11 +01:00
Simon Grätzer d71ebf7c1d Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-20 14:42:19 +01:00
Kaveh Vahedipour 6c56f9f05c available for use: avoidServers 2017-01-20 11:58:32 +01:00
Kaveh Vahedipour 648160c68a Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-20 09:35:45 +01:00
Kaveh Vahedipour a372cf71b4 avoidServers getting there 2017-01-20 09:35:42 +01:00
Kaveh Vahedipour 40c6e2b48c unobserve should not create entries in agency, if empty before 2017-01-20 08:06:27 +01:00
jsteemann 1b1dacd873 fixed issues with same revisions being inserted 2017-01-19 17:14:38 +01:00
Simon Grätzer 891209ed9b Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-19 13:15:02 +01:00
jsteemann 1e24b00a82 speed up object iteration 2017-01-19 12:44:09 +01:00
Simon Grätzer e7174beaef Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-19 12:38:11 +01:00
jsteemann 487fa44b04 attempt to speed up updates a bit 2017-01-19 11:06:10 +01:00
Simon Grätzer 54da6971f1 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-18 14:07:13 +01:00
jsteemann 2032d61039 added optional cache cleanup during collection load 2017-01-18 11:58:38 +01:00
Simon Grätzer 1d66c418b6 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	arangod/CMakeLists.txt
2017-01-16 17:56:44 +01:00
jsteemann cdabaa931f renaming 2017-01-16 14:48:13 +01:00
Michael Hackstein 4f67c8352c Renewed restore-collection in RestReplicationHandler. It now uses new API to create Collections, doing all sanity-checks etc. 2017-01-16 13:36:46 +01:00
Simon Grätzer 27dcb11af3 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-13 15:00:59 +01:00
Michael Hackstein 1d33197a4f Updated the clusterInventory endpoint to use LogicalCollection instead of reading the Agency. 2017-01-12 13:39:46 +01:00
jsteemann 8e18617e29 simplifications 2017-01-12 11:37:52 +01:00
Simon Grätzer 0b5a1f6b70 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-11 14:47:00 +01:00
jsteemann 45be1c94a6 dont readd the same index 2017-01-11 13:12:10 +01:00
jsteemann ac3309ce5d some simplifications 2017-01-11 13:10:42 +01:00
Simon Grätzer d857f01d6a Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-11 11:29:54 +01:00
jsteemann dec7e084e5 added diagnostic output 2017-01-11 08:25:17 +01:00
Simon Grätzer 01ac5a51a3 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-09 21:12:24 +01:00
jsteemann 75263042c8 added tests for dropping indexes 2017-01-09 15:56:36 +01:00
Simon Grätzer 20d32d05b2 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	arangod/VocBase/LogicalCollection.cpp
2017-01-09 13:34:37 +01:00
jsteemann aea9cfae7c shorten critical section code 2017-01-09 11:11:55 +01:00
jsteemann d5c871564a force closing collection 2017-01-06 16:29:23 +01:00
jsteemann 1dfe817fed removed unintentional return statement 2017-01-06 14:49:39 +01:00
jsteemann e4ff3a3611 attempt to fix spurious "permission denied" errors on Windows 2017-01-06 14:35:44 +01:00
jsteemann 810209db03 remove unreferenced variable 2017-01-06 10:54:48 +01:00
jsteemann f9518bcf99 cosmetiscs 2017-01-06 10:33:41 +01:00
Andreas Streichardt 25ee54b156 Only enable basic auth for coordinators and dbservers 2017-01-05 18:13:02 +01:00
jsteemann 9889e9f91f remove revision id from storage engine if write locker cannot be acquired 2017-01-05 16:53:00 +01:00
jsteemann 190c399e0c removed some dead code 2017-01-05 15:35:50 +01:00
Dan Larkin 4f91661261 Moved insert/readRevision out from big fat lock in LogicalCollection::insert. 2017-01-05 08:22:24 -05:00
jsteemann 0a971b5ebe less work inside the transaction 2017-01-04 09:42:59 +01:00
Andreas Streichardt 39fc38393e Add followerinfo to single server case so mop can test :S 2017-01-03 16:59:17 +01:00
jsteemann 3c9d71fdcf performance fix for locks 2017-01-02 15:36:43 +01:00
Simon Grätzer 7563fb4b80 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-12-29 18:09:57 +01:00
jsteemann b2ba522045 remove dead code 2016-12-27 18:22:13 +01:00
Simon Grätzer 431df0c5a4 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-12-21 11:56:44 +01:00
jsteemann 16e2881db1 better don't change mmap flags... instead let mapping a file fail when protection cannot be changed later on 2016-12-20 11:20:43 +01:00
jsteemann 0da02e2f4a map memory-mapped datafiles/journals with PROT_READ | PROT_WRITE at the start
Previously, all datafiles/journals that were initially mapped were mapped with PROT_READ only, and later the memory protection was changed to PROT_READ | PROT_WRITE using mprotect().
However, on filesystems that are mounted with NOEXEC, changing the protection from PROT_READ to PROT_READ | PROT_WRITE later may fail. This has been reported in issue #2220.
This change now maps all datafiles/journals with PROT_READ | PROT_WRITE in the beginning, and will later change the mapping to PROT_READ if no writes are required
2016-12-20 10:32:47 +01:00
jsteemann fc1437d55f fix some startup issues 2016-12-19 14:56:02 +01:00
jsteemann 818ffbdc49 better error reporting 2016-12-19 14:55:52 +01:00
Simon Grätzer 7afebc2223 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-12-17 14:10:03 +01:00
jsteemann 4f10a6fb9c experimental micro optimizations 2016-12-16 15:52:16 +01:00
Simon Grätzer d1a47f5b29 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-12-15 18:46:21 +01:00
jsteemann 9b42e9cee6 some improvements for memory management
added more memory diagnostics for memory usage:
- collection.figures() now returns a "readCache" attribute which contains the
  number of and memory usage of entries in the document revisions cache for the
  collection, and a "revisions" attribute with the number and memory usage
  of entries in the storage engine's revision lookup table for the collection
- the default value for --database.revision-cache-target-size was changed from
  75% of RAM to 30% of RAM
2016-12-15 15:30:28 +01:00
Simon Grätzer e4951835aa Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-12-14 10:40:03 +01:00
jsteemann 03acaaea47 fixed issue #2217 2016-12-13 14:19:55 +01:00
Simon Grätzer 5889ebb32b Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-12-13 13:54:29 +01:00
jsteemann 5b1b28d0ec fix segfault 2016-12-13 11:38:38 +01:00
jsteemann b96897e296 fixed some issues detected by coverity build tool 2016-12-12 15:41:54 +01:00
Simon Grätzer 3a4a07f13d Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-12-12 13:21:51 +01:00
jsteemann f0a4d69b69 use bulk allocator for index elements 2016-12-09 21:40:49 +01:00
Simon Grätzer 730ea4755e Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	scripts/startLocalCluster.sh
2016-12-09 14:30:19 +01:00
jsteemann 6920bb65f1 added IndexBucket.h 2016-12-08 17:31:54 +01:00
Andreas Streichardt 29bb68031e Wait for initial collection sync..(not yet working properly) 2016-12-08 14:54:58 +01:00
Andreas Streichardt 40fac5c36a Fix condition circus 2016-12-08 11:39:49 +01:00
Andreas Streichardt 9628420e68 Fix compile error 2016-12-07 18:53:44 +01:00
Andreas Streichardt 82682f8d25 Wait for synchronous replication to settle 2016-12-07 18:38:15 +01:00
Jan Steemann be3b23469c more diagnostics 2016-12-07 16:56:46 +01:00
Andreas Streichardt 8add7f40af Disable creation of satellites on community edition 2016-12-06 17:07:54 +01:00
Andreas Streichardt 11bd9381d5 Add satellite collections 2016-12-06 16:40:50 +01:00
Simon Grätzer 34714f8743 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-12-01 14:11:14 +01:00
jsteemann 07706fa40c added diagnostics for #2203 2016-12-01 14:02:41 +01:00
Michael Hackstein e50e99a943 Fixed friend definition of shortest path implementation. Two friends where declared only one is needed. 2016-12-01 10:37:43 +01:00
jsteemann 1c73f228d7 try to fix build issue 2016-11-29 16:33:55 +01:00
jsteemann 49515f1f02 try using fallocate to zero out file 2016-11-29 10:42:00 +01:00
Simon Grätzer 7ef7857006 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-11-28 22:27:14 +01:00
jsteemann 1a4ab1d0be hopefully fix NOATIME 2016-11-28 16:11:36 +01:00
jsteemann 2757fd91ae handle OOM a bit more gracefully 2016-11-28 14:22:12 +01:00
jsteemann 17cf262d42 add NOATIME flag when opening datafiles 2016-11-28 11:25:49 +01:00
Simon Grätzer bc4c441f30 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-11-25 17:03:26 +01:00
Andreas Streichardt aff77dea41 Fix replicationFactor: -1 almost endless loop 2016-11-25 13:38:52 +01:00
Simon Grätzer 9bcf8cd407 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-11-25 12:30:39 +01:00
jsteemann dbcf8847fb moved assertion 2016-11-25 11:19:34 +01:00
jsteemann 817933c77b bugfixes for sync replication and collection status in cluster 2016-11-24 17:00:57 +01:00
jsteemann 7d9911c7e4 note tick values of collections 2016-11-24 15:06:42 +01:00
jsteemann f08e258580 fixed locking issue 2016-11-24 12:28:15 +01:00
jsteemann 13615a155d experimental mlock flag 2016-11-24 10:02:51 +01:00
Simon Grätzer 66951f4f8e Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-11-23 13:17:27 +01:00
Michael Hackstein b5d367f0ec Allow the SmartGraph parts from the enterprise version to modifiy the traverser. 2016-11-22 17:16:57 +01:00
Simon Grätzer e4bc60a755 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-11-21 17:44:12 +01:00
jsteemann 7dddbbe00c cosmetics 2016-11-19 09:22:57 +01:00
Simon Grätzer 9b1a11e68f Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-11-18 14:44:29 +01:00
jsteemann 58da24b1a6 fix engine selection and feature start/stop 2016-11-17 15:58:42 +01:00
Simon Grätzer 65b07d7f15 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-11-11 12:01:35 +01:00
jsteemann fcacd76bca display index usage of traversals in AQL explainer output (previously missing) 2016-11-10 12:49:02 +01:00
Simon Grätzer 6258f79fa2 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-11-09 16:51:13 +01:00
jsteemann da2aa24703 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-11-09 14:46:56 +01:00
jsteemann ab4933c994 performance optimizations 2016-11-09 14:46:50 +01:00
jsteemann cb774beacf Revert "remove unused ctor"
This reverts commit 565009db68.
2016-11-08 17:01:58 +01:00
jsteemann 565009db68 remove unused ctor 2016-11-08 16:46:22 +01:00
Simon Grätzer bcf545c856 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-11-08 11:38:49 +01:00
Jan Steemann 8b4e86b0d0 version detection fixes 2016-11-08 11:25:57 +01:00
Jan Steemann 5324a6bbe8 fix _rev handling when creating collections 2016-11-08 10:29:53 +01:00
jsteemann 5f65a9ed4f allow more control over handling of pre-3.1 _rev values
this changes the server startup option `--database.check-30-revisions` from a boolean (true/false)
parameter to a string parameter with the following possible values:

- "fail":
  will validate _rev values of 3.0 collections on collection loading and throw an exception when invalid _rev values are found.
  in this case collections with invalid _rev values are marked as corrupted and cannot be used in the ArangoDB 3.1 instance.
  the fix procedure for such collections is to export the collections from 3.0 database with arangodump and restore them in 3.1 with arangorestore.
  collections that do not contain invalid _rev values are marked as ok and will not be re-checked on following loads.
  collections that contain invalid _rev values will be re-checked on following loads.

- "true":
  will validate _rev values of 3.0 collections on collection loading and print a warning when invalid _rev values are found.
  in this case collections with invalid _rev values can be used in the ArangoDB 3.1 instance.
  however, subsequent operations on documents with invalid _rev values may silently fail or fail with explicit errors.
  the fix procedure for such collections is to export the collections from 3.0 database with arangodump and restore them in 3.1 with arangorestore.
  collections that do not contain invalid _rev values are marked as ok and will not be re-checked on following loads.
  collections that contain invalid _rev values will be re-checked on following loads.

- "false":
  will not validate _rev values on collection loading and not print warnings.
  no hint is given when invalid _rev values are found.
  subsequent operations on documents with invalid _rev values may silently fail or fail with explicit errors.
  this setting does not affect whether collections are re-checked later.
  collections will be re-checked on following loads if `--database.check-30-revisions` is later set to either `true` or `fail`.

The change also suppresses warnings that were printed when collections were restored using arangorestore, and the restore
data contained invalid _rev values. Now these warnings are suppressed, and new HLC _rev values are generated for these documents
as before.
2016-11-04 23:17:01 +01:00
Michael Hackstein a7f63b3a53 Removed dead code of TraverserExpressions. They have been replaced by native AQL expressions everywhere. 2016-11-04 18:15:04 +01:00
Simon Grätzer 1c0253e5dc Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-11-03 00:12:56 +01:00
jsteemann cfc9ecd198 fix Visual Studio complaints 2016-10-31 09:59:18 +01:00
jsteemann eed9c23796 performance optimization 2016-10-26 12:04:27 +02:00
Jan Steemann ba80d76cbd renamed feature from IndexPool to IndexThread 2016-10-25 17:20:17 +02:00
Jan Steemann 910ba74f8b cppcheck 2016-10-25 16:52:06 +02:00
jsteemann 66551632b1 did not compile... try to fix it 2016-10-25 08:40:40 +02:00
Michael Hackstein ca942f5321 Solved merge conflict with readcache. 2016-10-24 21:17:21 -07:00
Michael Hackstein 6e75a738ac Merge branch 'devel' of github.com:arangodb/arangodb into devel 2016-10-24 18:56:35 -07:00
jsteemann 09e1fda1a0 fix revision id handling 2016-10-24 17:24:27 +02:00
Michael Hackstein 1d6e4ed9f3 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2016-10-24 07:35:32 -07:00
Michael Hackstein 3be60c7e54 Added an improved version for neighbors search. 2016-10-24 07:35:27 -07:00