-
Notifications
You must be signed in to change notification settings - Fork 30
feat: Implement redis persistent store and big segment store. #146
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
| registry-url: 'https://registry.npmjs.org' | ||
| # We may want to consider moving this build to a docker container instead of installing it | ||
| # in the image. | ||
| - run: | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The test suite needs a redis instance.
| !.yarn/versions | ||
| yarn-error.log | ||
| .DS_Store | ||
| .vscode |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file is in another PR, and will not be in the diff after it is merged and I update the base.
| "scripts": { | ||
| "clean": "yarn workspaces foreach -pt run clean", | ||
| "build": "yarn workspaces foreach -pt run build", | ||
| "build": "yarn workspaces foreach -p --topological-dev run build", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file is in another PR, and will not be in the diff after it is merged and I update the base.
| @@ -1,6 +1,15 @@ | |||
| import ItemDescriptor from './ItemDescriptor'; | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file is in another PR, and will not be in the diff after it is merged and I update the base.
|
|
||
| public readonly diagnosticRecordingInterval: number; | ||
|
|
||
| // public readonly featureStore: LDFeatureStore; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file is in another PR, and will not be in the diff after it is merged and I update the base.
|
Fixed. |
| close() { | ||
| if (this.owned) { | ||
| this.client.quit().catch(() => { | ||
| // Not any action that can be taken for an error on quit. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: maybe a debug log is useful here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll add one. Debug level is good. ioredis basically seems to produce nonsense errors when you quit it.
Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The second error happens whenever something cannot build. Being as you killed the build, some component didn't build so you got that error. As for why it is haging that I cannot say. Mine does not. (Though it takes about 28 seconds to build everything.) |
…/js-server-sdk-private into rlamb/implement-redis-store


This does not add the package to the release configuration yet.
The implementation contains an architectural overview with diagram, which should help with reviewing the code: https://github.com/launchdarkly/js-core/blob/rlamb/implement-redis-store/packages/store/node-server-sdk-redis/architecture.md
This implements both the redis persistent store as well as the redis big segment store.