-
Notifications
You must be signed in to change notification settings - Fork 452
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
Trust statistics seem off #3657
Comments
@Dmole that's quite interesting! When not downloading anonymously, taken should instead always be zero. The easiest way to debug this, is to explore the blocks on the Tribler blockchain I guess. Could you please provide your database with blocks? You can find this in your Tribler state directory, specifically in |
One would hope with a fresh ~/.Tribler there would be nothing sensitive, but it's also kinda big so here is the tip;
and I emailed you the rest. |
I can add that i also end up in negative from only having one Torrent in a seeding state. I tested this by removing the .Tribler folder, and then starting tribler and adding an already downloaded torrent, and let it seed for some time. Of course, there is practically no demand for that torrent at all, so whatever activity is on it, it's not from actually seeding to others. |
@Dmole @Thomasedv thank you for your help! I noticed this behaviour too when starting with a fresh Tribler instance. Next week I won't be at the university to work on it but I will try to investigate this as soon as I can when I'm back 👍 |
2 3 4 |
Thank you all for these reports! Fortunately, this should be relatively easy to debug since all blockchain records are public. This issue also makes it clear that we need a (very basic) blockchain explorer within the debug panel in order to debug it better. We recently switched to a more sophisticated method of token payout so my first guess is that clients using the old method are communicating with clients that run a newer version. We have one more hard reset for the TrustChain structure in our pipeline (see #3572) so after that, this problem might be resolved. |
What I said was a possibility
I have tested and confirmed to be a reality; since I first reported this I have just let Tribler run empty (0 torrents) and I got up to 1939 tokens then down to -10413 tokens... |
This should be fixed in the upcoming experimental release. I will move this issue to the next milestone. |
The only way to make credits useful (unhackable) would be to make a history (of any sort) count for more than a weeks worth of seeding. (a fresh account should get less priority than a week old account with -1k points) |
Overlap with #3731 |
Technicaly this issue was first so not a duplicate. |
I reproduced this issue, by simply downloading a ~1.4GB file (Ubuntu). My TrustChain statistics:
I paid around 6.5GB, for a 1.4GB file. There's definitely something wrong here. I will look into it. |
What actually goes over the write, seems to be way lower:
So, around 1.58GB goes over the wire but we are doing payouts of 6+ GB... there's either something wrong with the payouts or byte accounting of circuits. |
I adjusted the maximum number of circuits to be created for each download to one, which makes this issue easier to debug. It seems that that byte accounting of circuits is off, and this effect amplifies when we use more parallel circuits to download.
Actual data that went over the wire:
So 266833732 bytes accounted vs 139485921 bytes sent... |
I fixed a part of the issue in Tribler/py-ipv8#315, but it seems that there is another bug where a single payout is sent twice to the other party. I will investigate this too. |
Payouts are now accurate when using a single circuit to download a 1.5GB file: Over the wire:
And we did a payout of 1.57GB 👍 |
Also confirmed to work when downloading with multiple hops 👍 |
@devos50, you said
But in 7.1.0-rc2 it still is not; I got a 12142 / 3863 MBytes ratio (with 0 torrents). |
I turned on credit mining but lost ~10GB of ratio/trust. |
@Dmole I do believe that might be a result of the credit mining using credits to download the files first and thus you are losing the initial mount which may very well be 10 GB or more. The one time i used credit mining with the bug enable, i went very very quickly down in token balance. And if i remember correctly it was around 15-25 files at around half a GB in size each, for the community i chose to mine for. So at that time, i went at least 50-100 GB in negative. After testing the recent release, i am finally in the positive from using normal seeding because it's not double/triple counted. And now i am counted normally for my downloads, and probably uploading too. |
@Dmole |
Yes, it is most likely the initial download which is causing this. The credit mining algorithm first downloads the whole file and then seeds it to others. It's a naive but basic algorithm. We will improve the credit mining algorithm during the coming releases. This issue however was meant for the double accounting bug when doing a regular download, which is fixed now. |
I made this bug report with the idea of getting statistics reasonable, but if you want to re-classify it as just a doubling bug I can make new bug reports for the other sub issues if that helps. A token economy would be more likely to happen after the statistics and traid are reasonable (not yet). |
If you notice that something is off, please create separate issues for it. This issue should have been made a bit more specific by us (i.e. by modifying the title to make it more specific), so we will keep that in mind.
Building an operational token economy requires many iterations and testing. Now that downloading seems to work fine, fixing the token mining algorithm is becoming a more important issue. Also, explaining the process to the end-user in a clear manner is challenging, but we'll get there based on your feedback and the feedback of others 👍 Also, the market requires more polish, especially the user-interface part. Last months, I spent much time researching and implementing the decentralized algorithm for trading (and wrote an article about it). Getting it fully operational is the next step. |
5 years later and the Trust statistics are still untrustworthy, but at least hidden for the moment (again);
|
rm -r ~/.Tribler
apt install Tribler_7.1.0-exp2.deb
Tokens starts at 0 (seems like an easy way to game the system if there is any penalty for <0 )
Leave Tribler running for a bit with 0 Torrents, then observe;
... think about it
Side note; please don't use the crazy date format (31-05-18), use
date --iso-8601
(2018-05-31); sorting largest to smallest units is the only rational format.The text was updated successfully, but these errors were encountered: