Node with Opa app crashes when trying to connect to unavailable CouchDB - couchdb

I am working on Opa app using CouchDB as a database backend. When fetching a document with API function CouchDd.Document.get (API doc) and the DB server is down, my app crashed:
/opt/mlstate/lib/opa/stdlib/server.opp/serverNodeJsPackage.js:169
,(global.hasOwnProperty("toString") && global.toString || undefined)(e));}req.
^
TypeError: undefined is not a function
at ClientRequest.on_error (/opt/mlstate/lib/opa/stdlib/server.opp/serverNodeJsPackage.js:169:489)
at ClientRequest.EventEmitter.emit (events.js:88:17)
at Socket.socketErrorListener (http.js:1320:9)
at Socket.EventEmitter.emit (events.js:88:17)
at Socket._destroy.self.errorEmitted (net.js:329:14)
at process.startup.processNextTick.process._tickCallback (node.js:244:9)
and returns to shell prompt. I am running the app with ./myapp --nodb, because I do not use the build-in support for the MongoDB.
The CouchDb.Document.get function returns either {success: {FormatedJson: ...}} or {failure}. I expected that parsing the result for the {failure} is enough to catch all the network connection problems. What else should I do?
I am using Opa framework version 1.0.5 on OSX (11.4.0 Darwin) from the standard package on the Opa website, Node.js v0.8.3 and CouchDB 1.2.0.

This was a bug in 1.0.5, but it's been fixed already. You can get the sources for the fixed version here, but an official package hasn't been released yet.

Related

**ERROR! Callback called multiple times** JHipster version 7.3.1 (latest) having Error in Node

