mirror of https://gitee.com/bigwinds/arangodb
* Built a C++ skeleton REST handler for gharial, with fallback to the JS handler * Moved aql::Graph to graph::Graph * Added complete edge definitions to Graph Also: - some cleanup - used forward-declarations in headers - use Graph in graph rest handler * Handle graph lookup failures according to the test suite * Added GET vertex * Bugfixes in ResultT - Added missing #include - Fixed move semantics * Move central code of readVertex to GraphOperations * ResultT fixes and complements * Implemented a graph cache * Added and used graph cache to the rest handler * Added GET edge * Added DELETE edge * Extracted some code * Added PATCH and PUT for both edge and vertex * Moved update/replace transaction code to GraphOperations * Added stub routes for POST and a TODO note * Added a test checking that deleting a vertex removes all incident edges as well * Added a test checking that deleting a vertex does not remove edges in non-graph collections * fixed compiler warnings and errors * Began work on DELETE vertex For this, added a V8Context to allow for AQL queries to use subtransactions * Continued work on DELETE vertex (still WIP) * prep for graph post routes * fixed removeVertex operation (aql) * added post vertex and post edge gharial routes * wasSynchronoues flag changed * gharial post c++ handler, naming conventions * added gharial tests * temporary disabled cache (because not completed), added graph property read functions * added c++ gharial list vertex collections * added c++ gharial graph config * added c++ gharial list graphs * added graph manager class * first implementation of create graph in c++, WIP * changed error messages * added etag to create graph api, still multiple edge definition check missing * finished POST /_api/gharial/<graph> * WIP - DELETE /_api/gharial/<graphName> * added DELETE /_api/gharial/<graphName> validation, still missing correct response * gharial delete * fixed delete gharial lock * finished DELETE /_api/gharial/<graphName> * added routes for graph based vertices and edge definitions * improved delete route * added add new edge definition to existing graph * patch edge definition in a graph, still <WIP> * finished edit edge definition route * code changes due to devel code changes * added remove edge definition route * added vertex delete function * added todo note regarding one drop collection issue * add oprhan collection to graph route implemented * Added a test * Updated a comment * Several minor changes * Minor changes during review * Changes during review * Changes during review * Bugfix: orphans may be null or omitted * Bugfix: resolve externals * minor code changes * seperated graph class to independent component classes * seperated graph class to independent component classes * removed log output * fixed create collection behaviour in a cluster environment * fixed enterprise graphs behaviour in c++ gharial api * removed log output * formatting * improved error handling, fixed a linux compile bug * more result refactoring * more result type cleanup * fixed wrongly defined test * result handling * error handling * more refactoring * Bugfix: avoid race condition in cluster when creating collections * updated graph documentation * added graph related static strings * static strings, new method to create options for gharial created collections * Some minor cleanup * more use of static strings * minor code changes, review * added missing parseint * removed gharial foxx, added js common module, added v8 general graph module * correct use of virtual method * more v8, js general graph, broken state * more v8 graph functions * fixed editEdgeDefinition, added drop function * fixed drop behaviour * added _list, _exists * added c++ rename graph collections, added v8 + graph module function * Added a regression test * added graph._deleteEdgeDefinition, v8, server * more v8g * added _removeVertexCollection * added _extendEditDefinitions * todo, need to add a helper sort method for a local defined relation * fixed test * fixed lots of tests, added more client functions, _addVertexCollection on client module is still broken * added more client graph functions, all tests green * more client functions * add del edge def route * Fix use after move * Minor changes in client general-graph.js module * Make a copy before sorting (don't touch the argument) * Minor changes and some additional asserts in graph tests * Consistently set parameter defaults * Renamed static strings * Remove superfluous function * Made comment more verbose * Minor changes in general-graph-common.js * Added missing template arguments * Fixed community build * Cleanup in editEdgeDefinition * Regression test & bugfix: comparison of edge definitions didn' order from and to * Fixed errors introduced by merge * Minor changes in v8-general-graph.cpp * Fixed test failure due to wrong error code in CE * added missing id field * Added permission checks for graph._create * Removed assertion that is no longer valid * Moved removeGraph from GraphOperations to GraphManager * Allow C++ implementation of graph._drop to handle smart graphs * Flush js client db cache after creating/dropping collections via the general graph module * Added _deleteEdgeDefinition to the general graph client module * WIP: Added permission checks for drop graph * Fixed permission checks for drop graph * Added permission checks for other graph operations * Bugfix: assert edge definitions are returned in order * Some cleanup * Removed unused method * Minor improvements in GraphManager * Fixed a type in general-graph common module * Most useful fix of all times ever: Do not auto cast from bool to int and alternate error/noerror by this * Added the initial keyword to StaticStrings * Added a new error code, used whenever a user tries to inject a documentcollection as a relation into the graph, which is invalid * Some GraphManager/Ops/Graph cleanup. Less Slice parsing, more usage of GraphObjects * Test edgeDefinitions in graphs with a defined ordering * GraphClass Layout cleanup * Do not test error messages, use codes instead * Recreated backwards compatibility of Graph Creation Permission errors * Changed error-code if edgedefinition is used twice * Added a StaticString for the GraphName * Renamed graphToVpack => graphForClient * Partly fixed graph-api test to work with better error messages. Still red: The edgeDefinitions are now sorted, the test is supposed to sort his own list, but appearently does not do so. Under investigation * Added a new error code that rejects injection of differently sharded smart collection into smartgraph. Should be more helpful to our users * graph createCollectionOptions now require an open object to be cross-called from enterprise. Made enterprise switch for creation of graph more elegant. * Updated graphs.cpp * Massive refactoring. Made Factories for graphs to make SmartGraph much more transparent. Also reduced amount of multiple implementations of the same stuff. Killed vocbase/graphs use GraphManager instead. Removed usage of GraphCache, was not completely implemented anyway and only partially used, which is bad at the moment. Option for later improvement never the less * Adapted JS code to now really use c++ variants. ALso included 3 Classes: Graph, SmartGraph and GraphModule. * Fixed undefined behaviour in Remove Vertex. Fixed smartgraph sharding if one collection already exists. * Removed DEBUG output * Removed DEBUG logs * Removed dead code * Fixed Graph EdgeDefinition test, they now have a different ordering. * Added a test when adding a vertexCollection that it is actually valid in the graph * Client Graph API now correctly sends `orphanCollections` and not `orphans` * Let GraphOperations modify the graph in-place. It should now properly handle edgeDefinitions. * Added initial cid StaticString * Included the vocbase in fromPersistence creation of Graphs. Only required to enhance 3.3 SmartGraphs on the fly. * Fixed internal error message * Fixed compiler isses originiated from merging * Removed unused imports * Regenerated generated file |
||
---|---|---|
.. | ||
ArangoGlobalContext.cpp | ||
ArangoGlobalContext.h | ||
AssocHelpers.h | ||
AssocMulti.h | ||
AssocMultiHelpers.h | ||
AssocUnique.h | ||
AssocUniqueHelpers.h | ||
AttributeNameParser.cpp | ||
AttributeNameParser.h | ||
CleanupFunctions.cpp | ||
CleanupFunctions.h | ||
Common.h | ||
ConditionLocker.cpp | ||
ConditionLocker.h | ||
ConditionVariable.cpp | ||
ConditionVariable.h | ||
ConditionalDeleter.h | ||
DataProtector.cpp | ||
DataProtector.h | ||
DeadlockDetector.h | ||
Endian.h | ||
EnumIterator.h | ||
Exceptions.cpp | ||
Exceptions.h | ||
FileResult.h | ||
FileResultString.h | ||
FileUtils.cpp | ||
FileUtils.h | ||
FixedSizeAllocator.h | ||
FloatingPoint.h | ||
HybridLogicalClock.cpp | ||
HybridLogicalClock.h | ||
IndexBucket.h | ||
LdapUrlParser.cpp | ||
LdapUrlParser.h | ||
LocalTaskQueue.cpp | ||
LocalTaskQueue.h | ||
Locking.h | ||
LruCache.h | ||
Mutex.cpp | ||
Mutex.h | ||
MutexLocker.h | ||
MutexUnlocker.h | ||
Nonce.cpp | ||
Nonce.h | ||
NumberUtils.h | ||
OpenFilesTracker.cpp | ||
OpenFilesTracker.h | ||
PerformanceLogScope.h | ||
ReadLocker.h | ||
ReadUnlocker.h | ||
ReadWriteLock.cpp | ||
ReadWriteLock.h | ||
ReadWriteSpinLock.h | ||
Result.h | ||
RocksDBLogger.cpp | ||
RocksDBLogger.h | ||
RocksDBUtils.cpp | ||
RocksDBUtils.h | ||
RollingVector.h | ||
SameThreadAsserter.h | ||
ScopeGuard.h | ||
SharedAtomic.h | ||
SharedCounter.h | ||
SharedPRNG.cpp | ||
SharedPRNG.h | ||
SmallVector.h | ||
StaticStrings.cpp | ||
StaticStrings.h | ||
StringBuffer.cpp | ||
StringBuffer.h | ||
StringHeap.cpp | ||
StringHeap.h | ||
StringRef.cpp | ||
StringRef.h | ||
StringUtils.cpp | ||
StringUtils.h | ||
Thread.cpp | ||
Thread.h | ||
TimedAction.h | ||
Utf8Helper.cpp | ||
Utf8Helper.h | ||
VERSION.in | ||
VPackStringBufferAdapter.h | ||
VelocyPackDumper.cpp | ||
VelocyPackDumper.h | ||
VelocyPackHelper.cpp | ||
VelocyPackHelper.h | ||
WriteLocker.h | ||
WriteUnlocker.h | ||
application-exit.cpp | ||
application-exit.h | ||
asio_ns.h | ||
build-date.h.in | ||
build-repository.h.in | ||
build.h.in | ||
conversions.cpp | ||
conversions.h | ||
cpu-relax.h | ||
crc1.S | ||
crc4.S | ||
crc5.S | ||
csv.cpp | ||
csv.h | ||
datetime.cpp | ||
datetime.h | ||
debugging.cpp | ||
debugging.h | ||
directories.h.in | ||
encoding.h | ||
error.cpp | ||
error.h | ||
errors.dat | ||
exitcodes.cpp | ||
exitcodes.dat | ||
exitcodes.h | ||
fasthash.cpp | ||
fasthash.h | ||
files.cpp | ||
files.h | ||
fpconv.cpp | ||
fpconv.h | ||
gcd.h | ||
hashes.cpp | ||
hashes.h | ||
json.cpp | ||
json.h | ||
levenshtein.cpp | ||
levenshtein.h | ||
locks-posix.cpp | ||
locks-posix.h | ||
locks-win32.cpp | ||
locks-win32.h | ||
locks.h | ||
make_unique.h | ||
memory-map-posix.cpp | ||
memory-map-posix.h | ||
memory-map-win32.cpp | ||
memory-map-win32.h | ||
memory-map.h | ||
memory.cpp | ||
memory.h | ||
messages.h | ||
mimetypes.cpp | ||
mimetypes.dat | ||
mimetypes.h | ||
operating-system.h | ||
powers.h | ||
prime-numbers.cpp | ||
prime-numbers.h | ||
process-utils.cpp | ||
process-utils.h | ||
short_alloc.h | ||
socket-utils.cpp | ||
socket-utils.h | ||
splitmix64.h | ||
system-compiler.h | ||
system-functions.cpp | ||
system-functions.h | ||
terminal-utils-posix.cpp | ||
terminal-utils-win32.cpp | ||
terminal-utils.cpp | ||
terminal-utils.h | ||
threads-posix.cpp | ||
threads-posix.h | ||
threads-win32.cpp | ||
threads-win32.h | ||
threads.h | ||
tri-strings.cpp | ||
tri-strings.h | ||
tri-zip.cpp | ||
tri-zip.h | ||
vector.cpp | ||
vector.h | ||
voc-errors.cpp | ||
voc-errors.h | ||
voc-mimetypes.cpp | ||
voc-mimetypes.h | ||
win-utils.cpp | ||
win-utils.h | ||
xoroshiro128plus.h | ||
xxhash.cpp | ||
xxhash.h |