-
Notifications
You must be signed in to change notification settings - Fork 184
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
storage uuids are not randomized with init #5064
Comments
@michaelstingl @TheOneRing This would become a problem for all existing sync connections for the desktop because all WebDAV Urls will change. |
@TheOneRing I updated the top post |
@micbar could you post the full information of a Space before and after this change from the Graph API? |
All references to a fileid will be broken after a storage uuid change. This affects:
|
My proposal would be:
This proposal assumes that we will do multi-storage oCIS instances before we will do federated oCIS instances. |
@wkloucek what is the gain of value? If we do it now, only a few people need to recreate the desktop sync. If we do nothing now, we would have thousands of storage providers out there which all have the same provider id. This will explode and cause a lot of painful migrations. |
At least I have no numbers. So I don't know how many installations are out there already.
If we find a way to use a random UUID only for new storages, we would have "only a few people" that need a migration later on. And the migration is needed when these instances will be using federation. |
The problem I see with the hardcoded UUID for the storageprovider is that we will get collisions of storage provider ids that exist in multiple ocis deployments. hmmm ... clients will have to deal with that anyway because there might be malicious instances that could reuse the storageid of a resoucre to try and confuse clients to send them data ... the current user storage uuid was handcrafted by me to contain the port number at the end ... to make debugging easier ... but the idea was always to initialize with a unique identifier. while cern is using human readable names I am strongly recommending uuids because we will run into merge scenarios. And for those provider id collisions ... suck big time. Maybe I overthought this. But I have been ther and I don't want to start rolling out ocis deployments with the same fallback uuid everywhere. I would change the uuid now. |
Currently every deployment uses tha same uuid for the users storage ... that is a non starter for a federated deployment.
We have to initialize the Storageid for the users storage (which in fact currently also is our project storage ... so it is already misused, but that is a separate issue) so that it is possible to determine the storageprovider and distinguish an which instance a space is located ...
ocis/services/gateway/pkg/revaconfig/config.go
Line 130 in da1c18a
Breaking Change
All WebDAV urls will change
The providerID is the first part of the ID string in the url. It will change from the existing hardcoded uuid (
1284d238-aa92-42ce-bdc4-0b0000009157
) to a new random uuid.Consequences for Clients
Alternative Solution
The text was updated successfully, but these errors were encountered: