-
Notifications
You must be signed in to change notification settings - Fork 22
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
User data migration #1207
Comments
We should also align all export with #1018 |
Since we have to do some work on the backend I wonder if it would be better if instead we implement just On the w3up side we can implement |
Yet another option would be to implement |
This is mostly true if we still use I think this needs more details on requirements and some close work with the bucket migration. For instance, this may be a good reason to punt on changing the bucket until migration is done |
I think we do not have backup URL in all the places. This was even problematic for the migration, but probably once we migrated all CARs to R2, we will have a mapping of rootCid to CARs that we can rely on |
Would be great to get that info as a dump to users. And note that this kind of metadata should now be stored at the client level |
Finally, I think we should definitely create a backend migration tool. (May be worth to check R2 migration tool from S3). We could then monitor progress and keep things stable instead of go through spikes We could just queue things and keep users updated. This queue could even send things to Filecoin as well for renewals (given there will be no direct trigger) - depends on some cross team decisions first |
We should provide some ability for users to migrate data from old system into a new one. This implies moving store and upload records. All the stored CARs should already be in the system, so users will not need to download and reupload anything, store/add would just succeed right away.
We currently store records for each upload as CAR regardless of what user sent us see
https://github.com/web3-storage/web3.storage/blob/main/packages/api/src/upload.js#L51-L53
https://github.com/web3-storage/web3.storage/blob/main/packages/api/src/car.js#L160-L173
We do not store CAR cid in the DB, but we encode it in the backupURLs and should be able to derive from it.
Unfortunately our API does not return backupURLs either so it would be impossible to do everything on the client side. We could however amend old API with additional
shards
field and return CAR cids. If we do that we would be able to then have a client script that fetches all user uploads using JWT token and derivesstore/add
andupload/add
invocations from it.Note that in the old system uploads had names but we don't have those in the new system, not yet anyway. However we could stick names into invocation facts (like we do with space names) in order to retain this information in case we'l need it in the future.
The text was updated successfully, but these errors were encountered: