Socket
Socket
Sign inDemoInstall

leo-connector-common

Package Overview
Dependencies
Maintainers
4
Versions
108
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

leo-connector-common - npm Package Compare versions

Comparing version 2.0.0-204-g5fcc0ac to 2.0.0-210-gd7eece1

checksum/tests/body-too-large.utest.js

14

base.js

@@ -45,16 +45,2 @@ 'use strict';

}
// @deprecated
dol(config) {
console.log('`dol` is deprecated and will be removed. Please use `domainObjectBuilder` instead.');
return this.domainObjectBuilder(config);
}
// @deprecated
DomainObjectLoader(config) {
console.log('`DomainObjectLoader` is deprecated and will be removed. Please use `domainObjectBuilder` instead.');
return this.domainObjectBuilder(config);
}
};

2

checksum/index.js

@@ -279,3 +279,3 @@ let leo = require("leo-sdk");

} else {
resolve();
resolve(session);
}

@@ -282,0 +282,0 @@ });

@@ -326,5 +326,6 @@ "use strict";

settings: event.settings,
session: event.session
session: event.session,
...event.data
}, event.data.ids).then(() => callback()).catch(callback);
}
};

@@ -6,2 +6,3 @@ "use strict";

let logger = require("leo-logger")("leo-checksum.nibbler");
const BODY_TOO_LARGE_ERROR = '{ "errorMessage" : "body size is too long"}';

@@ -111,3 +112,5 @@ module.exports = function(local, remote, opts) {

end
}).then(result => done(null, result), callback);
}).then(result => done(null, result), (err) => done(null, {
error: err
}));
}, (err, indivData) => {

@@ -120,2 +123,6 @@ if (err) {

let remoteData = indivData[1];
if (localData.error || remoteData.error) {
callback(localData.error || remoteData.error);
return;
}
let results = {

@@ -230,2 +237,18 @@ missing: [],

local._getIndividualChecksums = local.getIndividualChecksums;
local.getIndividualChecksums = function(...args) {
if (local.getIndividualChecksums.cache) {
logger.log("*** Getting individual data from cache ***");
return Promise.resolve(local.getIndividualChecksums.cache);
}
return local._getIndividualChecksums.apply(this, args).then(data => {
local.getIndividualChecksums.cache = data;
logger.log("*** cache set ***");
return data;
}).catch(err => {
delete local.getIndividualChecksums.cache;
return err;
});
};
let until = opts.until;

@@ -252,8 +275,33 @@ let stopReason = null;

}
let onErrorErr = err;
if (nibble.limit <= 20000 || result.qty < 20000 || opts.skipBatch) { //It is small enough, we need to do individual checks
compareIndividual(nibble.start, nibble.end, (err, dataResult) => {
if (err) {
done(err);
if (err == BODY_TOO_LARGE_ERROR && result.shouldCleanup !== false) {
result.shouldCleanup = false;
let keepIds = local.getIndividualChecksums.cache.checksums.map(o => o.id);
let remoteQty = result[remote.name].qty || 0;
let localQty = result[local.name].qty || 0;
logger.error(`${local.name} Quantity(${localQty}) to ${remote.name} Quantity(${remoteQty}) is too high. Cleaning up ${remote.name} system.`);
result.extraCount = remoteQty - localQty;
// Clean up
remote.delete({
start: nibble.start,
end: nibble.end,
not_ids: keepIds
}).then(() => {
nibblerOpts.onError(onErrorErr, result, nibble, done);
}).catch((e) => {
logger.error(`${remote.name} delete err`, e);
done(err);
});
} else {
done(err);
}
return;
}
// request was successful so clear out any cache data
delete local.getIndividualChecksums.cache;
//Submit them to be resent

@@ -272,3 +320,3 @@ if (result.qty === undefined) {

missing: dataResult.missing.length,
extra: dataResult.extra.length
extra: dataResult.extra.length + (result.extraCount || 0)
});

@@ -285,3 +333,3 @@ if (opts.stats) {

}
if (dataResult.missing.length) {
if (opts.onSample && dataResult.missing.length) {
opts.onSample('missing', dataResult.missing);

@@ -292,3 +340,3 @@ }

}
if (dataResult.extra.length) {
if (opts.onSample && dataResult.extra.length) {
opts.onSample('extra', dataResult.extra);

@@ -295,0 +343,0 @@ }

@@ -727,3 +727,3 @@ 'use strict';

processResults(err, rows, done) {
if (rows && Object.keys(rows[0]).length > 1) {
if (rows && rows.length >= 1 && Object.keys(rows[0]).length > 1) {
return done(err, rows);

@@ -730,0 +730,0 @@ }

{
"name": "leo-connector-common",
"version": "2.0.0-204-g5fcc0ac",
"version": "2.0.0-210-gd7eece1",
"description": "Common package for all Leo Platform database connectors",

@@ -28,8 +28,8 @@ "main": "index.js",

"async": "^2.6.1",
"leo-aws": "^1.4.0",
"leo-logger": ">=1.0.0",
"leo-sdk": "^2.2.0",
"moment": "^2.22.2",
"leo-aws": "^1.4.2",
"leo-logger": "^1.0.1",
"leo-sdk": "^2.2.4",
"moment": "^2.24.0",
"sqlstring": "^2.3.1"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc