-
Notifications
You must be signed in to change notification settings - Fork 6
Do not persist all fabrics as a single TLV #27
Copy link
Copy link
Open
Description
Currently, all fabrics are persisted in the KvBlobStore by first converting them to one large TLV list and then saving the bytes' representation of this list under a single key - fabrics.
The problems with that:
- (High Prio) - some
KvBlobStoreimplementations (notably, thesequential_mapone in downstreamrs-matter-embassy) have a hard limit on the size of the value being persisted. Forsequential_mapit is a bit less than 4K which is the NOR flash page size (or NOR flash erase size). Therefore, the current approach cannot even support > 2 fabrics, as they overflow the 4K NOR flash page; - (Mid Prio) - a relatively large KV Buffer is necessary for the persistence to work. Roughly 2x the size of all fabrics;
- (Low Prio) a change to fabric X is requiring the persistence of ALL fabrics currently.
Possible solutions:
- One option would be to retire the
sequential_mapstorage inrs-matter-embassyin favor of another one. Say -embassy kv; - Another option would be to change the persistence of the fabrics in such a way that they are persisted under separate keys.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels