balderdashy / balderdashy/sails
WARNING: Something seems to be wrong with this function. It is trying to signal that it has finished AGAIN, after already resolving/rejecting once. (silently ignoring this...)
- Dominant language
- JavaScript
- Stars
- 22.8k
- Forks
- 1.9k
- PR merge metrics
- No merged PRs in 30d
Description
**Sails version**:1.0.2
**Node version**:8.9.4
**NPM version**:5.7.1
**DB adapter name**: sails-mongo
**DB adapter version**: 1.0.1
**Operating system**:ubuntu
its heppen when i tried to user.find query
my code is
```
signin: async(req, res)=>{
try{
if(!req.body.email || !req.body.password) {
res.json({status: false, message: req.i18n.__('UserEmaPassBalTex')});
} else if(sails.validator.isEmpty(req.body.email)) {
res.json({status: false, message: req.i18n.__('regiPlfiEa')});
} else {
User.findOne({email: req.body.email}).exec((err, user) => {
if(err) {
return res.json({status: false, message: req.i18n.__('SerErrTex')});
} else if (!user) {
sails.log.info(err,user,'dddddddddd')
return res.json({
status : false,
message : res.__('BEToster2'),
});
} else if(user.permission.active === false){
return res.json({status:false,
banned:true,
message :res.__('BETORT')
});
} else if (user.status) {
let password_hash = sha256.x2(req.body.password);
let password_final = cryptr.encrypt(password_hash);
if (user.password !== password_final){
return res.json({
status : false,
message : res.__('BEToster3'),
});
} else if(user.twoFactor.status){
req.currentUser = user;
return res.json({
status : false,
twofStatus : true,
token : jwToken.sign({ id: user._id, role:user.role }, sails.config.JWTTOKENSECRET, { expiresIn: 86400 // expires in 24 hours
}),
message : res.__('GoogleTx'),
});
} else if(user.email === sails.config.CLINTEMAIL){
req.currentUser = user;
return res.json({
admin : true,
status : true,
message : res.__('Login1Tx'),
token : jwToken.sign({ id: user._id, role:user.role }, sails.config.JWTTOKENSECRET, {
expiresIn: 86400 // expires in 24 hours
}),
});
} else{
req.currentUser = user;
return res.json({
status : true,
message : res.__('Login1Tx'),
token : jwToken.sign({ id: user._id, role:user.role }, sails.config.JWTTOKENSECRET, {expiresIn: 86400 // expires in 24 hours
}),
});
}
} else{
return res.json({
status : false,
userStatus: false,
message : res.__('BEToster4'),
});
}
});
}
}catch(e){
sails.log.error('e');
return res.json({status: false, message:res.__('InterSerErrTex')});
}
},
````
WARNING: Something seems to be wrong with this function.
It is trying to signal that it has finished AGAIN, after
already resolving/rejecting once.
(silently ignoring this...)
>
>
To assist you in hunting this down, here is a stack trace:
```
at /home/lakshman/Documents/soarFullStack/server/node_modules/sails-mongo/lib/private/do-with-connection.js:242:28
at /home/lakshman/Documents/soarFullStack/server/node_modules/sails-mongo/lib/private/do-with-connection.js:123:18
at Object.success (/home/lakshman/Documents/soarFullStack/server/node_modules/sails-mongo/lib/private/build-std-adapter-method.js:61:47)
at /home/lakshman/Documents/soarFullStack/server/node_modules/machine/lib/private/help-build-machine.js:1517:30
at proceedToFinalAfterExecLC (/home/lakshman/Documents/soarFullStack/server/node_modules/parley/lib/private/Deferred.js:1151:14)
at proceedToInterceptsAndChecks (/home/lakshman/Documents/soarFullStack/server/node_modules/parley/lib/private/Deferred.js:909:12)
at proceedToAfterExecSpinlocks (/home/lakshman/Documents/soarFullStack/server/node_modules/parley/lib/private/Deferred.js:841:10)
at /home/lakshman/Documents/soarFullStack/server/node_modules/parley/lib/private/Deferred.js:303:7
at /home/lakshman/Documents/soarFullStack/server/node_modules/machine/lib/private/help-build-machine.js:954:24
at Function.handlerCbs.success (/home/lakshman/Documents/soarFullStack/server/node_modules/machine/lib/private/help-build-machine.js:814:26)
at findCb (/home/lakshman/Documents/soarFullStack/server/node_modules/sails-mongo/lib/private/machines/find-records.js:138:20)
at handleCallback (/home/lakshman/Documents/soarFullStack/server/node_modules/mongodb/lib/utils.js:120:56)
at /home/lakshman/Documents/soarFullStack/server/node_modules/mongodb/lib/cursor.js:860:16
at handleCallback (/home/lakshman/Documents/soarFullStack/server/node_modules/mongodb-core/lib/cursor.js:171:5)
at setCursorDeadAndNotified (/home/lakshman/Documents/soarFullStack/server/node_modules/mongodb-core/lib/cursor.js:505:3)
at nextFunction (/home/lakshman/Documents/soarFullStack/server/node_modules/mongodb-core/lib/cursor.js:651:7)
at Cursor.next [as _next] (/home/lakshman/Documents/soarFullStack/server/node_modules/mongodb-core/lib/cursor.js:692:3)
at fetchDocs (/home/lakshman/Documents/soarFullStack/server/node_modules/mongodb/lib/cursor.js:856:10)
at /home/lakshman/Documents/soarFullStack/server/node_modules/mongodb/lib/cursor.js:879:7
at handleCallback (/home/lakshman/Documents/soarFullStack/server/node_modules/mongodb-core/lib/cursor.js:171:5)
at nextFunction (/home/lakshman/Documents/soarFullStack/server/node_modules/mongodb-core/lib/cursor.js:682:5)
at /home/lakshman/Documents/soarFullStack/server/node_modules/mongodb-core/lib/cursor.js:593:7
at queryCallback (/home/lakshman/Documents/soarFullStack/server/node_modules/mongodb-core/lib/cursor.js:232:18)
at /home/lakshman/Documents/soarFullStack/server/node_modules/mongodb-core/lib/connection/pool.js:461:18
at _combinedTickCallback (internal/process/next_tick.js:131:7)
at process._tickCallback (internal/process/next_tick.js:180:9)
```
Contributor guide
Research direction
Start with the signin handler's User.findOne(...).exec callback and reproduce the warning using the reported Sails 1.0.2, Node 8.9.4, and sails-mongo 1.0.1 versions. Then trace the reported sails-mongo/lib/private/do-with-connection.js and build-std-adapter-method.js locations to determine whether the duplicate completion is reproducible; done means the cause and a verified fix or workaround are documented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, mongodb, node.js
- Domain
- backend, database
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100