documentdb
Advanced tools
Comparing version 1.15.0 to 1.15.1
@@ -193,3 +193,3 @@ /* | ||
SDKName: "documentdb-nodejs-sdk", | ||
SDKVersion: "1.15.0", | ||
SDKVersion: "1.15.1", | ||
@@ -196,0 +196,0 @@ DefaultPrecisions: { |
@@ -29,3 +29,4 @@ /* | ||
, ClientSideMetrics = require("../queryMetrics/clientSideMetrics.js") | ||
, Constants = require("../constants"); | ||
, Constants = require("../constants") | ||
, HeaderUtils = require('./headerUtils'); | ||
@@ -78,3 +79,3 @@ //SCRIPT START | ||
if (this.currentIndex < this.resources.length) { | ||
return callback(undefined, this.resources[this.currentIndex], undefined); | ||
return callback(undefined, this.resources[this.currentIndex], HeaderUtils.getInitialHeader()); | ||
} | ||
@@ -102,3 +103,3 @@ | ||
this.state = DefaultQueryExecutionContext.STATES.ended; | ||
callback(undefined, undefined, undefined); | ||
callback(undefined, undefined, HeaderUtils.getInitialHeader()); | ||
} | ||
@@ -125,3 +126,3 @@ }, | ||
if (this.currentPartitionIndex >= this.fetchFunctions.length) { | ||
return callback(undefined, undefined, undefined); | ||
return callback(undefined, undefined, HeaderUtils.getInitialHeader()); | ||
} | ||
@@ -135,3 +136,3 @@ var that = this; | ||
if (this.currentPartitionIndex >= that.fetchFunctions.length) { | ||
return callback(undefined, undefined, undefined); | ||
return callback(undefined, undefined, HeaderUtils.getInitialHeader()); | ||
} | ||
@@ -138,0 +139,0 @@ |
@@ -285,3 +285,3 @@ /* | ||
// If there are no more bufferd items and there are still items to be fetched then buffer more | ||
// If there are no more buffered items and there are still items to be fetched then buffer more | ||
var that = this; | ||
@@ -288,0 +288,0 @@ this.bufferMore(function (err, items, headers) { |
@@ -118,3 +118,3 @@ /* | ||
if (this.topCount <= 0) { | ||
return callback(undefined, undefined, undefined); | ||
return callback(undefined, undefined, HeaderUtils.getInitialHeader()); | ||
} | ||
@@ -135,3 +135,3 @@ this.topCount--; | ||
if (this.topCount <= 0) { | ||
return callback(undefined, undefined); | ||
return callback(undefined, undefined, HeaderUtils.getInitialHeader()); | ||
} | ||
@@ -273,3 +273,3 @@ this.executionContext.current(function (err, item, headers) { | ||
else { | ||
return _nextItem(undefined, that.aggregateValues); | ||
return _nextItem(undefined, that.aggregateValues, that.aggregatedHeaders); | ||
} | ||
@@ -276,0 +276,0 @@ }, |
@@ -27,7 +27,6 @@ /* | ||
var Base = require("../base") | ||
, Constants = require("../constants") | ||
, QueryMetrics = require("../queryMetrics/queryMetrics.js") | ||
, assert = require("assert") | ||
, util = require("util"); | ||
, Constants = require("../constants"); | ||
var zero = require("../queryMetrics/queryMetrics").zero; | ||
//SCRIPT START | ||
@@ -57,5 +56,10 @@ var HeaderUtils = Base.defineClass( | ||
getInitialHeader: function () { | ||
if(!zero) { | ||
// QueryMetrics.zero is undefined when the file loads, for some reason (maybe a circular dependency?) | ||
// Adding this as a hack... | ||
zero = require("../queryMetrics/queryMetrics").zero; | ||
} | ||
var headers = {}; | ||
headers[Constants.HttpHeaders.RequestCharge] = 0; | ||
headers[Constants.HttpHeaders.QueryMetrics] = {}; | ||
headers[Constants.HttpHeaders.QueryMetrics] = {0: zero}; | ||
return headers; | ||
@@ -70,3 +74,3 @@ }, | ||
if (headers[Constants.HttpHeaders.QueryMetrics] == undefined) { | ||
headers[Constants.HttpHeaders.QueryMetrics] = QueryMetrics.zero; | ||
headers[Constants.HttpHeaders.QueryMetrics] = {0: zero}; | ||
} | ||
@@ -73,0 +77,0 @@ |
@@ -28,3 +28,4 @@ /* | ||
Constants = require("./constants"), | ||
ProxyQueryExecutionContext = require("./queryExecutionContext/proxyQueryExecutionContext"); | ||
ProxyQueryExecutionContext = require("./queryExecutionContext/proxyQueryExecutionContext"), | ||
HeaderUtils = require("./queryExecutionContext/headerUtils"); | ||
@@ -107,2 +108,3 @@ //SCRIPT START | ||
this.toArrayTempResources = []; | ||
this.toArrayLastResHeaders = HeaderUtils.getInitialHeader(); | ||
this._toArrayImplementation(callback); | ||
@@ -145,4 +147,4 @@ }, | ||
} | ||
// concatinate the results and fetch more | ||
that.toArrayLastResHeaders = headers; | ||
// concatenate the results and fetch more | ||
HeaderUtils.mergeHeaders(that.toArrayLastResHeaders, headers); | ||
@@ -149,0 +151,0 @@ if (resource === undefined) { |
@@ -27,3 +27,4 @@ /* | ||
var Base = require("../base") | ||
, QueryMetricsUtils = require("./queryMetricsUtils.js"); | ||
, QueryMetricsUtils = require("./queryMetricsUtils") | ||
, HeaderUtils = require("../queryExecutionContext/headerUtils"); | ||
@@ -70,3 +71,3 @@ //SCRIPT START | ||
} else { | ||
// Arugments was flat var args (arg0, arg1, ..) | ||
// Arguments was flat var args (arg0, arg1, ..) | ||
args = arguments; | ||
@@ -89,3 +90,3 @@ } | ||
requestCharge += clientSideMetrics._requestCharge; | ||
requestCharge += HeaderUtils.getRequestChargeIfAny(clientSideMetrics._requestCharge); | ||
} | ||
@@ -92,0 +93,0 @@ |
@@ -407,6 +407,6 @@ /* | ||
if (typeof exports !== "undefined") { | ||
module.exports = QueryMetrics; | ||
QueryMetrics.zero = zero; | ||
QueryMetrics.createFromArray = createFromArray; | ||
QueryMetrics.createFromDelimitedString = createFromDelimitedString; | ||
module.exports = QueryMetrics; | ||
} |
@@ -14,3 +14,3 @@ { | ||
], | ||
"version": "1.15.0", | ||
"version": "1.15.1", | ||
"author": "Microsoft Corporation", | ||
@@ -23,14 +23,14 @@ "main": "./index.js", | ||
"@types/node": "^8.0.7", | ||
"child_process": "*", | ||
"eslint": "*", | ||
"grunt": "^0.4.5", | ||
"grunt-eslint": "^13.0.0", | ||
"grunt": "^1.0.3", | ||
"grunt-eslint": "^21.0.0", | ||
"grunt-mocha-test": "^0.13.3", | ||
"jsdoc": "*", | ||
"load-grunt-tasks": "^3.1.0", | ||
"mocha": "*", | ||
"sinon": "^3.2.1", | ||
"time-grunt": "^1.2.0", | ||
"grunt-mocha-test": "^0.13.3", | ||
"mocha-junit-reporter": "^1.15.0", | ||
"mocha-multi-reporters": "^1.1.6", | ||
"mocha-junit-reporter": "^1.15.0", | ||
"child_process": "*" | ||
"sinon": "^7.2.2", | ||
"time-grunt": "^1.2.0" | ||
}, | ||
@@ -37,0 +37,0 @@ "dependencies": { |
@@ -1,3 +0,5 @@ | ||
# Microsoft Azure Cosmos DB Node.js SDK | ||
# 🚨🚨🚨 This package has been renamed to [@azure/cosmos](https://www.npmjs.com/package/@azure/cosmos) and the code moved to [azure-cosmos-js](https://github.com/Azure/azure-cosmos-js#readme). 🚨🚨🚨 | ||
# Microsoft Azure Cosmos DB Node.js SDK v1 | ||
![](https://img.shields.io/npm/v/documentdb.svg) | ||
@@ -22,2 +24,3 @@ ![](https://img.shields.io/npm/dm/documentdb.svg) | ||
### Prerequisites | ||
@@ -24,0 +27,0 @@ |
@@ -237,4 +237,5 @@ /* | ||
//////////////////////////////// | ||
var toArrayVerifier = function (err, results) { | ||
var toArrayVerifier = function (err, results, headers) { | ||
assert.equal(err, undefined, "unexpected failure in fetching the results: " + JSON.stringify(err)); | ||
assert.notEqual(headers, undefined, "headers must not be undefined"); | ||
assert.equal(results.length, expectedResults.length, "invalid number of results"); | ||
@@ -283,3 +284,3 @@ assert.equal(queryIterator.hasMoreResults(), false, "hasMoreResults: no more results is left"); | ||
var results = []; | ||
var nextItemVerifier = function (err, item) { | ||
var nextItemVerifier = function (err, item, headers) { | ||
@@ -289,4 +290,5 @@ //////////////////////////////// | ||
//////////////////////////////// | ||
var currentVerifier = function (err, currentItem) { | ||
var currentVerifier = function (err, currentItem, headers) { | ||
assert.equal(err, undefined, "unexpected failure in fetching the results: " + JSON.stringify(err)); | ||
assert.notEqual(headers, undefined, "headers must not be undefined"); | ||
assert.equal(item, currentItem, "current must give the previously item returned by nextItem"); | ||
@@ -309,2 +311,3 @@ | ||
assert.equal(err, undefined, "unexpected failure in fetching the results: " + JSON.stringify(err)); | ||
assert.notEqual(headers, undefined, "headers must not be undefined"); | ||
@@ -311,0 +314,0 @@ if (item === undefined) { |
@@ -230,4 +230,5 @@ /* | ||
options.continuation = undefined; | ||
var toArrayVerifier = function (err, results) { | ||
var toArrayVerifier = function (err, results, headers) { | ||
assert.equal(err, undefined, "unexpected failure in fetching the results: " + JSON.stringify(err)); | ||
assert.notEqual(headers, undefined, "headers must not be undefined"); | ||
assert.equal(results.length, expectedOrderIds.length, "invalid number of results"); | ||
@@ -274,3 +275,3 @@ assert.equal(queryIterator.hasMoreResults(), false, "hasMoreResults: no more results is left"); | ||
var results = []; | ||
var nextItemVerifier = function (err, item) { | ||
var nextItemVerifier = function (err, item, headers) { | ||
@@ -280,4 +281,5 @@ //////////////////////////////// | ||
//////////////////////////////// | ||
var currentVerifier = function (err, currentItem) { | ||
var currentVerifier = function (err, currentItem, headers) { | ||
assert.equal(err, undefined, "unexpected failure in fetching the results: " + err); | ||
assert.notEqual(headers, undefined, "headers must not be undefined"); | ||
assert.equal(item, currentItem, "current must give the previously item returned by nextItem"); | ||
@@ -300,2 +302,3 @@ | ||
assert.equal(err, undefined, "unexpected failure in fetching the results: " + err); | ||
assert.notEqual(headers, undefined, "headers must not be undefined"); | ||
@@ -549,9 +552,10 @@ if (item === undefined) { | ||
var counter = 0; | ||
var totalRequestCharge = 0; | ||
var totalExecuteNextRequestCharge = 0; | ||
var consumeFunc = function (err, results, headers) { | ||
var rc = (headers || {})[Constants.HttpHeaders.RequestCharge]; | ||
if(err) return done(err); | ||
var executeNextRequestCharge = headers[Constants.HttpHeaders.RequestCharge]; | ||
if (counter == 0) { | ||
assert(rc > 0); | ||
assert(executeNextRequestCharge > 0); | ||
counter += 1; | ||
@@ -561,8 +565,17 @@ } | ||
if (results == undefined) { | ||
assert(totalRequestCharge > 0); | ||
return done(); | ||
assert(totalExecuteNextRequestCharge > 0); | ||
queryIterator.reset(); | ||
queryIterator.toArray(function(err, results, headers) { | ||
if(err) return done(err); | ||
var toArrayRequestCharge = headers[Constants.HttpHeaders.RequestCharge]; | ||
assert(toArrayRequestCharge > 0, "toArray request charge must be greater than 0"); | ||
var percentDifference = Math.abs(toArrayRequestCharge - totalExecuteNextRequestCharge)/totalExecuteNextRequestCharge; | ||
assert(percentDifference <= .01, "difference between toArray request charge and executeNext request charge should be less than 1%"); | ||
done(); | ||
}); | ||
} | ||
else { | ||
totalRequestCharge += rc; | ||
assert(rc >= 0); | ||
totalExecuteNextRequestCharge += executeNextRequestCharge; | ||
assert(executeNextRequestCharge >= 0); | ||
queryIterator.executeNext(consumeFunc); | ||
@@ -569,0 +582,0 @@ } |
@@ -21,6 +21,6 @@ "use strict"; | ||
var deleteDatabases = function (done) { | ||
client.readDatabases().toArray(function (err, databases) { | ||
client.readDatabases().toArray(function (err, databases, headers) { | ||
if (err) { | ||
console.log("error occured reading databases", err); | ||
return done(); | ||
console.log("error occurred reading databases", err); | ||
return done(err); | ||
} | ||
@@ -37,2 +37,3 @@ | ||
client.deleteDatabase(database._self, function (err, db) { | ||
if(err) done(err); | ||
}); | ||
@@ -70,4 +71,5 @@ } | ||
queryIterator.toArray(function (error, result) { | ||
queryIterator.toArray(function (error, result, headers) { | ||
assert.equal(error, undefined); | ||
assert.notEqual(headers, undefined); | ||
assert.equal(result[0]["id"], "myId"); | ||
@@ -97,3 +99,3 @@ done(); | ||
if (err) { | ||
console.log("error occured reading databases", err); | ||
console.log("error occurred reading databases", err); | ||
return done(); | ||
@@ -100,0 +102,0 @@ } |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
1601605
96
30716
158
7