To unsubscribe from this group and stop receiving emails from it, send an email to nodejs-driver-u...@lists.datastax.com.
var Config = require('config');var logger = require('./logger');var Cassandra = require('cassandra-driver');
var cassandraClient = new Cassandra.Client( { 'contactPoints': Config.get('Cassandra.host'), 'socketOptions': { connectTimeOut: 5000 }, 'keyspace' : Config.get('Cassandra.keyspace') });
cassandraClient.on('log', function (level, className, message) { if (level != 'verbose') { logger.log(level, message); }});
module.exports = cassandraClient;
var cassandraClient = require('../cassandra-client');var Promise = require('bluebird');var query = 'SELECT * FROM user WHERE user_id=?';
var getUser = function (userId) { return new Promise(function (resolve, reject) { cassandraClient.execute(query, [userId], {prepare: true}, function (err, result) { if (err) { reject(err); } resolve(result); }); });};
getUser('user1234') .then(function (res) { console.log(res); //never called }) .catch(function (err) { console.error(err); //never called });
if (err) {//exit the functionreturn reject(err);}resolve(result);
var execute = Promise.promisify(client.execute, client);execute(query, params, { prepare: true }).then(...)
.then(...);
To unsubscribe from this group and stop receiving emails from it, send an email to nodejs-driver-u...@lists.datastax.com.
Ok, but in my opinion server uncaught exception should not affecting cassandra driver connection.
I am not sure if the exception happened outside the quey callback will cause same problem.
var Promise = require('bluebird');
var cassandraClient = require('cassandraClient');
new Promise(function(resolve, reject)) { cassandraClient.execute('SELECT * FROM user WHERE user_id=?', ['user-1'], {prepare:true}, function(err, result)) { if(err) { console.error(err); reject(err);
return; } resolve(result); });}) .then(function(result)) { //process logic + result here //any error goes to catch below }) .catch(function(err)) { callback(err); });