1
0
Fork 0

Merge branch 'devel' of ssh://github.com/triAGENS/ArangoDB into devel

This commit is contained in:
Max Neunhoeffer 2014-12-08 11:30:21 +01:00
commit 10580f1401
10 changed files with 79 additions and 44 deletions

View File

@ -9,7 +9,12 @@ md-files:
@for file in $(basename $(MDPP_FILES)); do echo "converting $${file}.mdpp"; markdown-pp.py $${file}.mdpp $${file}.md; done
clean-md-files:
@for file in $(basename $(MD_FILES)); do echo "remove $${file}.md";rm $${file}.md;done
@for file in $(basename $(MD_FILES)); do rm -v $${file}.md; done
clean-books:
@rm -rv books
clean: clean-md-files clean-books
.PHONY: build-books
@ -26,4 +31,4 @@ build-book:
python bot.py
cd $(NAME) && gitbook build -o ../books/$(NAME)
cp Users/Arangodb_Logo.png books/Users/
python deprecated.py
python deprecated.py

View File

@ -36,7 +36,7 @@ ModificationOptions::ModificationOptions (Json const& json) {
ignoreErrors = JsonHelper::getBooleanValue(array.json(), "ignoreErrors", false);
waitForSync = JsonHelper::getBooleanValue(array.json(), "waitForSync", false);
nullMeansRemove = JsonHelper::getBooleanValue(array.json(), "nullMeansRemove", false);
mergeObjects = JsonHelper::getBooleanValue(array.json(), "mergeObjects", false);
mergeObjects = JsonHelper::getBooleanValue(array.json(), "mergeObjects", true);
}
void ModificationOptions::toJson (triagens::basics::Json& json,

View File

@ -54,7 +54,7 @@ namespace triagens {
: ignoreErrors(false),
waitForSync(false),
nullMeansRemove(false),
mergeObjects(false) {
mergeObjects(true) {
}
void toJson (triagens::basics::Json& json, TRI_memory_zone_t* zone) const;

View File

@ -1314,6 +1314,36 @@ bool RestDocumentHandler::replaceDocument () {
/// assert(response5.code === 200);
/// logJsonResponse(response5);
/// @END_EXAMPLE_ARANGOSH_RUN
///
/// Merging attributes of an object using `mergeObjects`:
///
/// @EXAMPLE_ARANGOSH_RUN{RestDocumentHandlerPatchDocumentMerge}
/// var cn = "products";
/// db._drop(cn);
/// db._create(cn);
///
/// var document = db.products.save({"inhabitants":{"china":1366980000,"india":1263590000,"usa":319220000}});
/// var url = "/_api/document/" + document._id;
///
/// var response = logCurlRequest("GET", url);
/// assert(response.code === 200);
/// logJsonResponse(response);
///
/// var response = logCurlRequest("PATCH", url + "?mergeObjects=true", { "inhabitants": {"indonesia":252164800,"brazil":203553000 }});
/// assert(response.code === 202);
///
/// var response2 = logCurlRequest("GET", url);
/// assert(response2.code === 200);
/// logJsonResponse(response2);
///
/// var response3 = logCurlRequest("PATCH", url + "?mergeObjects=false", { "inhabitants": { "pakistan":188346000 }});
/// assert(response3.code === 202);
/// logJsonResponse(response3);
///
/// var response4 = logCurlRequest("GET", url);
/// assert(response4.code === 200);
/// logJsonResponse(response4);
/// @END_EXAMPLE_ARANGOSH_RUN
/// @endDocuBlock
////////////////////////////////////////////////////////////////////////////////

View File

@ -79,8 +79,8 @@ struct LocalCollectionGuard {
////////////////////////////////////////////////////////////////////////////////
struct InsertOptions {
bool waitForSync = false;
bool silent = false;
bool waitForSync = false;
bool silent = false;
};
////////////////////////////////////////////////////////////////////////////////
@ -89,11 +89,11 @@ struct InsertOptions {
////////////////////////////////////////////////////////////////////////////////
struct UpdateOptions {
bool overwrite = false;
bool keepNull = true;
bool overwrite = false;
bool keepNull = true;
bool mergeObjects = true;
bool waitForSync = false;
bool silent = false;
bool waitForSync = false;
bool silent = false;
};
////////////////////////////////////////////////////////////////////////////////
@ -102,8 +102,8 @@ struct UpdateOptions {
////////////////////////////////////////////////////////////////////////////////
struct RemoveOptions {
bool overwrite = false;
bool waitForSync = false;
bool overwrite = false;
bool waitForSync = false;
};
// -----------------------------------------------------------------------------

View File

@ -4518,21 +4518,14 @@ Graph.prototype._removeVertexCollection = function(vertexCollectionName, dropCol
///
/// @EXAMPLES
///
/// A route planner example, all neighbors of capitals.
/// A route planner example, all connecting edges between capitals.
///
/// @EXAMPLE_ARANGOSH_OUTPUT{generalGraphModuleNeighbors1}
/// @EXAMPLE_ARANGOSH_OUTPUT{generalGraphModuleConnectingEdges1}
/// var examples = require("org/arangodb/graph-examples/example-graph.js");
/// var graph = examples.loadGraph("routeplanner");
/// graph._neighbors({isCapital : true});
/// graph._getConnectingEdges({isCapital : true}, {isCapital : true});
/// @END_EXAMPLE_ARANGOSH_OUTPUT
///
/// A route planner example, all outbound neighbors of Hamburg.
///
/// @EXAMPLE_ARANGOSH_OUTPUT{generalGraphModuleNeighbors2}
/// var examples = require("org/arangodb/graph-examples/example-graph.js");
/// var graph = examples.loadGraph("routeplanner");
/// graph._neighbors('germanCity/Hamburg', {direction : 'outbound', maxDepth : 2});
/// @END_EXAMPLE_ARANGOSH_OUTPUT
///
/// @endDocuBlock
//

View File

@ -4517,21 +4517,14 @@ Graph.prototype._removeVertexCollection = function(vertexCollectionName, dropCol
///
/// @EXAMPLES
///
/// A route planner example, all neighbors of capitals.
/// A route planner example, all connecting edges between capitals.
///
/// @EXAMPLE_ARANGOSH_OUTPUT{generalGraphModuleNeighbors1}
/// @EXAMPLE_ARANGOSH_OUTPUT{generalGraphModuleConnectingEdges1}
/// var examples = require("org/arangodb/graph-examples/example-graph.js");
/// var graph = examples.loadGraph("routeplanner");
/// graph._neighbors({isCapital : true});
/// graph._getConnectingEdges({isCapital : true}, {isCapital : true});
/// @END_EXAMPLE_ARANGOSH_OUTPUT
///
/// A route planner example, all outbound neighbors of Hamburg.
///
/// @EXAMPLE_ARANGOSH_OUTPUT{generalGraphModuleNeighbors2}
/// var examples = require("org/arangodb/graph-examples/example-graph.js");
/// var graph = examples.loadGraph("routeplanner");
/// graph._neighbors('germanCity/Hamburg', {direction : 'outbound', maxDepth : 2});
/// @END_EXAMPLE_ARANGOSH_OUTPUT
///
/// @endDocuBlock
//

View File

@ -31,7 +31,9 @@ exports.builtins = {
// String functions
CONCAT: [[1, Infinity]], CONCAT_SEPARATOR: [[2, Infinity]],
CHAR_LENGTH: 1, LENGTH: 1, LOWER: 1, UPPER: 1, SUBSTRING: [2, 3],
LEFT: 2, RIGHT: 2, TRIM: 2, REVERSE: 1, CONTAINS: 3, LIKE: 3,
LEFT: 2, RIGHT: 2, TRIM: [1, 2], REVERSE: 1, CONTAINS: 3, LIKE: 3,
LTRIM: [1, 2], RTRIM: [1, 2], FIND_FIRST: [2, 3, 4], FIND_LAST: [2, 3, 4],
SPLIT: [1, 2, 3], SUBSTITUTE: [2, 3, 4],
// Numeric functions
FLOOR: 1, CEIL: 1, ROUND: 1, ABS: 1, SQRT: 1, RAND: 0,
// Date functions
@ -41,22 +43,32 @@ exports.builtins = {
DATE_NOW: 0,
// List functions
/*LENGTH: 1,*/ FLATTEN: [1, 2], MIN: 1, MAX: 1, AVERAGE: 1, SUM: 1,
MEDIAN: 1, VARIANCE_POPULATION: 1, VARIANCE_SAMPLE: 1,
MEDIAN: 1, PERCENTILE: [2, 3], VARIANCE_POPULATION: 1, VARIANCE_SAMPLE: 1,
STDDEV_POPULATION: 1, STDDEV_SAMPLE: 1, /*REVERSE: 1,*/
FIRST: 1, LAST: 1, NTH: 2, POSITION: [2, 3], SLICE: [2, 3],
UNIQUE: 1, UNION: [[1, Infinity]], UNION_DISTINCT: [[1, Infinity]],
MINUS: [[1, Infinity]], INTERSECTION: [[1, Infinity]],
CALL: [[1, Infinity]], APPLY: [[1, Infinity]],
PUSH: [2, 3], APPEND: [2, 3], POP: 1, SHIFT: 1, UNSHIFT: [2, 3],
REMOVE_VALUE: [2, 3], REMOVE_VALUES: 2, REMOVE_NTH: 2,
// Document functions
MATCHES: [2, 3], MERGE: [[1, Infinity]], MERGE_RECURSIVE: [[1, Infinity]],
TRANSLATE: [2, 3], HAS: 2, ATTRIBUTES: [[1, 3]], UNSET: [[1, Infinity]],
KEEP: [[2, Infinity]], PARSE_IDENTIFIER: 1,
KEEP: [[2, Infinity]], PARSE_IDENTIFIER: 1, ZIP: 2,
// Geo functions
NEAR: [5, 6], WITHIN: [5, 6],
NEAR: [5, 6], WITHIN: [5, 6], WITHIN_RECTANGLE: 5, IS_IN_POLYGON: [2, 3],
// Fulltext functions
FULLTEXT: 3,
// Graph functions
PATHS: [3, 4], TRAVERSAL: [5, 6], TRAVERSAL_TREE: [5, 6],
SHORTEST_PATH: [5, 6], EDGES: [3, 4], NEIGHBORS: [4, 5],
GRAPH_PATHS: [1, 2], GRAPH_SHORTEST_PATH: [3, 4], GRAPH_DISTANCE_TO: [3, 4],
GRAPH_TRAVERSAL: [3, 4], GRAPH_TRAVERSAL_TREE: [4, 5], GRAPH_EDGES: [2, 3],
GRAPH_VERTICES: [2, 3], GRAPH_NEIGHBORS: [2, 3], GRAPH_COMMON_NEIGHBORS: [3, 4, 5],
GRAPH_COMMON_PROPERTIES: [3, 4], GRAPH_ECCENTRICITY: [1, 2],
GRAPH_BETWEENNESS: [1, 2], GRAPH_CLOSENESS: [1, 2],
GRAPH_ABSOLUTE_ECCENTRICITY: [2, 3], GRAPH_ABSOLUTE_BETWEENNESS: [2, 3],
GRAPH_ABSOLUTE_CLOSENESS: [2, 3], GRAPH_DIAMETER: [1, 2], GRAPH_RADIUS: [1, 2],
// Control flow functions
NOT_NULL: [[1, Infinity]], FIRST_LIST: [[1, Infinity]],
FIRST_DOCUMENT: [[1, Infinity]],
@ -70,4 +82,4 @@ exports.deprecatedBuiltins = [
'TRAVERSAL_TREE',
'SHORTEST_PATH',
'NEIGHBORS'
];
];

File diff suppressed because one or more lines are too long

View File

@ -1,6 +1,6 @@
{
"dependencies": {
"aqb": "1.4.0",
"aqb": "1.4.1",
"buster-format": "0.5.6",
"cheerio": "0.17.0",
"coffee-script": "1.7.1",