1
0
Fork 0
Commit Graph

396 Commits

Author SHA1 Message Date
Frank Celler a692577f5b Feature/auth context (#2815) 2017-07-16 09:39:03 +02:00
Frank Celler a5a25754ed Feature/reduce extraction to projection (#2792)
* reduce extractions to projections

* recycle string buffers in SocketTask

* micro optimizations for mmfiles indexes

* added special lookup function for _key

* moved function into the correct file

* speed up key buffer allocations a bit

* added noexcept specifier

* correctly name variable

* explicitly move bounds

* fix and speedup from/toPersistent functions

* reuse string from ManagedDocumentResult for multiple lookups

* use move-assign

* a bit less work for single server

* speedup AQL function HASH

* single fetch optimization

* performance optimization for the case when no documents need to be returned

* make reduce-extraction-to-projection a RocksDB-only optimizer rule

* cppcheck

* try to fix compile error on MacOS

* bug fix for MacOSX

* missing namespace (in Windows compile)
2017-07-14 08:40:29 +02:00
Frank Celler 40d73d5a8b Revert "[WIP] Feature/reduce extraction to projection (#2735)"
This reverts commit 5bfcff30cd.
2017-07-12 12:52:14 +02:00
Jan 5bfcff30cd [WIP] Feature/reduce extraction to projection (#2735)
* reduce extractions to projections

* recycle string buffers in SocketTask

* micro optimizations for mmfiles indexes

* added special lookup function for _key

* moved function into the correct file

* speed up key buffer allocations a bit

* added noexcept specifier

* correctly name variable

* explicitly move bounds

* fix and speedup from/toPersistent functions

* reuse string from ManagedDocumentResult for multiple lookups

* use move-assign

* a bit less work for single server

* speedup AQL function HASH

* single fetch optimization

* performance optimization for the case when no documents need to be returned

* make reduce-extraction-to-projection a RocksDB-only optimizer rule
2017-07-12 11:22:29 +02:00
Frank Celler bbe7484521 Feature/auth context (#2704)
* added read-only users
2017-07-02 23:15:57 +02:00
Max Neunhöffer 82dfd5a45a Fix a hangup in VST. (#2705)
The problem happened when the two first chunks of a VST message arrived
together on a connection that was newly switched to VST.
2017-07-01 00:26:06 +02:00
Jan ba1ef89b94 re-introduce one lock for read/write (#2686) 2017-06-28 15:11:56 +02:00
Frank Celler 91d08645f7 Revert/ssl fix (#2662)
* Revert "Bug fix/task locking (#2618)"

This reverts commit 0e0bf7aae3.

* Revert "fix races in SSL communication (#2591)"

This reverts commit b32db87b67.
2017-06-23 17:07:34 +02:00
Jan 0e0bf7aae3 Bug fix/task locking (#2618) 2017-06-20 16:53:20 +02:00
Simon Grätzer 492d832695 Refactored /_api/index and /_api/database (#2582)
* working documents rest handler

* fixed cluster tests

* Consolidating database APIs

* clang-format

* Fixing issue with user creation through db._createDatabase

* replaced and refactored api-index and index api

* fixed cluster

* renaming some files

* added user methods

* removed files intended for later

* Fixed CC build

* Fixed method signature

* Fixing shell_server, shell_client tests
2017-06-19 23:47:40 +02:00
Jan b32db87b67 fix races in SSL communication (#2591) 2017-06-19 17:30:14 +02:00
Frank Celler b48583e68f added request-source (#2599) 2017-06-18 22:56:05 +02:00
Dan Larkin a0c4e3d9df Improved RocksDB engine statistics with docs and rest endpoint (#2598)
* Improved statistics reporting for RocksDB engine (including cache info).

* Added documentation about db._engineStats().

* Added rest endpoint for engine stats.
2017-06-18 22:55:25 +02:00
Jan Christoph Uhde 3b6da80732 fix issue #2525 - content type for response not set (#2556) 2017-06-12 17:28:07 +02:00
Max Neunhoeffer 603a55ebc2 During shutdown, we generally return HTTP 503. 2017-06-09 22:46:53 +02:00
jsteemann 8add368a78 merged shutdown and close 2017-06-09 14:51:11 +02:00
jsteemann f40a6b622f removed unused includes 2017-06-08 13:37:30 +02:00
Max Neunhoeffer f614439416 Squashed commit of the following:
commit 19a7210119cc284af64251b202f690ab62bf615c
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Fri May 12 23:20:10 2017 +0200

    Allow access to /_api/user/ without database check in VST as in HTTP.

    This is a try to fix #2465

commit f973c1335652540174bf6b78df42290bded357da
Merge: 30bdc4c 365de45
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Fri May 12 21:32:15 2017 +0200

    Merge remote-tracking branch 'origin/devel' into vst-cleanup

commit 30bdc4ca38e028d58cebea8268683d9f94e87ad7
Merge: 14acaea 086f6a2
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Fri May 12 14:52:23 2017 +0200

    Merge remote-tracking branch 'origin/devel' into vst-cleanup

commit 14acaea8cb5fff2c1c8c27eee32294bfd612f629
Merge: 5bd0e79 fb088d3
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Fri May 12 12:40:29 2017 +0200

    Merge remote-tracking branch 'origin/devel' into vst-cleanup

commit 5bd0e79ab053447f94f2fd959a33b1e15302b6a8
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Fri May 12 12:36:23 2017 +0200

    Fix bug in authentication in VST

commit 9a999ce5e629aee5816a4f61b194b086d11fd169
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Fri May 12 12:24:35 2017 +0200

    Open up endpoints /_open/* in VST without being authenticated

commit 32f62db42af6d5bfc24214ebb4ca7c1fb473b55e
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Fri May 12 12:11:31 2017 +0200

    Simplify logic by not using boost::optional.

commit 925ce2f7b890c6f14205fd3e98553939d89bec61
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Fri May 12 12:11:20 2017 +0200

    Add JWT case for authentication for VST

commit f1d7f67a9fc20c91ca000e9a4dad91e0f50f1652
Merge: 040ace3 7a9ccc9
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Fri May 12 08:58:51 2017 +0200

    Merge remote-tracking branch 'origin/devel' into vst-cleanup

commit 040ace3e9dce47ddea5f51d29f0153a70d257c9e
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Fri May 12 08:23:16 2017 +0200

    Write out chunk buffer using little endian uints

commit 66ad4c0e8d3bc94091664505986b00e7cff39f2f
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Fri May 12 08:12:38 2017 +0200

    Move maxChunkSize query to constructor, remove dead code

commit f7b4c26cc09c6d512362340c6bf6061bbaae61a9
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 17:57:14 2017 +0200

    Do not take protocolVersion from request for VST.

commit c76d6685f9507701715abf882f0ac0e192ead59f
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 13:20:58 2017 +0200

    Remove dead code for compression which did never work well.

commit b823765b7c041dc5d143f7ab2e13d92f5f42d3eb
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 13:09:53 2017 +0200

    Fix renaming to make compiler happy.

commit b327830012d146f4f4e2d0f0467dab351fbd3bd0
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 13:07:36 2017 +0200

    Rename _defaultPortVpp to _defaultPortVst.

commit 5eb98a9e64d702476e8ec098b7506b1a63145d64
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 13:06:28 2017 +0200

    Rename header guards VPP -> VST.

commit a3e96be26d49d6151898d8d757ede6225ac6abd2
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 13:05:55 2017 +0200

    Rename VppRequest and VppResponse files to Vst.

commit 1d5f6f196490c3cf9312be5927b967b4abc03b67
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 13:04:19 2017 +0200

    Change names of header guards VPP -> VST.

commit f004b25fbef75050b34bcd4eae4eb17b8b467230
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 13:03:19 2017 +0200

    Rename files VppNetwork.h and VstMessage.h

commit c04d3aec19e8f0a8a3b90cd48e7736bff037359d
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 12:59:15 2017 +0200

    Implement correct chunk header for sending out VelocyStream 1.1 messages.

commit 73aeedfbbef24d5929c44bd26c16343480514270
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 01:11:23 2017 +0200

    A lot more renaming VPP -> VST.

commit 2acedc77f16a82251bc4f9e39526184e2a6f0dec
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 00:49:20 2017 +0200

    Rename header guard.

commit 2ade43946aa5ea0048dab81eed5ffd931ce35ea8
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 00:48:01 2017 +0200

    Rename files VppCommTask.* to VstCommTask.*

commit 0ffcda02a51cbad35e5ec06117d397aac37323cd
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 00:46:31 2017 +0200

    Rename class VppCommTask to VstCommTask.

commit 9478c6c56c995b014b7a14408544b76fa676a317
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 00:30:47 2017 +0200

    Rename protocol versions to VST in ProtocolVersion enum.

commit 0b69b7add6d7b5155ac71b8257def282ab4a1637
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 00:29:29 2017 +0200

    Recognize incoming chunk headers in VST/1.1 format.

commit f40173c4fc6dc48613ae67ac3fd810d002c9b6cd
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 00:11:54 2017 +0200

    Recognise and remember VST/1.0 and VST/1.1 protocol versions.

commit 29c798dc1af2d650c41eb9ed06f635786faf10f6
Author: Max Neunhoeffer <max@arangodb.com>
Date:   Thu May 11 00:11:23 2017 +0200

    Create protocol version VST/1.1 and disable vst+ prefix for endpoints.
2017-05-12 23:22:22 +02:00
jsteemann 488e4be485 preparation for RocksDB logger 2017-05-09 12:42:25 +02:00
jsteemann 05e0c08824 there still seems to be a race between
- WorkMonitorThread asynchronously deleting handlers, and handlers accessing the io service
- the io service being deleted by the scheduler
2017-05-09 02:03:59 +02:00
jsteemann fc0170f2a8 re-enable shared_from_this 2017-05-08 22:06:03 +02:00
jsteemann e358c38784 make ctor explicit, dont copy parameters 2017-04-26 16:24:11 +02:00
Frank Celler 33fda9275c Merge pull request #2451 from arangodb/feature/ldap-auth
Feature/ldap auth
2017-04-26 14:12:32 +02:00
Frank Celler ab7bcfe224 --server.maximal-queue-size is now an absolute maximum 2017-04-26 11:20:56 +02:00
baslr f45a7f07b1 Merge remote-tracking branch 'origin/devel' into feature/ldap-auth 2017-04-26 10:52:50 +02:00
jsteemann bd5737c5e7 try to fix shutdown issues when collection opening thread is waiting forever for scheduler to finish 2017-04-25 14:20:00 +02:00
baslr eda353819a Merge remote-tracking branch 'origin/devel' into feature/ldap-auth 2017-04-25 12:45:30 +02:00
jsteemann 9db917bd77 try to fix shutdown issue 2017-04-25 12:28:51 +02:00
baslr 579718ad37 Merge remote-tracking branch 'origin/devel' into feature/ldap-auth 2017-04-25 11:18:07 +02:00
Frank Celler f94df236a3 added 'x-content-type-options: nosniff' to avoid MSIE bug 2017-04-24 18:47:56 +02:00
Frank Celler d783d4ecae added queue time and request tracing with timings 2017-04-24 18:47:44 +02:00
baslr 3d9f58bb70 Merge remote-tracking branch 'origin/devel' into feature/ldap-auth 2017-04-24 12:45:35 +02:00
Dan Larkin af8e1889a1 Moved MMFiles replication handler. 2017-04-18 15:35:45 -04:00
baslr fef40e3c9d merge with devel 2017-03-24 12:07:29 +01:00
Frank Celler 46b04f1317 added message id to debug output 2017-03-24 09:57:07 +01:00
baslr 494a898d04 user database permissions from ldap 2017-03-23 23:52:37 +01:00
baslr 71b22e642f Merge remote-tracking branch 'origin/devel' into feature/ldap-auth 2017-03-23 13:36:12 +01:00
jsteemann fbb14ceffc added db._engine() 2017-03-22 11:19:31 +01:00
baslr 9582d6823a Merge remote-tracking branch 'origin/devel' into feature/ldap-auth 2017-03-22 10:50:38 +01:00
jsteemann 358e18d5af fix wrong assertions 2017-03-22 09:45:02 +01:00
Frank Celler a25932293b added assert and only compact if no request is in flight 2017-03-22 08:52:37 +01:00
baslr 8fa6f9c5e7 Merge remote-tracking branch 'origin/devel' into feature/ldap-auth 2017-03-21 23:27:26 +01:00
Frank Celler e997b791a8 fixed lost HTTP requests 2017-03-21 22:51:49 +01:00
jsteemann b8e011eee5 move attributes into engine 2017-03-21 10:31:50 +01:00
baslr 90341c5efb Merge remote-tracking branch 'origin/devel' into feature/ldap-auth 2017-03-18 04:14:39 +01:00
baslr bc14d53ff5 ldap authwork 2017-03-18 04:14:15 +01:00
jsteemann c46c52d8c8 Merge branch 'devel' of https://github.com/arangodb/arangodb into views 2017-03-17 09:31:25 +01:00
Frank Celler 5759414ec1 because VST supports pipelining, allows queue the request in the scheduler 2017-03-17 09:08:01 +01:00
jsteemann 2c0f9d9369 Merge branch 'devel' of https://github.com/arangodb/arangodb into views 2017-03-16 15:47:48 +01:00
Max Neunhoeffer d4d532faa4 Silence a compiler warning. 2017-03-16 14:13:28 +01:00
Max Neunhoeffer bbcc20378a Merge branch 'devel' of ssh://github.com/ArangoDB/ArangoDB into devel 2017-03-16 13:54:02 +01:00
Max Neunhoeffer 428b6aa67f Port thread fixes from 3.1 to devel. 2017-03-16 13:53:40 +01:00
jsteemann 25a380f77c Merge branch 'devel' of https://github.com/arangodb/arangodb into views 2017-03-16 12:50:11 +01:00
jsteemann 238fcae46a some simplifications 2017-03-16 10:54:08 +01:00
Dan Larkin 966e05b596 Added very basic rest handler for views. 2017-03-14 19:05:14 -04:00
Simon Grätzer 7b35f75b23 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	arangod/CMakeLists.txt
#	arangod/GeneralServer/GeneralServerFeature.cpp
2017-03-13 12:25:28 +01:00
jsteemann 45a68f54f8 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-03-13 12:10:54 +01:00
Simon Grätzer 871272d7c1 Merge from devel 2017-03-12 12:32:22 +01:00
jsteemann b217a9d6af remove unused feature 2017-03-10 23:59:09 +01:00
jsteemann 0a07bb3222 make RestWalHandler a handler of the MMFiles engine 2017-03-10 09:00:37 +01:00
Simon Grätzer 2c77f42486 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-03-07 15:08:06 +01:00
jsteemann e495b5fb6c jslint && cppcheck 2017-03-06 16:13:04 +01:00
jsteemann 8ba2654540 cleanup 2017-03-06 16:08:49 +01:00
Simon Grätzer c0a390aefe Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-03-06 15:53:43 +01:00
jsteemann f7b819579d attempt to fix clang build 2017-03-06 15:40:03 +01:00
Frank Celler da27597ff4 fixed missing double quote 2017-03-05 23:29:08 +01:00
Simon Grätzer dfd3cc3869 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	arangosh/Import/ImportHelper.cpp
2017-03-04 02:08:27 +01:00
Jan Christoph Uhde d4000ebf70 Add hexdump when vaidation fails for incoming VPackSlice 2017-03-03 22:38:04 +01:00
Simon Grätzer 27c617fe10 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	3rdParty/V8/v8
#	arangod/Transaction/Methods.h
#	arangod/Utils/UserTransaction.h
#	arangod/V8Server/v8-collection.cpp
2017-03-01 14:52:35 +01:00
jsteemann dc72ec3ee7 fixed a race when dropping databases 2017-02-23 15:22:50 +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
jsteemann d024a6d00a remove logging for non-topics 2017-02-10 09:32:50 +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
Frank Celler 0da95481ea added locks for keep-alive 2017-02-08 09:41:18 +01:00
jsteemann f213d67de0 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-07 13:04:40 +01:00
jsteemann d503a4d354 added reactor type 2017-02-07 12:41:41 +01:00
Frank Celler 9588595335 added more info about scheduler status 2017-02-07 11:22:23 +01:00
jsteemann ac9e28d353 fix typo 2017-02-06 17:38:36 +01:00
Frank Celler e3fe51faa8 better threads working handling 2017-02-06 16:32:55 +01:00
jsteemann ab11410911 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-06 13:05:11 +01:00
Simon Grätzer 9967053d11 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-02-04 15:01:12 +01:00
jsteemann 3c9c826210 make method protected 2017-02-03 16:44:30 +01:00
jsteemann 902429ddfd less log spam at startup 2017-02-03 11:42:03 +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
jsteemann fa917937c4 do not use namespaces in header files 2017-02-01 13:41:31 +01:00
jsteemann e2a312450f fix out-of-memory handling at startup 2017-02-01 13:00:05 +01:00
jsteemann 09851cdf75 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-01-27 16:37:32 +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
Frank Celler 0457e2f587 safety check 2017-01-27 14:02:16 +01:00
jsteemann bbca3dde1c Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-01-27 13:52:36 +01:00
Frank Celler 9a5a50e2d5 more cleanup on statistics 2017-01-27 13:17:08 +01:00
jsteemann f37a2d8014 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-01-27 12:11:57 +01:00
Frank Celler 4a0282cc2b added missing mutex 2017-01-27 12:03:31 +01:00
Frank Celler 71ba997fba Merge branch 'devel' of github.com:arangodb/arangodb into devel 2017-01-27 11:30:39 +01:00
Frank Celler 30da97f2a5 RestHandler destructor should be virtual 2017-01-27 11:30:25 +01:00
jsteemann 1089c7b2fd Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-01-27 11:27:16 +01:00
Max Neunhoeffer 8c7a0b5a48 Fix a used after free error. 2017-01-27 11:17:42 +01:00
jsteemann f0d4770879 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-01-27 11:16:37 +01:00
Frank Celler c4a62cb108 release from unique_ptr when adding as response 2017-01-27 10:52:00 +01:00