Open username1565 opened 3 years ago
This something with redis, because after google this:
ReplyError: EXECABORT Transaction discarded because of previous errors.
And according this: https://stackoverflow.com/a/54063543
This can also happen due to empty multi command. running
redis-cli monitor
I saw1546789398.881549 [0 the-ip] "multi" 1546789398.881575 [0 the-ip] "exec"
Before executing
multi
, make sure that you have at least 1 command to execute on the transaction.
Somewhere, after try to get status, from redis, redis-monitor
show twice:
1546789398.881549 [0 the-ip] "multi"
1546789398.881575 [0 the-ip] "exec"
1546789398.881549 [0 the-ip] "multi"
1546789398.881575 [0 the-ip] "exec"
and then, api crushed, and restarting again.
Anyone know, how to fix this? I see some functions by keyword multi
, here: https://github.com/dvandal/cryptonote-nodejs-pool/search?p=2&q=multi&type=
I found an error, related with this issue, and found this, at this line:
https://github.com/dvandal/cryptonote-nodejs-pool/blob/f5f82d19bdd2a3d37d91a902cede68278b7ba3c0/lib/api.js#L2101
Some bullshit there, and this value is undefined
.
I just changed this to:
lastResponse: JSON.stringify(error ? error : response) || 'ok' //it's "undefined"!
After this, changes, API have no crushes every time, after some timeout.
This do tryes to write undefined
, into redis-server
, and API got crushes every time
, because of this,
and restarting again and again, and again, and again...
P.S.:
Why this value is undefined, I do not know,
but by adding the line:
console.warn(redisCommands, error, response); //before next line
redisClient.multi(redisCommands).exec();
I see, this undefined
, after try to getStatus from wallet
, while the daemon
have some response, there, and this is not undefined
.
Maybe, need to use some another, different API-calls, for different wallet-API
.
I did try to get status, of wallet, by using wallet-API, and did try to get this, using url http://wallet_API_IP:PORT/status
,
and I see in console of wallet API
, some message, about X-API-KEY does not exists
.
So, maybe, because of this, undefined
-value was been returned there, from wallet-api.
Everytime, by some timeout, API is crushed, and restarted then. In console of server-backend, I see this:
What does this mean?