Optimize package data associations for LoRa Cloud Modem & Geolocation Services #6342
Closed
4 tasks done
Labels
Milestone
Summary
Each application package has configuration data stored in a
DefaultPackageAssociation
and aPackageAssociation
. The values in thePackageAssociation
are used to override theDefaultPackageAssociation
values per device. We should optimize the data stored in thePackageAssociation
by reducing the number of fields we persist in the underlying data.Follows up #6317
Current Situation
The
PackageAssociation
(s) for the integrations related to LoRa Cloud Modem & Geolocation Services currently store all the fields that are required in theDefaultPackageAssociation
to enable (de)serialization to and fromstructpb.Struct{}
and proper validation. This solution might create residualPackageAssociation
(s) that bring no actual value to the integration (e.g. data that contains"token": ""
).Why do we need this? Who uses it, and when?
Reduce the amount of data we store in Redis related to the integrations for LoRa Cloud Modem & Geolocation Services.
Proposed Implementation
Improve the (de)serialization from and to
structpb.Struct{}
by allowingnilable
data fields in theDefaultPackageAssociation
andPackageAssociation
. Move the layer of data validation after merging the configurations instead of during.Contributing
Code of Conduct
The text was updated successfully, but these errors were encountered: