Socket
Socket
Sign inDemoInstall

aerospike

Package Overview
Dependencies
Maintainers
3
Versions
135
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

aerospike - npm Package Compare versions

Comparing version 2.5.0 to 2.5.1

aerospike-2.5.1.tgz

6

History.md

@@ -0,1 +1,7 @@

v2.5.1 / 2017-04-11
===================
* **Bug Fixes**
* Support queries with keys with just namespace + digest [#184](https://github.com/aerospike/aerospike-client-nodejs/issues/184)
v2.5.0 / 2017-04-05

@@ -2,0 +8,0 @@ ===================

15

lib/key.js

@@ -43,3 +43,4 @@ /**

/** @member {(string|integer|Buffer)} [Key#key] */
if (isSet(key) && !isValidKey(key)) {
var hasKey = isSet(key)
if (hasKey && !isValidKey(key)) {
throw new TypeError('Key must be a string, integer, or Buffer')

@@ -55,3 +56,11 @@ }

*/
var hasDigest = isSet(digest)
if (hasDigest && !isValidDigest(digest)) {
throw new TypeError('Digest must be a 20-byte Buffer')
}
this.digest = digest || null
if (!(hasKey || hasDigest)) {
throw new TypeError('Either key or digest must be set')
}
}

@@ -81,2 +90,6 @@

function isValidDigest (digest) {
return (Buffer.isBuffer(digest) && digest.length === 20)
}
module.exports = Key

2

package.json
{
"name": "aerospike",
"version": "2.5.0",
"version": "2.5.1",
"description": "Aerospike Client Library",

@@ -5,0 +5,0 @@ "tags": [

@@ -71,2 +71,4 @@ // *****************************************************************************

context('user key', function () {
var dummyDigest = new Buffer([0x15, 0xc7, 0x49, 0xfd, 0x01, 0x54, 0x43, 0x8b, 0xa9, 0xd9, 0x5d, 0x0c, 0x6e, 0x27, 0x0f, 0x1a, 0x76, 0xfc, 0x31, 0x15])
it('allows string user key', function () {

@@ -91,7 +93,7 @@ expect(new Key('ns', 'set', 'abc')).to.be.ok()

it('allows undefined user key', function () {
expect(new Key('ns', 'set', undefined)).to.be.ok()
expect(new Key('ns', 'set', undefined, dummyDigest)).to.be.ok()
})
it('allows null user key', function () {
expect(new Key('ns', 'set', null)).to.be.ok()
expect(new Key('ns', 'set', null, dummyDigest)).to.be.ok()
})

@@ -110,4 +112,39 @@

})
it('requires either key or digest', function () {
expect(function () { return new Key('ns', 'set') }).to.throwException('Either key or digest must be set')
})
})
context('digest', function () {
var client = helper.client
it('allows creating a new key with just the namespace and digest', function () {
var digest = new Buffer([0x15, 0xc7, 0x49, 0xfd, 0x01, 0x54, 0x43, 0x8b, 0xa9, 0xd9, 0x5d, 0x0c, 0x6e, 0x27, 0x0f, 0x1a, 0x76, 0xfc, 0x31, 0x15])
expect(new Key('ns', null, null, digest)).to.be.ok()
})
it('rejects a digest that is not a buffer', function () {
expect(function () { return new Key('ns', null, null, 'some string') }).to.throwException('Digest must be a 20-byte Buffer')
})
it('rejects a digest that is not the right size', function () {
expect(function () { return new Key('ns', null, null, new Buffer([0x01])) }).to.throwException('Digest must be a 20-byte Buffer')
})
it('fetches a record given the digest', function (done) {
var key = new Key('test', 'test', 'digestOnly')
client.put(key, {foo: 'bar'}, function (err) {
if (err) throw err
var digest = key.digest
var key2 = new Key('test', null, null, digest)
client.get(key2, function (err, record) {
if (err) throw err
expect(record.foo).to.equal('bar')
done()
})
})
})
})
context('plain object keys (for backward compatibility)', function () {

@@ -114,0 +151,0 @@ var client = helper.client

@@ -47,3 +47,6 @@ // *****************************************************************************

var kgen = keygen.string(helper.namespace, helper.set, {prefix: 'test/put/putAndGet/'})
var kgen = keygen.string(helper.namespace, helper.set, {
prefix: 'test/put/putAndGet/',
random: false
})
var rgen = recgen.record({i: valgen.integer(), s: valgen.string(), b: valgen.bytes()})

@@ -105,12 +108,2 @@ var total = 50

})
it('should fail with a parameter error when trying to write an undefined key value', function (done) {
var key = new Aerospike.Key(helper.namespace, helper.set, undefined)
var record = { bin1: 123, bin2: 456 }
client.put(key, record, function (err) {
expect(err.code).to.equal(status.AEROSPIKE_ERR_PARAM)
done()
})
})
})

@@ -117,0 +110,0 @@

@@ -112,3 +112,3 @@ // *****************************************************************************

}
var kgen = keygen.string(helper.namespace, testSet, {prefix: 'test/query/'})
var kgen = keygen.string(helper.namespace, testSet, {prefix: 'test/query/', random: false})
var mgen = metagen.constant({ ttl: 300 })

@@ -115,0 +115,0 @@ putgen.put(numberOfSamples, kgen, sampleGen, mgen, function (key, record) {

@@ -38,3 +38,3 @@ // *****************************************************************************

helper.udf.register('udf.lua', function () {
var kgen = keygen.string(helper.namespace, testSet, {prefix: 'test/scan/'})
var kgen = keygen.string(helper.namespace, testSet, { prefix: 'test/scan/', random: false })
var rgen = recgen.record({ i: valgen.integer(), s: valgen.string() })

@@ -41,0 +41,0 @@ var mgen = metagen.constant({ ttl: 300 })

@@ -40,4 +40,3 @@ // *****************************************************************************

function genRecords (ns, set, noRecords, callback) {
var kgen = keygen.string(ns, set, {prefix: 'test/trunc/'})
function genRecords (kgen, noRecords, callback) {
var mgen = metagen.constant({ ttl: 300 })

@@ -68,3 +67,4 @@ var rgen = recgen.constant({ a: 'foo', b: 'bar' })

genRecords(ns, set, noRecords, function () {
var kgen = keygen.string(ns, set, {prefix: 'test/trunc/', random: false})
genRecords(kgen, noRecords, function () {
setTimeout(function () {

@@ -78,5 +78,5 @@ client.truncate(ns, set, 0, function (err) {

})
}, 100)
}, 200)
})
}, 100)
}, 200)
})

@@ -91,7 +91,8 @@ })

genRecords(ns, set, noRecordsBefore, function () {
var kgen = keygen.string(ns, set, {prefix: 'test/trunc/', random: false})
genRecords(kgen, noRecordsBefore, function () {
setTimeout(function () {
var timeNanos = new Date().getTime() * 1000000
setTimeout(function () {
genRecords(ns, set, noRecordsAfter, function () {
genRecords(kgen, noRecordsAfter, function () {
client.truncate(ns, set, timeNanos, function (err) {

@@ -104,9 +105,9 @@ if (err) throw err

})
}, 100)
}, 200)
})
})
}, 100)
}, 100)
}, 200)
}, 200)
})
})
})

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

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