1
0
Fork 0
Commit Graph

161 Commits

Author SHA1 Message Date
Simon 35992ad67b Coordinator storage engine (#5405) 2018-05-22 19:30:27 +02:00
Vasiliy 843e584746 issue 389.5: refactor StandaloneContext to be constructed with a TRI_vocbase_t& (#5370)
* issue 389.5: refactor StandaloneContext to be constructed with a TRI_vocbase_t&

* backport: address build issues
2018-05-17 01:15:50 +03:00
Jan 0d98c0f3ba
Bug fix/fix codescan issues (#5371) 2018-05-16 20:40:37 +02:00
Simon 102998dd65 Streaming Query Cursor (#4769) 2018-03-08 09:18:41 +01:00
Simon f1d01a4585 Replace sleep (#4767)
For windows.
2018-03-06 17:33:15 +01:00
Simon cde96d97aa RocksDB replication hardening & cleanup (#4639) 2018-02-23 18:15:04 +01:00
Dan Larkin 934e936bae Fix index selectivity estimate issues with RocksDB engine (#4429) 2018-02-09 16:05:33 +01:00
Jan fe0fca9029
Bug fix/restore unlock (#4387) 2018-01-25 15:56:27 +01:00
Michael Hackstein 40fa74f626
Bug fix/selectivity estimates on abort (#4337) 2018-01-16 18:21:55 +01:00
Michael Hackstein 802fda8e10 Revert "Bug fix/selectivity estimates on abort (#4314)"
This reverts commit d32f3b5fe9.
2018-01-16 14:39:02 +01:00
Michael Hackstein d32f3b5fe9
Bug fix/selectivity estimates on abort (#4314) 2018-01-16 12:39:03 +01:00
Michael Hackstein d32ac3b9c8
Bug fix/rocksdb truncate (#4060) 2018-01-16 09:01:04 +01:00
Jan 37da067059
fix missing events in RocksDB-based replication for transactions that… (#4277) 2018-01-16 00:27:11 +01:00
Jan 2a96df5ca5
Feature iresearch (#4071) 2017-12-18 15:04:59 +01:00
Jan 9c76613e63
fix premature unlock (#3802)
* fix some deadlocks found by evil lock manager (tm)

* fix duplicate lock

* fix indentation

* ensure proper lock dependencies

* fix lock acquisition

* removed useless comment

* do not lock twice

* create either a V8 transaction context or a standalone transaction context, depending on if we are called from within V8 or not

* AQL micro optimizations

* use explicit constructor

* only use V8DealerFeature's ConditionLocker for acquiring a free V8 context

entering and exiting the selected context is then done later on without having to hold the ConditionLocker

* remove some recursive locks

* Disable custom deadlock detection when Thread Sanitizer is enabled

* Changing ifdef's

* grr

* broke gcc

* Using atomic for ApplicationServer::_server

* fix premature unlock

* add some asserts

* honor collection locking in cluster

* yet one more lock fix

* removed assertion

* some more bugfixes

* Fixing assert

(cherry picked from commit 1155df173bfb67303077fbe04ee8d909517bfd21)
2017-12-13 13:27:42 +01:00
Simon Grätzer dce677720d Fixing an issue with intermediate commits (#3975) 2017-12-12 09:17:18 +01:00
Simon Grätzer 0e485f7441 Fixing collection name collection handling in Syncer (#3710) 2017-11-17 16:36:57 +01:00
Jan 7613bc4314 Bug fix/fixes 0211 (#3568)
* remove some non-unused V8 persistents

* do not throw that many bogus assertions

* do not rely on server role being defined

* slightly better debug output for V8 context debugging

* fix collection ids in inventory response

* simplify bootstrap a bit

* slightly better error handling

* make elapsed time a queryable value

* use less memory for stub collections

* added assertions that will always make sense

* added assertions

* do not garbage-collect while waiting

* less copying of parameters

* do not show "load indexes into memory" buttons for mmfiles engine

  as all indexes are in memory anyway

* when a collection is truncated via the web interface, flush the WAL and rotate all active journals

this will make close all open journals on leader and followers and make them subject to compaction opportunities

* fix invalid server id values being passed from web interface to backend

* introduce afterTruncate method for indexes

* added test case for issue #3447

* updated CHANGELOG

* don't warn about replicationFactor for system collections

* check that the queries actually use the geo index and not some other index

* properly report error in web interface

* fix some internals checks that made truncate fail for bigger collections in maintainer mode

* also run a compact() operation after a serious truncate

in order to make iteration over the truncated range much faster
when the collection is next accessed

* increase default maximum number of V8 contexts to at least 16
2017-11-09 12:48:15 +01:00
Simon Grätzer ee8209943f Missing things for active / passive (#3578)
* Switching from ttl to supervision based failover mechanism

* Allowing canceling of ongoing actions

* refactored asyncjobmanager

* refactoring some code

* adding read-only flag

* catching some exceptions to reduce log pollution, removing unnecessary code, removing tests for _changeMode

* fixing "createsANewDatabaseWithAnInvalidUser"

* auth = off does not longer make everyone superuser

* Fixing cluster_sync and maybe resilience
2017-11-04 20:30:23 +01:00
Simon Grätzer 7c31960cf2 Feature/async failover (#3451) 2017-10-18 23:59:29 +02:00
Jan 4ba38bf981 try to work around some assertions (#3296)
* remove obsolete values from relative config

* warn about using obsolete config parameters
2017-09-28 09:21:33 +02:00
Dan Larkin a775e37c76 Feature/unique vpack index lookup performance improvements with rocksdbkey optimizations (#3123)
* fixed issue #3075

* update the known issues document, as some issues have already been fixed

* speed up equality lookups in unique vpack indexes

* Allow for re-use of RocksDBKey objects through transaction leaser.

* Converted all RocksDBKey variants to non-static constructors.
2017-08-31 20:00:05 +02:00
Simon Grätzer f3eb0c2ac0 No access collections (#3088)
* Added virtual attributes for enterprise on Methods.cpp

* Working no access collections

* align a comment

* Documentation and test fix

* fixing community build
2017-08-25 13:59:03 +02:00
Jan 3350164ec6 a few simplifications and extensions (#3115) 2017-08-24 14:46:16 +02:00
Simon Grätzer 4cc8686e82 RocksDB: Optimizing dropCollection / dropIndex / fillIndex (#2927)
* cleaning up several duplicate versions of Index::memory, Index::cleanup, Index::drop, integrating branch issue-383-ensure-delete

* fixing wrong column family
2017-08-05 21:09:41 +02:00
Simon Grätzer d8c57f2cc8 Feature/rocksdb hashsearch (#2713)
* Testing hash for documents

* fixing logspam error

* added base support for kHash in the edge index

* Current version of hash enabled edge index

* removed rocksdb key type byte, dynamic prefixes for hash-index

* Fixing issues with key classes

* Fixing merge conflict

* Fixing version with semi-working hash index

* fixing various issues

* Fixing hanger in EdgeIndexIterator nextExta, when _cache is disabled. Reenable cache

* Fixing geo index bounds, and fillIndexes error handling

* Adding back failure point

* Fixing RocksDBKey::vertexId

* Added version check on startup

* Fixing version check

* added one more check

* properly detect column families at startup

* Adding additional sanity checking

* Adding missing column family

* some fixes

* Turned off geoindex sync

* fixed error

* added asserts (untested)

* Adding more asserts
2017-07-05 10:18:52 +02:00
jsteemann b91eab0ce8 honor transaction options 2017-06-01 02:01:33 +02:00
jsteemann 8b74913c56 remove debug message 2017-05-31 15:27:35 +02:00
jsteemann 53b150b206 added tests for intermediate commits 2017-05-30 12:03:58 +02:00
Simon Grätzer 9679aecf53 Adding bounds back 2017-05-22 17:39:19 +02:00
Simon Grätzer 5265d2a063 intermediate commits 2017-05-16 16:21:39 +02:00
Simon Grätzer df3eed2289 Various changes 2017-05-16 10:58:15 +02:00
Simon Grätzer 70a1d27121 intermediate commits 2017-05-15 17:35:16 +02:00
Simon Grätzer c4f19e5f91 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-05-15 10:42:33 +02:00
Simon Grätzer ead7ebcd7b Little changes for SLPA support 2017-05-15 10:42:25 +02:00
jsteemann 4efbad5378 fix compile warnings 2017-05-15 09:29:10 +02:00
Frank Celler 0bf806bbd9 use maintainer guard 2017-05-13 14:34:23 +02:00
Simon Grätzer fe0e296737 RocksDB: fixing WAL tailing issues 2017-05-13 01:08:22 +02:00
Simon Grätzer 958c19de35 stuff 2017-05-12 14:07:30 +02:00
Simon Grätzer fd3bbdd043 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	arangod/RocksDBEngine/RocksDBTransactionState.cpp
2017-05-12 10:55:51 +02:00
Simon Grätzer 5b79e77128 Begin work on transaction wrapper 2017-05-12 10:52:08 +02:00
jsteemann 422b06211f fix some replication issues 2017-05-11 19:00:32 +02:00
jsteemann c5ef6652e4 remove debug output 2017-05-10 11:10:35 +02:00
Dan Larkin ca91c0f7c9 Added some optimizations enabled by prefix extraction. 2017-05-09 18:36:12 -04:00
jsteemann 488e4be485 preparation for RocksDB logger 2017-05-09 12:42:25 +02:00
jsteemann d352794360 optimize away own transaction management for RocksDB engine 2017-05-04 23:16:53 +02:00
jsteemann d892f280ed fix cluster_sync test 2017-05-04 13:16:47 +02:00
Dan Larkin 860dcbbf9a Enabled/fixed check for empty transactions to reduce WAL spam. 2017-05-02 13:03:00 -04:00
Simon Grätzer 506e56aa72 Fixed remove 2017-04-28 16:50:40 +02:00
jsteemann 037310b60d disable optimization 2017-04-28 13:55:10 +02:00
jsteemann 5ab204751c optimizations for read-only transactions 2017-04-28 13:29:49 +02:00
jsteemann ebd95ce7df optimizations for empty transactions 2017-04-28 13:13:41 +02:00
Simon Grätzer ddf7ae60cf WAL tailing 2017-04-27 17:38:02 +02:00
Simon Grätzer 37cbb80d50 Fixed startup exception 2017-04-26 20:35:20 +02:00
Simon Grätzer 29286a9c1b RocksDB WAL entries for transactions 2017-04-26 18:54:55 +02:00
Simon Grätzer 02e41de608 Working on replication 2017-04-26 13:32:12 +02:00
jsteemann b7de569a27 change log level for debugging 2017-04-26 12:07:28 +02:00
Simon Grätzer d228a94462 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	arangod/Replication/InitialSyncer.cpp
2017-04-26 11:06:09 +02:00
Simon Grätzer a53025b5a9 Added RocksDB WAL types 2017-04-25 20:55:21 +02:00
jsteemann d1cad2acc9 cppcheck
fix
2017-04-24 23:06:36 +02:00
jsteemann a32c2e84d4 use adjusted write options on commit 2017-04-24 09:39:35 +02:00
jsteemann 27f58d0675 prepare for some optimization 2017-04-20 22:15:10 +02:00
jsteemann 3727e7fb7a first stab at exclusive locks 2017-04-20 12:25:53 +02:00
Dan Larkin ea58b36bd7 Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-04-19 10:02:05 -04:00
jsteemann 8d99dc62c9 fix query cache invalidation 2017-04-19 12:32:16 +02:00
Dan Larkin 21866f5f0e Initial partial implementation of replication contexts. 2017-04-18 19:55:18 -04:00
jsteemann dc5fb20b81 Merge branch 'engine-api' of https://github.com/arangodb/arangodb into engine-api 2017-04-18 17:28:04 +02:00
jsteemann 69576ca79e preparations for locks 2017-04-18 17:27:37 +02:00
Jan Christoph Uhde c12bd6f2ed remove code that tracks size of index operations
in RocksDBTransactions
2017-04-18 16:58:44 +02:00
Jan Christoph Uhde 9e366d2193 Merge branch 'engine-api' of https://github.com/arangodb/arangodb into engine-api
* 'engine-api' of https://github.com/arangodb/arangodb:
  slightly adjust error messages
  Fixing jslint errors
  Add changelog from 3.1
  Properly generate an error message during import
  Fixed scannedIndex values in traverser tests. It did not report the correct number of lookups required after modification for new Storage-Engine
  fixed issue #2429
  issue #2427: change while into an if
  don't fail when non-array, but simply ignore it
2017-04-18 13:21:54 +02:00
Jan Christoph Uhde a02e816598 add reset function to RocksDBTransactionState 2017-04-18 13:14:15 +02:00
jsteemann 031e9adb3c slightly adjust error messages 2017-04-18 12:43:21 +02:00
Jan Christoph Uhde e690e7fc80 Merge remote-tracking branch 'origin/feature/engine-api/edgeindex-report-as-single-index' into engine-api
* origin/feature/engine-api/edgeindex-report-as-single-index:
  change mmfiles indexes to work with slightly changed API
  fix rocksdb engine index reporting but break report for mmfiles engine
  update error messages
2017-04-13 08:46:54 +02:00
Simon Grätzer 3b3ee5f996 Counter fixes 2017-04-12 17:10:35 +02:00
Dan Larkin d435d274ea Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-04-12 09:35:19 -04:00
Simon Grätzer df7e7d3749 Forgotten code 2017-04-12 15:22:30 +02:00
Simon Grätzer d9510eee0b Fixing count 2017-04-12 15:22:18 +02:00
Jan Christoph Uhde afd5d92f19 update error messages 2017-04-12 09:25:59 +02:00
Jan Christoph Uhde d67aa33fe3 limit transaction size and work on intermediate commits 2017-04-12 09:01:13 +02:00
Simon Grätzer bcea7b62b0 Fixing transaction-no-commit 2017-04-11 14:01:50 +02:00
Dan Larkin b030cdb347 Fixed an edge index iterator bug. 2017-04-10 20:12:15 -04:00
Jan Christoph Uhde 60c4f27ec6 finish transaction limiting for truncate 2017-04-10 16:33:36 +02:00
Jan Christoph Uhde c82fadc863 prepare limitation of transaction size 2017-04-10 14:00:55 +02:00
Dan Larkin eaac6c013c Fixed issue with cache transactions. 2017-04-07 16:58:22 -04:00
jsteemann 2b0673c3fe removed type "Index" 2017-04-07 12:05:56 +02:00
Dan Larkin c066b5c84c Fixed bug in document update code. 2017-04-06 18:34:11 -04:00
Simon Grätzer 8366400e27 Fixed counters 2017-04-06 17:27:14 +02:00
jsteemann e5d733867e make more tests pass 2017-04-05 14:57:18 +02:00
jsteemann 6480d56b7e fix memleak 2017-04-05 13:24:01 +02:00
Simon Grätzer 7afcac9ed7 Fixing some issues 2017-04-03 14:24:58 +02:00
Simon Grätzer cf4294c9ca Integrated counters with collections 2017-04-03 13:24:22 +02:00
jsteemann 07cdc49504 transaction-specific count tracking 2017-03-31 14:57:21 +02:00
jsteemann 794cace842 initial implementation of count() 2017-03-31 14:05:44 +02:00
jsteemann 81dcfbbe3d pass trx into numberDocuments 2017-03-31 11:33:16 +02:00
Dan Larkin e689bdce05 Set snapshot in transaction and read options. 2017-03-30 16:42:24 -04:00
Dan Larkin 3966c83730 Fix merge conflicts. 2017-03-30 16:11:58 -04:00
Dan Larkin 079c5764e8 Added cache support to RocksDBPrimaryIndex. 2017-03-30 16:09:40 -04:00
Jan Christoph Uhde b83ae2ab82 refactor some code to make use of arangodb::Result 2017-03-30 09:39:21 +02:00
Jan Christoph Uhde 796c32a341 improve error handling in some places 2017-03-29 11:04:04 +02:00
jsteemann f4ce81f2e3 Merge branch 'engine-api' of https://github.com/arangodb/arangodb into engine-api 2017-03-28 17:59:32 +02:00