1
0
Fork 0
Commit Graph

2277 Commits

Author SHA1 Message Date
Jan 8c1eccff33 fixed issue #4651 (#4660) 2018-03-01 16:44:05 +01:00
Michael Hackstein 027a1e167d
Fixed inconsistency in BFS when using filters on vertices (#4586) 2018-02-28 15:05:01 +01:00
Simon 1d57a46168 Refactor Authentication Layer (3.3) (#4588)
* added tests for revokeCollection and revokeDatabase

* optimized user permission test

* ui selection bugfix

* fixed ldap ui login

* login view

* Authentication refactoring

* localstorage fallback if user config is not available

* Fixing permission resolution test

* Adding missing import

* local storage queries now supported

* disabled collection task check for ldap

* added internal ldapEnabled function and ldap config to the ui

* more db creation tests

* removed console logs

* render fix

* Various authentication related fixes

* exec ldap test also for cluster

* Adding support to refresh user rights from external auth sources

* ldap test howto comment

* Handling roles more correctly

* jwt

* login view

* First part of rework of LDAP documentation.

* test roles in a ldap environment

* Changing role handling

* Finish revision of the LDAP chapter in the manual.

* Fixing user header

* Fixing some slight issues with LDAP users and roles

* Removing unused code

* Removing unused code

* added ldap test

* fixing a bug in restuserhandler

* more ldap tests

* ldap tests

* ldap tests

* optimized ldap testing, added cluster support, fixed some auth tests

* ldap cleanup test

* ldap tests

* auth tests

* ldap test

* Changing permission defaults

* revert change

* updated user helper test

* rm of try catch block connection

* Removing FeatureCacheFeature

* Changed permission resolution according to discussion

* updated the docs to clarify the permission resolution and the intricacies of LDAP users

* Fixing wrong permissions check in handling of PUT in ResUserHandler

* Using revision ID when replacing users

* Adding basic replace test

* tests

* Fixing some outstanding issues

* Fixing test setup, optimizing some stuff

* Fixing permission resolution rules, testsuite setup, etc

* Fix deadlock

* Adding error message for keyspace, slightly changing test setup

* Removing remaining mentions of FeatureCacheFeature

* Fix jslint

* Fixing some failed tests

* Fixing cluster authentication issue, red tests

* Fixing ldap testsuite, adding trace logging

* Fixint ldap tesuite setup and LDAP recognition

* Fixing an assert

* Cleanup, adding changelog entry

* fix typo

* Fixing dump_authentication test

* improvements found during code review

* oops

* updated CHANGELOG

* Fixing broken handling, disallowing adding of local users when disabled

* added tests for ldap search mode

* Fixing testInvalidGrants

(cherry picked from commit bc7ea2aaa29a9ed0974898f487e8a318f24912f1)

* Removing undefined auth level externally

(cherry picked from commit 70859f43ae6fd694fdbf70f669fbfdafc58e7913)

* Fixing previous commit

(cherry picked from commit 2fbcffd2ed657862ef9fb5e6d45201a6ec8ada69)

* more use of sessionstorage

* intentionally removed `after` methods from tests

because they are executed before the tests start
no cleanup is performed right now after the authentication tests
however, a cleanup is done at start of every test

* ldap tests all modes

* fix LDAP test invocation

* Added roles transformation to ldap test suite

* Fix compilation of community version.

* Imrpved the ldap testsuites by unifying their options

* fix permission problems for system collections

* Improved LDAP configuration documentation.

* Grunt.

* fixed some ro/rw display issues

* fixed some ro/rw display issues part 2

* grunt build

* bump version number

* Fixed typos in LDAP manual
2018-02-28 13:24:18 +01:00
Jan f74822483c
fix issue #4677 (#4678) 2018-02-27 11:29:15 +01:00
Jan f29df7d68b
improvements and more tests for replication (#4624) 2018-02-21 12:10:30 +01:00
jsteemann adde91b621 remove always-failing tests (will be re-activated in devel) 2018-02-19 15:02:06 +01:00
Jan cfed2c1d23
Bug fix 3.3/handle single delete (#4617) 2018-02-19 14:40:39 +01:00
Simon e96e899fd3 Active Failover for Foxx Services (3.3) (#4593) 2018-02-15 09:36:25 +01:00
Michael Hackstein 0a57be6863 Added missing semicolon (#4570) 2018-02-12 14:59:11 +01:00
Michael Hackstein 79a80558e1 Bug fix/distribute shards like (#4415) 2018-02-12 13:43:06 +01:00
Jan 9ffbc908f3
replication bugfixes and improvements ported from 3.2 (#4497) 2018-02-09 13:39:31 +01:00
Jan 414388963f
Bug fix 3.3/add edge filter to neighbors enumerator (#4550) 2018-02-08 15:15:21 +01:00
Jan e51f814587
fix internal issue #1848 (#4522)
AQL optimizer was trying to resolve attribute accesses
to attributes of constant object values at query compile time, but only did so far
the very first attribute in each object

this fixes https://stackoverflow.com/questions/48648737/beginner-bug-in-for-loops-from-objects
2018-02-08 09:34:24 +01:00
jsteemann 1e5c382b67 remove useless explain 2018-02-08 09:00:14 +01:00
Alan Plum 111cb3054d Don't greedily delete legit app folders (#4439)
See #4395
2018-02-05 12:31:43 +01:00
jsteemann ac63433e87 fix invalid filename (my bad) 2018-01-25 16:47:15 +01:00
Jan c55374a75c
fix issue #4272 (#4418) 2018-01-25 15:57:06 +01:00
Jan d094ace175
added traversal test (#4375) 2018-01-23 09:08:58 +01:00
Jan 607a9d9ebd
Wait for 5 dbservers to be there and GOOD before test starts. (#4373) 2018-01-22 09:26:03 +01:00
Michael Hackstein ffbc7058cd
Bug fix 3.3/rocksdb truncate (#4338) 2018-01-16 19:52:27 +01:00
Jan f31734a198
fixed issue #4185: On execution of FULLTEXT search / AQL query db is … (#4239) 2018-01-15 22:46:14 +01:00
Max Neunhöffer 589bc68957 Fix shard distribution test. (#4262) 2018-01-15 22:45:12 +01:00
Jan c1459ec5b9
fix missing events in RocksDB-based replication for transactions that… (#4276) 2018-01-15 22:44:54 +01:00
Jan ee5e2e56c0
try to make replication test more deterministic (rough guess only) (#4274) 2018-01-15 22:44:36 +01:00
Jan 7b370dbf23
fix memory hunger of cache (#4269) 2018-01-12 12:15:19 +01:00
Jan b2e3a6614a fixed issue #4197: AQL statement not working in 3.3.1 when upgraded from 3.2.10 (#4207) 2018-01-04 00:06:41 +01:00
Kaveh Vahedipour 56a9ad69b1 Bug fix 3.3/supervision no longer fails to remove server from failed when back to good (#4210)
* let's not miss failedserver removal
* remove resetting of FailedServers in test code
* Only call abortRequestsToFailedServers at most every 3 seconds.
2018-01-03 21:55:01 +01:00
Jan 1bcab5628d
Bug fix 3.3/fix issue 4199 (#4201) 2018-01-03 21:32:49 +01:00
Jan cfe94a0913
add `--ignore-missing` option to arangoimp (#4128)
this option allows importing lines with less fields than specified in the CSV
header line
2017-12-22 11:09:03 +01:00
jsteemann 48031be4f0 rename test 2017-12-20 11:27:26 +01:00
Jan f83a1a0394
Feature 3.3/add recovery tests for intermediate commits (#4106)
* added several recovery tests that check intermediate commits

* small fixes

* fix tests
2017-12-20 09:46:12 +01:00
Jan 5230df9f72
Feature 3.3/fulltext optimizations (#3925) 2017-12-19 21:40:12 +01:00
Jan 4caeaed655
make queue test more robust (#4064) 2017-12-16 15:10:37 +01:00
Jan 9c5893e7a7
fix premature unlock (#3802) (#4027)
* 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 18:46:14 +01:00
Jan 3caa4c47bb
add a test for replication applier restarts (#3750) (#3933) 2017-12-08 15:48:15 +01:00
jsteemann e0b3917380 fix failing test on MSVC 2017-12-07 16:25:31 +01:00
Jan 6ce073c2d5 fixed issue #3640: limit in subquery (#3903) 2017-12-07 10:41:46 +01:00
Jan 68a2f331e9 Bug fix 3.3/foxx queues (#3930)
* fix issue #3858

* added tests and updated documentation for Foxx queues
2017-12-07 10:21:01 +01:00
Jan 21e275d1a1 Propagate commit errors to AQL (#3831) (#3932) 2017-12-07 10:20:04 +01:00
Jan ddd8d5c8e1 Added 503/0 inquire tests to resilience tests (#3839) (#3934) 2017-12-07 10:18:39 +01:00
Michael Hackstein f986a5f06c Improved the cost estimation of traversals to be independent from max search depth. This fixes #3917 (#3944)
LGTM
2017-12-07 10:05:35 +01:00
Jan 4104296fd3 fix revision id vs local document id usage in incremental sync (#3916) 2017-12-07 09:24:20 +01:00
Simon Grätzer 38e9a830a6 Fix occasional Replication Ongoing hiccups (#3743) 2017-11-20 10:30:01 +01:00
Simon Grätzer 0e485f7441 Fixing collection name collection handling in Syncer (#3710) 2017-11-17 16:36:57 +01:00
Jan b4f6ee9273 Feature/improved index api for unique constraints and replication (#3715) 2017-11-16 21:02:01 +01:00
Jan Christoph Uhde 6f6d19b1b9 Stricter normalization for filter and sort conditions (#3718)
Moves attribute accesses to the LHS when using <,>,<=,>=
2017-11-16 19:17:12 +01:00
Jan Christoph Uhde 987aea2af3 implement heap merge for cluster blocks (#3617) 2017-11-15 18:05:43 +01:00
Max Neunhöffer 766ab7c8cf
Fix agency shutdown bug. (#3683)
* Fix agency shutdown bug.
* Remove precondition that was not needed in AgencyComm::removeValues.
* Fail fatally if threads do not shut down.
2017-11-14 16:33:46 +01:00
Jan cc1fc716a4 Bug fix/fix server mode test side effects (#3674) 2017-11-14 15:19:00 +01:00
m0ppers 6cbf7159be Feature/server mode (#3590)
* Switching from ttl to supervision based failover mechanism

* Allowing canceling of ongoing actions

* refactored asyncjobmanager

* refactoring some code

* adding read-only flag

* Fixing some bugs

* Fixing tests

* Canceling ongoing operations

* removing some unused code + some asserts

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

* fixing "createsANewDatabaseWithAnInvalidUser"

* Current work

* proper ifs

* Migrate resthandler to c++ and implement mode

* readonly server mode spec test

* Add changelog

* change code so it expects a full object and not just a string

* Fix jslint
2017-11-10 17:56:21 +01:00
jsteemann 571d4587ca Revert "Return offending key for unique constraint violations (#3624)"
This reverts commit 68bd31ac99.
2017-11-10 16:40:56 +01:00
Dan Larkin 68bd31ac99 Return offending key for unique constraint violations (#3624) 2017-11-10 16:03:10 +01:00
Michael Hackstein 5c633f9fae Bug fix/speedup shard distribution (#3645)
* Added a more sophisticated test for shardDistribution format

* Updated shard distribution test to use request instead of download

* Added a cxx reporter for the shard distribuation. WIP

* Added some virtual functions/classes for Mocking

* Added a unittest for the new CXX ShardDistribution Reporter.

* The ShardDsitributionReporter now reports Plan and Current correctly. However it does not dare to find a good total/current value and just returns a default. Hence these tests are still red

* Shard distribution now uses the cxx variant

* The ShardDistribution reporter now tries to execute count on the shards

* Updated changelog

* Added error case tests. If the servers time out the mechanism will stop bothering after two seconds and just report default values.
2017-11-10 15:17:08 +01:00
Michael Hackstein 2b0aa318ec Bug fix/sparse graph register warning (#3569) 2017-11-10 14:33:15 +01:00
Jan 4a06599adf fixed issue #3618 (#3621) 2017-11-10 12:31:10 +01:00
Simon Grätzer 87eb63ce9b Adding documented pregel foxx API (#3620) 2017-11-10 09:40:13 +01:00
Simon Grätzer 87f441753b RocksDB WAL tailing fixes (#3595) 2017-11-10 09:31:53 +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
Jan 356751bd12 fix a non-deterministic replication test (#3623) 2017-11-09 09:10:19 +01:00
Jan 3f0dd63d2b added test for issue #3473 (#3608) 2017-11-08 17:09:07 +01:00
Jan Christoph Uhde 5a6046874d fixes: geoindex type 1 queries (#3575) 2017-11-07 15:03:45 +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
m0ppers b552853909 Feature/optional replication factor enforcement (#3570) 2017-11-02 21:41:25 +01:00
Simon Grätzer 64e9377c05 Replacing /_api/collection with RestHandler (#3543) 2017-11-02 14:57:17 +01:00
Manuel B edba1e57ce Feature/cpp aql left trim right (#3004) (#3506)
* Feature/cpp left trim right (#3004)

* aql char length null returns now 0

* cpp aql trim and tests

* Update CHANGELOG
2017-10-26 20:21:41 +02:00
jsteemann 376cc7dcad fix replicationFactor value validation 2017-10-26 20:15:50 +02:00
jsteemann 21cbb85867 jslint 2017-10-26 15:46:40 +02:00
Simon Grätzer d14710b683 Updating Replication Factor (#3528)
* Changing replication factor in 3.2 (#3513)

* Allow changing replicationFactor on coordinator

* Fixing logic

* Allowing change of replication factor

* Additional input validation

* grrr

* Testing invalid inputs

(cherry picked from commit 47600e1ea1)

* jslint

(cherry picked from commit 4d223597db)

* cherry-pick commits from 3.2: 47600e1ea1 4d223597db d684eaa7f8 a898af3723
2017-10-26 15:28:05 +02:00
Jan c569c1b816 fix test (#3524) 2017-10-26 14:04:41 +02:00
jsteemann 7f00bf3b7d next attempt 2017-10-26 09:34:48 +02:00
jsteemann 45f2c4aca7 try to fix non-deterministic test 2017-10-25 21:07:31 +02:00
Jan 9a4703dbde changed test expectations in cluster mode (#3491) 2017-10-25 18:05:37 +02:00
Manuel B 7d4b319c58 cpp aql substring, fixed v8 substring (#3489) 2017-10-23 17:12:45 +02:00
Jan feba30fcec attempt to make replication test more deterministic (#3482) 2017-10-23 14:21:46 +02:00
Manuel B be8c648620 cpp aql collections() and test (#3331)
* cpp aql collections() and test

* remview fixes

* fixed jslint

* fix for new ExecContext / auth api
2017-10-23 11:42:34 +02:00
Manuel B cf0578242f Feature/devel cpp aql matches (#3329)
* matches function header

* aql matches() C++ definition

* cpp aql matches() implementation

* review fixes

* test for v8 / cpp

* aql cpp matches matches behavior of js matches, more tests

* fix cpp matches()

* final fixes
2017-10-23 08:25:55 +02:00
Jan 7840d3f824 Bug fix/fixes 1810 (#3460)
* improve error reporting in RestAqlHandler

* added logging about indexes

* added some safety checks to the logger

* slighty better error messages

* fix location header for SSL

* fix error message

* try to make tests more deterministic

* change error code from TRI_ERROR_INTERNAL (which we want to avoid) to TRI_ERROR_FAILED
2017-10-19 11:28:01 +02:00
Simon Grätzer 7c31960cf2 Feature/async failover (#3451) 2017-10-18 23:59:29 +02:00
Jan 451abcb23d added non-destructive DISTINCT (#3320)
* added non-destructive DISTINCT

* added tests

* update documentation
2017-10-18 12:52:33 +02:00
Jan 2fee652e77 Bug fix/fixes 1610 (#3425)
* remove memory zone remainders

* remove useless calls

* attempt to fix non-deterministic CRC test

* attempt to fix non-deterministic replication tests

* fix document removal with multiple documents in cluster

* attempt to fix non-determinism of tests

* fix privilege checks for accessing collections by collection id, not by name
2017-10-18 12:23:39 +02:00
Frank Celler 8f0f861cc4 disabled corrupted-crc-mmfiles.js 2017-10-15 11:26:02 +02:00
Jan f1497e0df7 fixed issue #3395 (#3399) 2017-10-13 12:25:46 +02:00
Jan dd32992121 fix potential overflow in CRC marker check when a corrupted CRC marke… (#3386)
* fix potential overflow in CRC marker check when a corrupted CRC marker is found at the very beginning of an MMFiles datafile

* added recovery test for marker corruption
2017-10-10 09:49:13 +02:00
Wilfried Goesgens 0faf9be695 Feature/compaction configuration (#3217)
* make the different values influencing the compaction run configurable

* Compaction statistics handling

 - we mustn't keep the number of dead objects on the compacted datafiles statistics, else it will be compacted again.
 - keep statistics of the compaction runs on the DatafileStatistics object
 - add the new statistics on DatafileStatistics to the figures api
 - implement test that assures only one compaction is run, and the statistic values are maintained

* don't mention the version number

* Implement review

 - fix documentation
 - allow 0 maxfiles to enable users to disable combined of datafiles
 - add statistic element that counts the number of combined datafiles

* Implement review

 - fix documentation
 - use locks to make statistic values consistent.
 - fix typo in variable name

* fix temporary variable unnecessary.

* changelog
2017-09-15 14:37:30 +02:00
Wilfried Goesgens 2833bd6185 Bugfix/cleanup graphs (#3250)
* when running against an external server also setup the proper connection

* cleanup grahs after testing
2017-09-15 14:20:21 +02:00
Jan 5165155ed1 Bug fix/fixes 0609 (#3227)
* do not use V8 variant of AQL functions in early optimization stage when a C++ variant is available

* additionally, simplify AQL function definitions and aliases

* warn when more than 90% of max mappings are in use

* added C++ variant of replication catchup

* added `--log.role` option

* updated CHANGELOG

* removed non-existing scheduler.threads option from config

* removed useless __FILE__, __LINE__ invocations

* updated CHANGELOG

* allow a priority V8 context

* remove TRI_CORE_MEM_ZONE

* try to fix Windows errors & warnings

* cleanup

* removed memory zones altogether

* exclude system collections from collection tests
2017-09-13 16:28:21 +02:00
Jan dc46c9db07 more logging so we can find a specific bug (#3247) 2017-09-13 09:19:50 +02:00
jsteemann f8d8a561a4 fix various issues 2017-09-13 09:03:28 +02:00
Wilfried Goesgens b41cfac17c cleanup 2017-09-13 00:00:32 +02:00
Wilfried Goesgens 11437d20a9 fix cleanup 2017-09-12 15:57:33 +02:00
Wilfried Goesgens 0a9b9e6025 cleanup after testrun, lintify 2017-09-12 14:48:20 +02:00
Jan eacad99df7 Bug fix/fixes 0409 (#3199)
* some authentication optimizations...

don't query the permissions for one database three times, and don't build up tons of useless temporary strings for each request

* fix some floating point inaccuracies in AstNode value comparisons
2017-09-04 18:04:05 +02:00
Jan f49e0ca237 execute DOCUMENT function via CXX on coordinator in cluster mode (#3196) 2017-09-04 17:34:24 +02:00
jsteemann b1fd92c438 removed useless explain 2017-09-01 14:14:01 +02:00
Simon Grätzer 88d01b89b5 Optimizations for Caches and Graph Traversals (#3169) 2017-08-31 18:33:10 +02:00
Simon Grätzer 885ea3dd5f Remove attribute option for arangoimp (#3141)
* Adding a remove attribute option to arangoimp (only for csv)

* Adding documentation

* Fixed log statement

* Update CHANGELOG
2017-08-30 10:45:02 +02:00
Kaveh Vahedipour 00650e6a3f Bug fix/agency mt fixes (#3158)
* added debugging methods

* try to fix invalid access in case of error

* remove unused members

* bugfixes and comments

* all agency fixes in

* merge bug

* partially unguarded Agent::lead fixed

* all agency fixes in

* added nrBlocked to thread startup eval

* added nrBlocked to thread startup eval

* recombination of cases in State::get

* some maps replaced with unordered_maps

* optimized maps some
2017-08-30 10:43:51 +02:00
Frank Celler 6d08d4f4aa Bug fix/scheduler delete (#3077)
* removed delete call

* cleanup

* lower cpu activity of log thread too

* fix log messages

* do not enter threads into unordered_set, as it is unneeded

* do not compile in calls to disabled plan cache

* moved AQL regex cache from thread local variables to a class of its own

* more sensible thread creation and destruction
2017-08-25 12:00:17 +02:00
Jan 39465193c2 fix replication (#3099) 2017-08-22 15:51:50 +02:00
Dan Larkin 84f11c223d Fixed issue with periodic syncing and WAL file retention. (#3098) 2017-08-22 15:51:12 +02:00