Add patch registry service to fne - #121
lorenzolrom wants to merge 1 commit into
Conversation
|
The entire PatchStatusRepository class needs review, currently it is not following proper file formatting. It requires proper file formatting: must contain proper detailed documentation blocks for functions in the header file, and proper summarized documentation blocks for functions in the source implementation file. I question the use of std::unordered_map for potential concurrency problems, with updates to the map potentially coming from one or more sources for any reason, using std::unordered_map could cause crashes when multiple threads attempt to access the map for write simultaneously (that is insert, change, delete). Additionally these changes don’t seem traverse the spanning tree. From a quick review, it would seem the patch registry only applies to the FNE the console is directly attached to, but does not transverse the spanning tree, as such that consoles connected on a different FNE leaf for the same system, would end up out of sync and would not show patch status. |
|
@gatekeep I've pushed some changes up, can you take a look? |
|
Looks much better. Based on what I learned today while implementing some KMF logic, your mechanism for sending patch status from the FNE to the console might not work properly. You may want to review the fnecore changes that were made, might be better to send the transfer packets via the metadata network connection instead of crossing network boundaries. (Especially for performance during traffic.) Either way, have you performed tests with this implementation? |
e12bcda to
471c59e
Compare
7f946a9 to
be43306
Compare
|
@gatekeep @DevRanger this has been rebased and reworked against the latest r05a06_dev branch. Fixed patch status replication. Fixed some memory safety bugs where malformed replica packets could cause OOB reads in the decode path and added caps on patches and members to bound replication payloads. The functionality of all the patch registry endpoints has been tested using a local instance of dvmfne and a locally modified console with a debug utility. |
No description provided.