Skip to content
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

Please consider to upgrade FlashStore from v0.7 to v0.14 #124

Closed
huan opened this issue May 12, 2019 · 9 comments
Closed

Please consider to upgrade FlashStore from v0.7 to v0.14 #124

huan opened this issue May 12, 2019 · 9 comments

Comments

@huan
Copy link
Member

huan commented May 12, 2019

The FlashStore v0.7 is using nosql-leveldb which can fix the segfault from leveldown.

However, the v0.7 has a dependencies from my test environment zixia/levelup. See:
https://github.com/huan/flash-store/blob/7c776572ba4ce55840012bb292ce2c520fadf519/package.json#L41

Recently, FlashStore upgrade to using the RocksDB from facebook (See huan/flash-store#34), which I hope could solve the segfault problem too.

So I'd like to suggest that we merge #121 to start using the latest version of FlashStore, and then we can monitor if it will be good for us.

@windmemory
Copy link
Member

Sounds great, however, the backend server is unstable recently, let's postpone this change util it get fully fixed.

@windmemory
Copy link
Member

Will upgrade this in v0.3.x

@windmemory
Copy link
Member

Merged, please check.

@huan
Copy link
Member Author

huan commented May 13, 2019

Great. Let's monitor is there's any segmentation fault with v0.3

@windmemory windmemory removed their assignment May 13, 2019
@windmemory
Copy link
Member

windmemory commented May 13, 2019

I can not start wechaty-puppet-padpro after upgrade to v0.14, so rollback the upgrade for now.

Here is the issue that I created related to this issue:
huan/flash-store#41

Will upgrade to v0.14 after we get the issue resolved.

@huan
Copy link
Member Author

huan commented May 13, 2019

I'd like to suggest you delete all the old db files before you start to use the new code.

Because I believe the RocksDB and LevelDB might not compatible between binary files.

@windmemory
Copy link
Member

Okay, delete the old db files works for me.

Is there a way to auto detect the file existence and incompatible then auto delete these files? So the upgrade will be much more smoother. Is this technically possible?

Since this is upgrading from old version to new, if this requires manually delete the db files, it requires too much work from the users.

@huan
Copy link
Member Author

huan commented May 13, 2019

I believe it will have some way to detect, however, I have no idea right now.

Or you should consider keeping using the LevelDB version instead to upgrade to the RocksDB version. If you want to do so, I'll publish a new version of FlashStore with the official LevelDB version for you, for replacing the developing version v0.7.

@windmemory
Copy link
Member

windmemory commented May 14, 2019

Will you consider adding a parameter or some environment variable that will control the underlying data store for flash-store? Thus if I want to use the new one, I can pass in a parameter or setup a env var, and without any parameters, the flash-store will keep using the levelDB. In this way, the upgrade will be much more smoother. And we can tell developers to upgrade to the new version during a period of time, and deprecate the old one some day in the future.

What do you think about this?

zhaoic pushed a commit to zhaoic/wechaty-puppet-padpro that referenced this issue Jul 17, 2019
windmemory pushed a commit that referenced this issue Aug 22, 2019
* Upgrade flash-store to v0.15.7 (#145)

* 0.3.19

* Remove unnecessary subdir for new flash-store (#124)

* flash-store v0.16.3

* 0.3.20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants