-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
delayUntilReady error handling bug #1460
Labels
Comments
github-actions bot
pushed a commit
that referenced
this issue
Mar 19, 2022
# [5.0.0-beta.3](v5.0.0-beta.2...v5.0.0-beta.3) (2022-03-19) ### Bug Fixes * pipeline fails when cluster is not ready ([af60bb0](af60bb0)), closes [#1460](#1460)
🎉 This issue has been resolved in version 5.0.0-beta.3 🎉 The release is available on: Your semantic-release bot 📦🚀 |
github-actions bot
pushed a commit
that referenced
this issue
Mar 26, 2022
# [5.0.0](v4.28.5...v5.0.0) (2022-03-26) ### Bug Fixes * add @ioredis/interface-generator to dev deps ([aa3b3e9](aa3b3e9)) * add missing declaration for callBuffer ([08c9072](08c9072)) * add the missing typing for Redis#call() ([747dd30](747dd30)) * better support for CJS importing ([687d3eb](687d3eb)) * disable slotsRefreshInterval by default ([370fa62](370fa62)) * Fix the NOSCRIPT behavior when using pipelines ([bc1b168](bc1b168)) * improve typing for auto pipelining ([4e8c567](4e8c567)) * improve typing for pipeline ([d18f3fe](d18f3fe)) * keyPrefix should work with Buffer ([6942cec](6942cec)), closes [#1486](#1486) * make fields private when possible ([d5c2f20](d5c2f20)) * parameter declaration of Redis#duplicate ([a29d9c4](a29d9c4)) * pipeline fails when cluster is not ready ([af60bb0](af60bb0)), closes [#1460](#1460) * remove dropBufferSupport option ([04e68ac](04e68ac)) * remove unused Command#isCustomCommand ([46ade6b](46ade6b)) * rename interfaces by dropping prefix I ([d1d9dba](d1d9dba)) * Reset loaded script hashes to force a reload of scripts after reconnect of redis ([60c2af9](60c2af9)) * support passing keyPrefix via redisOptions ([6b0dc1e](6b0dc1e)) ### Features * add [@SInCE](https://github.com/since) to method comments ([13eff8e](13eff8e)) * add declarations for methods ([1e10c95](1e10c95)) * add tests for cluster ([1eba58b](1eba58b)) * always parse username passed via URI ([c6f41f6](c6f41f6)) * drop support of Node.js 10 ([f9a5071](f9a5071)) * drop support of third-party Promise libraries ([2001ec6](2001ec6)) * expose official declarations ([7a436b1](7a436b1)) * improve typings for cluster ([06782e6](06782e6)) * improve typings for pipeline ([334242b](334242b)) * improve typings for smismember ([487c3a0](487c3a0)) * improve typings for transformers ([94c1e24](94c1e24)) * improve typings for xread ([96cc335](96cc335)) * Pipeline-based script loading ([8df6ee2](8df6ee2)) * prepare v5 stable release ([#1538](#1538)) ([fe32ce7](fe32ce7)) * Refactor code with modern settings ([a8ffa80](a8ffa80)) * skip ready check on NOPERM error ([b530a0b](b530a0b)), closes [#1293](#1293) * support commands added in Redis v7 ([53ca412](53ca412)) * support defining custom commands via constructor options ([f293b97](f293b97)) * support Redis Functions introduced in Redis 7.0 ([32eb381](32eb381)) ### BREAKING CHANGES * `slotsRefreshInterval` is disabled by default, previously, the default value was 5000. * `allowUsernameInURI` is removed and ioredis will always use the username passed via URI. Previously, the `username` part in `new Redis("redis://username:authpassword@127.0.0.1:6380/4")` was ignored unless `allowUsernameInURI` is specified: `new Redis("redis://username:authpassword@127.0.0.1:6380/4?allowUsernameInURI=true")`. Now, if you don't want to send username to Redis, just leave the username part empty: `new Redis("redis://:authpassword@127.0.0.1:6380/4")` * `Redis#serverInfo` is removed. This field is never documented so you very likely have never used it. * Support for third-party Promise libraries is dropped. Related methods (`exports.Promise = require('bluebird')`) are kept but they don't take any effects. The native Promise will always be used. * We now require Node.js v10.12.0 or newer. * We now only work with Redis v3.0.0 or newer. * `Redis` can't be called as a function anymore as it's now a class. Please change `Redis()` to `new Redis()`. Note that `Redis()` was already deprecated in the previous version.
🎉 This issue has been resolved in version 5.0.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
janus-dev87
added a commit
to janus-dev87/ioredis-work
that referenced
this issue
Mar 1, 2024
# [5.0.0-beta.3](redis/ioredis@v5.0.0-beta.2...v5.0.0-beta.3) (2022-03-19) ### Bug Fixes * pipeline fails when cluster is not ready ([af60bb0](redis/ioredis@af60bb0)), closes [#1460](redis/ioredis#1460)
janus-dev87
added a commit
to janus-dev87/ioredis-work
that referenced
this issue
Mar 1, 2024
# [5.0.0](redis/ioredis@v4.28.5...v5.0.0) (2022-03-26) ### Bug Fixes * add @ioredis/interface-generator to dev deps ([aa3b3e9](redis/ioredis@aa3b3e9)) * add missing declaration for callBuffer ([08c9072](redis/ioredis@08c9072)) * add the missing typing for Redis#call() ([747dd30](redis/ioredis@747dd30)) * better support for CJS importing ([687d3eb](redis/ioredis@687d3eb)) * disable slotsRefreshInterval by default ([370fa62](redis/ioredis@370fa62)) * Fix the NOSCRIPT behavior when using pipelines ([bc1b168](redis/ioredis@bc1b168)) * improve typing for auto pipelining ([4e8c567](redis/ioredis@4e8c567)) * improve typing for pipeline ([d18f3fe](redis/ioredis@d18f3fe)) * keyPrefix should work with Buffer ([6942cec](redis/ioredis@6942cec)), closes [#1486](redis/ioredis#1486) * make fields private when possible ([d5c2f20](redis/ioredis@d5c2f20)) * parameter declaration of Redis#duplicate ([a29d9c4](redis/ioredis@a29d9c4)) * pipeline fails when cluster is not ready ([af60bb0](redis/ioredis@af60bb0)), closes [#1460](redis/ioredis#1460) * remove dropBufferSupport option ([04e68ac](redis/ioredis@04e68ac)) * remove unused Command#isCustomCommand ([46ade6b](redis/ioredis@46ade6b)) * rename interfaces by dropping prefix I ([d1d9dba](redis/ioredis@d1d9dba)) * Reset loaded script hashes to force a reload of scripts after reconnect of redis ([60c2af9](redis/ioredis@60c2af9)) * support passing keyPrefix via redisOptions ([6b0dc1e](redis/ioredis@6b0dc1e)) ### Features * add [@SInCE](https://github.com/since) to method comments ([13eff8e](redis/ioredis@13eff8e)) * add declarations for methods ([1e10c95](redis/ioredis@1e10c95)) * add tests for cluster ([1eba58b](redis/ioredis@1eba58b)) * always parse username passed via URI ([c6f41f6](redis/ioredis@c6f41f6)) * drop support of Node.js 10 ([f9a5071](redis/ioredis@f9a5071)) * drop support of third-party Promise libraries ([2001ec6](redis/ioredis@2001ec6)) * expose official declarations ([7a436b1](redis/ioredis@7a436b1)) * improve typings for cluster ([06782e6](redis/ioredis@06782e6)) * improve typings for pipeline ([334242b](redis/ioredis@334242b)) * improve typings for smismember ([487c3a0](redis/ioredis@487c3a0)) * improve typings for transformers ([94c1e24](redis/ioredis@94c1e24)) * improve typings for xread ([96cc335](redis/ioredis@96cc335)) * Pipeline-based script loading ([8df6ee2](redis/ioredis@8df6ee2)) * prepare v5 stable release ([#1538](redis/ioredis#1538)) ([fe32ce7](redis/ioredis@fe32ce7)) * Refactor code with modern settings ([a8ffa80](redis/ioredis@a8ffa80)) * skip ready check on NOPERM error ([b530a0b](redis/ioredis@b530a0b)), closes [#1293](redis/ioredis#1293) * support commands added in Redis v7 ([53ca412](redis/ioredis@53ca412)) * support defining custom commands via constructor options ([f293b97](redis/ioredis@f293b97)) * support Redis Functions introduced in Redis 7.0 ([32eb381](redis/ioredis@32eb381)) ### BREAKING CHANGES * `slotsRefreshInterval` is disabled by default, previously, the default value was 5000. * `allowUsernameInURI` is removed and ioredis will always use the username passed via URI. Previously, the `username` part in `new Redis("redis://username:authpassword@127.0.0.1:6380/4")` was ignored unless `allowUsernameInURI` is specified: `new Redis("redis://username:authpassword@127.0.0.1:6380/4?allowUsernameInURI=true")`. Now, if you don't want to send username to Redis, just leave the username part empty: `new Redis("redis://:authpassword@127.0.0.1:6380/4")` * `Redis#serverInfo` is removed. This field is never documented so you very likely have never used it. * Support for third-party Promise libraries is dropped. Related methods (`exports.Promise = require('bluebird')`) are kept but they don't take any effects. The native Promise will always be used. * We now require Node.js v10.12.0 or newer. * We now only work with Redis v3.0.0 or newer. * `Redis` can't be called as a function anymore as it's now a class. Please change `Redis()` to `new Redis()`. Note that `Redis()` was already deprecated in the previous version.
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
when cluster connection is not ready, async call to pipeline.exec throws "callback is not a function" from below code.
built/pipeline.js line 221
this.redis.delayUntilReady((err) => {
if (err) {
callback(err); -> thrown from here, when using promise, callback is undefined
return;
}
this.exec(callback);
});
built/autoPipelining.js built/transaction.js both rejects when delayUntilReady fails
The text was updated successfully, but these errors were encountered: