Repository navigation
fix: cap the path table at 200 paths and build on current upstream microReticulum - #147
Open
mclueppers wants to merge 1 commit into
Open
mclueppers wants to merge 1 commit into
mclueppers wants to merge 1 commit into
Conversation
…croReticulum Both retimesh/combined branches are now upstream master plus one change each: the packet-carrying AnnounceHandler callback (attermann/microReticulum#85) and microStore keeping future-dated records at init. Everything else the forks carried is merged upstream. Upstream master applies RNS_PATH_TABLE_MAX to the path store, so the path table is now bounded: the oldest path is evicted to make room for a new one, and the store's dead-record compaction runs. The library default of 100 is close to what fleet nodes already hold, so set it to 200 (about 16 KB of internal DRAM at worst). The sweep commentary that rested on the table being unbounded and that compaction could not run is rewritten. Drop Reticulum::jobs_interval(1.0f). Transport::jobs() has always run every 0.25 s from Transport::loop(); the 60 s interval it shortened only paces cache cleaning and persistence, so the call bought nothing, and the API it needed was withdrawn upstream. Upstream also brings interface access codes (IFAC): packets flagged with an access code are now dropped on interfaces without one, as Python RNS does.
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Both retimesh/combined branches are now upstream master plus one change each: the packet-carrying AnnounceHandler callback (attermann/microReticulum#85) and microStore keeping future-dated records at init. Everything else the forks carried is merged upstream.
Upstream master applies RNS_PATH_TABLE_MAX to the path store, so the path table is now bounded: the oldest path is evicted to make room for a new one, and the store's dead-record compaction runs. The library default of 100 is close to what fleet nodes already hold, so set it to 200 (about 16 KB of internal DRAM at worst). The sweep commentary that rested on the table being unbounded and that compaction could not run is rewritten.
Drop Reticulum::jobs_interval(1.0f). Transport::jobs() has always run every 0.25 s from Transport::loop(); the 60 s interval it shortened only paces cache cleaning and persistence, so the call bought nothing, and the API it needed was withdrawn upstream.
Upstream also brings interface access codes (IFAC): packets flagged with an access code are now dropped on interfaces without one, as Python RNS does.