Observations and thoughts on the unified sharing db schema: ## Overall - [ ] https://github.com/nextcloud/server/pull/65512 Probably makes sense to create a mapping for `instance`s. It's not as bad as the class names where, but there is still there is 1 per share + 2 per recipient and they are often included in indices. - [ ] https://github.com/nextcloud/server/pull/65512 Instance length should be 255, not 128, as 255 is the maximum length of a domain name. ## sharing_share - [x] https://github.com/nextcloud/server/pull/65509 can state be an int instead of a string? - [ ] https://github.com/nextcloud/server/pull/65512 add index by owner ## sharing_share_properties - [ ] maybe switch to `text` or `blob` for `propety_value` ## sharing_share_recipeints - [ ] https://github.com/nextcloud/server/pull/65512 recipient instance is missing from unique index ## sharing_share_sources - [ ] can we get away with an integer `source_value`, having a `varchar(255)` in the pkey isn't great - [ ] add index by `source_class_id`+`source_value`, (same `varchar` concern) ## sharing_share_user_status - [ ] no instance for the user? Maybe reference `sharing_share_recipient.id` instead of user? - [x] https://github.com/nextcloud/server/pull/65509 can status be an int?
Activity
provokateurin commentedon Oct 5, 2026
The instance isn't just the domain, it can be a complete URL. 255 seems like a reasonable limit for that though.
icewind1991 commentedon Oct 14, 2026
#65509 for changing the state/status enums to ints