I have used other versions of JHipster but that one in my mac is not working fine, I am trying to generate a simple gateway (no entities yet), and after executing:
$jhipster
Filling the application metadata, I just got:
ERROR! Callback called multiple times
Error [ERR_MULTIPLE_CALLBACK]: Callback called multiple times
at NodeError (node:internal/errors:371:5)
at onFinish (node:internal/streams/writable:667:37)
at processTicksAndRejections (node:internal/process/task_queues:82:21)
at runNextTicks (node:internal/process/task_queues:65:3)
at listOnTimeout (node:internal/timers:526:9)
at processTimers (node:internal/timers:500:7) {
code: 'ERR_MULTIPLE_CALLBACK'
So, according to #MattRaible and #GaelMariou, when having the ERROR! Callback called multiple times when generating JHipter applications or entities, you should verify the Node JS version. That version is provided in pom.xml or build.gradle, however, I never found a reference of node version in pom.xml (I use maven).
It is not clear where to get the exact version, nevertheless there is this article that states the same problem using node.js version bigger than 14: https://github.com/jhipster/generator-jhipster/issues/16744.
Meaning you should keep your node.js in version 14 until they solve that issue. I changed to v14.18.1, and now it is working sharp.

Hello Folks: I am having problem in starting sails app in nodejs. can anyone put forth their insights on that?

I tried running the latest version of node and postgresql, but was having problem i deprecated node to 13.12.0 and sails-postgresql to 1.0.2 as mentioned in one of the blog. still the error is coming. Stack trace is as below:
sails lift
info: Starting app...
(node:10460) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency
(Use node --trace-warnings ... to show where the warning was created)
info: Initializing apianalytics hook... (requests to monitored routes will be logged!)
info: ·• Auto-migrating... (alter)
info: Hold tight, this could take a moment.
error:
error: Error: Sails is taking too long to load.
Troubleshooting tips:
-• Were you still reading/responding to an interactive prompt?
(Whoops, sorry! Please lift again and try to respond a bit more quickly.)
-• Do you have a lot of stuff in assets/? Grunt might still be running.
(Try increasing the hook timeout. Currently it is 40000.
e.g. sails lift --hookTimeout=80000)
-• Is blueprints a custom or 3rd party hook?
(If initialize() is using a callback, make sure it's being called.)
at Timeout.tooLong [as _onTimeout] (C:\Users\dearm\OneDrive\Desktop\my work\sails-logrocket\myapp\node_modules\sails\lib\app\private\loadHooks.js:191:21)
at listOnTimeout (internal/timers.js:554:17)
at processTimers (internal/timers.js:497:7)
error: Could not load Sails app.
error:
error: Tips:
error: • First, take a look at the error message above.
error: • Make sure you've installed dependencies with npm install.
error: • Check that this app was built for a compatible version of Sails.
error: • Have a question or need help? (http://sailsjs.com/support)
complete code is here https://github.com/mannawar/sails_app
Try using Node version 10 and sails-postgresql version 2.0.0

Sailsjs: Server crash after using create blueprint with mongodb

I configured the connections.js file in config. I used shortcut route to check whether data is getting stored in the database.
I put the url localhost:1337/test/create?name=hello
It creates an entry in the database but server crashes with this log
process.nextTick(function() { throw err; });
^
TypeError: Right-hand side of 'instanceof' is not callable
at _hasBinary (/usr/local/lib/node_modules/sails/node_modules/has-binary/index.js:31:30)
at hasBinary (/usr/local/lib/node_modules/sails/node_modules/has-binary/index.js:58:10)
at Namespace.emit (/usr/local/lib/node_modules/sails/node_modules/socket.io/lib/namespace.js:214:9)
at Object.broadcastToRoom [as broadcast] (/usr/local/lib/node_modules/sails/node_modules/sails-hook-sockets/lib/sails.sockets/broadcast-to-room.js:74:13)
at child.broadcast (/usr/local/lib/node_modules/sails/lib/hooks/pubsub/index.js:139:23)
at child.publishCreateSingle (/usr/local/lib/node_modules/sails/lib/hooks/pubsub/index.js:1218:14)
at /usr/local/lib/node_modules/sails/lib/hooks/pubsub/index.js:1069:16
at arrayEach (/usr/local/lib/node_modules/sails/node_modules/#sailshq/lodash/lib/index.js:1439:13)
at Function.<anonymous> (/usr/local/lib/node_modules/sails/node_modules/#sailshq/lodash/lib/index.js:3500:13)
at child.publishCreate (/usr/local/lib/node_modules/sails/lib/hooks/pubsub/index.js:1068:11)
at child.wrapper [as publishCreate] (/usr/local/lib/node_modules/sails/node_modules/#sailshq/lodash/lib/index.js:3250:19)
at created (/usr/local/lib/node_modules/sails/lib/hooks/blueprints/actions/create.js:48:19)
at wrapper (/usr/local/lib/node_modules/sails/node_modules/lodash/index.js:3592:19)
at applyInOriginalCtx (/usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/utils/normalize.js:421:80)
at wrappedCallback (/usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/utils/normalize.js:324:18)
at success (/usr/local/lib/node_modules/sails/node_modules/waterline/node_modules/switchback/lib/normalize.js:33:31)
at _switch (/usr/local/lib/node_modules/sails/node_modules/waterline/node_modules/switchback/lib/factory.js:58:28)
at /usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/query/dql/create.js:248:9
at /usr/local/lib/node_modules/sails/node_modules/waterline/node_modules/async/lib/async.js:52:16
at /usr/local/lib/node_modules/sails/node_modules/waterline/node_modules/async/lib/async.js:269:32
at /usr/local/lib/node_modules/sails/node_modules/waterline/node_modules/async/lib/async.js:44:16
at child.<anonymous> (/usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/utils/schema.js:152:44)
Update:20-Dec-2017..
This is what i had gotten when in installed the >sails-mongo adapter...What exactly is the version 2.1.20 of..?
Faizaans-MacBook-Pro:foobar faiz$ npm install sails-mongo --save
npm WARN deprecated mongodb#2.1.20: Please upgrade to 2.2.19 or higher
+ sails-mongo#0.12.2
added 14 packages in 7.967s
I couldn't figure out the exact issue here. I tried to connect my project to mysql and the same issue came up. The problem got solved when I created a new project and tried connecting it to the database.

How can I update Node.JS through JXCore?

I'm getting this error when trying to use the Steam API:
var cryptedSessKey = require('crypto').publicEncrypt(fs.readFileSync(__dirna
^
TypeError: Object # has no method 'publicEncrypt'
at SteamClient.handlers.(anonymous function) (/usr/local/psa/var/modules/jxcore-support/native_modules/node_modules/steam/lib/steam_client.js:150:42)
at SteamClient.netMsgReceived (/usr/local/psa/var/modules/jxcore-support/native_modules/node_modules/steam/lib/steam_client.js:106:26)
at Connection.emit (events.js:82:15)
at Connection._readPacket (/usr/local/psa/var/modules/jxcore-support/native_modules/node_modules/steam/lib/connection.js:50:8)
at Connection.emit (events.js:79:15)
at emitReadable (_stream_readable.js:383:10)
at emitReadable (_stream_readable.js:379:5)
at readableAddChunk (_stream_readable.js:143:31)
at Connection.Readable.push (_stream_readable.js:107:10)
at TCP.onread (net.js:489:18)
Spawner error: Application exited by itself with code: 8
Spawner info: Subscribing is delayed by 2000 ms.
Spawner info: Subscribed successfully: Successfully subscribed process 25525 to the monitor.
The fix is to apparently upgrade my node.js to version v0.12. As stated here: https://github.com/seishun/node-steam/issues/121
How can I do this? I'm using JXCore extension for Plesk.
I've tried SSHing in and running update commands but it doesn't seem to recognise node. Do I have to browse to a certain directory? I can't even run node --version because it's all within JXCore (I assume).
I have the lastest version of JXCore (Installed v Beta-0.3.0.2).
I'm assuming I'm just being an idiot somehow but I'm still new to node.js.
Can anyone help me?
Thank you
Jack
I asked the same question on their Github and this was their response:
JXcore v 0.3 is based on Node 0.10. AFAIK that module has node 0.10
compatible version too. You should use that. We are planning to bring
new crypto API from 0.12 soon.
Therefore, for now, you can't update it.

RabbitMQ + Node.JS Connection issue, frame size too large?

I have been playing around with RabbitMQ with apache + php and wanted to see how it compared to Node.JS in performance.
Using the latest node.js (0.4.12) and amqp module (npm install amqp), i get a unknown exception connecting which it seems like it is the frame size causing error (line 181 in amqp.js), removing the error from the code just throws another related to allocating too large of an array size.
the RabbitMQ server is is just a "apt-get install rabbitmq-server" with default configuration. This works in PHP just fine.
Starting ... AMQP URL: amqp://localhost
events.js:47
throw new Error("Uncaught, unspecified 'error' event.");
^
Error: Uncaught, unspecified 'error' event.
at Connection.emit (events.js:47:15)
at AMQPParser.onError (/nodeJS_stuff/node_modules/amqp/amqp.js:839:12)
at AMQPParser.throwError (/nodeJS_stuff/node_modules/amqp/amqp.js:145:25)
at AMQPParser.execute (/nodeJS_stuff/node_modules/amqp/amqp.js:181:18)
at Connection.<anonymous> (/nodeJS_stuff/node_modules/amqp/amqp.js:851:12)
at Connection.emit (events.js:64:17)
at Connection._onReadable (net.js:672:14)
at IOWatcher.onReadable [as callback] (net.js:177:10)
Any one ever run into this? i have tried a couple examples and i always get this. i am running this on EC2 as well, if that helps any.
I just saw this problem today. It seemed to me like a mismatch between the versions of rabbitmq and amqp. I was testing two versions of node-amqp (0.0.2 and 0.1.0) and rabbitmq (1.7.2 and 2.3.1). I found out that node-amqp 0.0.2 works with both versions of rabbitmq, but the newer node-amqp (0.1.0, actually as of version 0.0.6) doesn't work with the older rabbitmq. So try rolling back your node-amqp to an older version and see if it works.
It is definitely a version mismatch between amqp and the installed version of RabbitMQ. The problem is most probably due to rabbitmq-server being too old. I had the exactly same problem on my Debian machine and the RabbitMQ installation guide pointed me to the right direction.
Uninstall your current version of rabbitmq-server and download the most recent one from the RabbitMQ website.

Resources