-
Notifications
You must be signed in to change notification settings - Fork 453
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Revise the PopularityCommunity
metadata retrieval protocol.
#7632
Comments
As a starting point for discussion, I propose the following algorithm: Popularity Community operates in this manner:
(Note: Steps 1, 2, and 3 remain unchanged from the current algorithm)
@dataclass
class RequestKnowledgeMessage:
infohash: str
tribler/src/tribler/core/components/knowledge/community/knowledge_payload.py Lines 42 to 45 in 20fb224
|
During my effort on Friday to eliminate channel sampling/pre-view and the free-for-all channel mechanism, I encountered some obstacles. Even though my initial attempt wasn't successful, I've gained insights into how this can be achieved and can now provide more detailed estimations. The removal process should begin on the GUI side. This involves:
Once the GUI components are addressed:
Following these changes, a majority of the channels will be eliminated. Any remnants can either be adapted or removed in future refactoring stages. From my current understanding, it can take 1 week to process these steps. |
For this little part of the master plan I have the following implementation in mind:
Once that all works the last remaining step is to update the search results to also make use of the preference relation instead of pure db-based text search. |
A more detailed design (green blocks include the code to add), capturing some insights since my last post: Changes:
Disclaimer: this is still before writing even a single line of code, the design may change as I implement it. |
This has now been implemented. |
Despite the protocol's apparent simplicity,
PopularityCommunity
is quite complex as it derives logic fromRemoteQueryCommunity
:tribler/src/tribler/core/components/popularity/community/popularity_community.py
Lines 22 to 23 in 20fb224
This inheritance was implemented in #5736
The current algorithm for metadata retrieval is as follows:
#7398 (comment)
tribler/src/tribler/core/components/popularity/community/popularity_community.py
Lines 81 to 92 in 20fb224
As
RemoteQueryCommunity
is going to be removed in8.0.0
we have to replace the algorithm for metadata retrieval.The text was updated successfully, but these errors were encountered: