Skip to content
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

Pull Request #45 Introduces Client/Tracker Issue #51

Closed
ptgoetz opened this issue Jul 23, 2013 · 9 comments
Closed

Pull Request #45 Introduces Client/Tracker Issue #51

ptgoetz opened this issue Jul 23, 2013 · 9 comments
Assignees
Labels

Comments

@ptgoetz
Copy link
Contributor

ptgoetz commented Jul 23, 2013

@sroze

When running two clients (one seeder, one leecher) and the tracker on the same host/network interface, the clients fail to communicate with the tracker, and result in the following log message repeating:

2013-07-23 12:56:05 c.t.t.c.a.Announce [WARN] Current tier or client isn't available

Reverting to a build prior to this commit fixes the issue.

@sroze
Copy link
Contributor

sroze commented Jul 23, 2013

@ptgoetz It's working for me, with or without a tracker... Do you have any details of this error? Previous log messages? Stacktraces?

@ptgoetz
Copy link
Contributor Author

ptgoetz commented Jul 23, 2013

No stack traces. Just logs such as:

2013-07-23 12:47:26 c.t.t.c.a.Announce [INFO] Starting announce loop...
2013-07-23 12:47:26 c.t.t.c.a.Announce [WARN] Current tier or client isn't available
2013-07-23 12:47:26 c.t.t.c.Client [INFO] SHARING 0/6 pieces (0.00%) [0/0] with 0/0 peers at 0.00/0.00 kB/s.
2013-07-23 12:47:29 c.t.t.c.Client [INFO] SHARING 0/6 pieces (0.00%) [0/0] with 0/0 peers at 0.00/0.00 kB/s.

That's all I have for now... I'll try to dig a little deeper and get you more information. All I've tried is reverting to a previous build, which made the problem go away.

Some details (that may or may not help J ):

  • I'm binding the tracker to 0.0.0.0 (all interfaces).
  • The announce URL in the .torrent is by hostname (not IP)
  • The .torrent has only one announce URL.
  • Clients use a hostname (not IP)
  • The seeder and tracker are running in the same JVM.
  • The leecher is running in a separate JVM.

@ptgoetz
Copy link
Contributor Author

ptgoetz commented Jul 23, 2013

Oh... and all schemes are "http" not "udp".

@ptgoetz
Copy link
Contributor Author

ptgoetz commented Jul 24, 2013

If I can find some time to do so, I'll try to come up with a reproducible test case.

@sroze
Copy link
Contributor

sroze commented Jul 24, 2013

@ptgoetz Does the commit a47a275 of @pwoodworth fix the issue for you ?

@mpetazzoni
Copy link
Owner

Let me know if that fixes it, and I'll happily merge it as soon as it's confirmed!

@ptgoetz
Copy link
Contributor Author

ptgoetz commented Jul 24, 2013

@mpetazzoni @sroze Indeed it does.

Thanks @pwoodworth !

@sroze
Copy link
Contributor

sroze commented Jul 24, 2013

I apologize for having introduced this bug ! Thanks @pwoodworth !

mpetazzoni added a commit that referenced this issue Jul 25, 2013
Fixes bug with selecting the announce client

A previous change introduced a bug in the selection
of the announce tier and client. Closes #51.

Signed-off-by: Maxime Petazzoni <maxime.petazzoni@bulix.org>
@ghost ghost assigned mpetazzoni Jul 31, 2013
pwoodworth referenced this issue in pwoodworth/ttorrent Aug 19, 2013
* master:
  Removing old shell scripts
  Adding more platform agnostic shell scripts
  Fix pom parent relative path
  Clean up javadoc problems
  Use maven-shade-plugin to produce executable jar
  Update pom for compatibility with the maven-release-plugin
  fixes turn/ttorrent#51
  fixes Issue mpetazzoni#47
  Fix a few styling issues from recent contributions
  minor formatting/style modifications based on feedback from pull request mpetazzoni#49
  add comments documenting the drawbacks/potential improvements for the download/upload rate limiting algorithm
  add example of upload/download rate limiting to the client usage sample.
  reduce rate limit code duplication by refactoring code present in both InboundThread and OutboundThread to a common ExchangeThread superclass.
  add javadoc documentation for upload/download rate-limit functionality
  add the ability to set upload/download rate-limits (in kB/sec.) on shared torrents
  Fix order of uploaded/downloaded parameters in HTTPAnnounceRequestMessage.parse
  Throw AnnounceException when current tracker client isn't available.
  Fix read when message size wasn't read in one step
pwoodworth referenced this issue in pwoodworth/ttorrent Aug 27, 2013
* addTests:
  Remove changes unrelated to new tests and reformat for code style
  Move entry-point main methods to separate package
  Removing old shell scripts
  Adding more platform agnostic shell scripts
  Fix pom parent relative path
  Clean up javadoc problems
  Use maven-shade-plugin to produce executable jar
  Update pom for compatibility with the maven-release-plugin
  fixes turn/ttorrent#51
  fixes Issue mpetazzoni#47
  Fix a few styling issues from recent contributions
  minor formatting/style modifications based on feedback from pull request mpetazzoni#49
  add comments documenting the drawbacks/potential improvements for the download/upload rate limiting algorithm
  add example of upload/download rate limiting to the client usage sample.
  reduce rate limit code duplication by refactoring code present in both InboundThread and OutboundThread to a common ExchangeThread superclass.
  add javadoc documentation for upload/download rate-limit functionality
  add the ability to set upload/download rate-limits (in kB/sec.) on shared torrents
  Fix order of uploaded/downloaded parameters in HTTPAnnounceRequestMessage.parse
  Throw AnnounceException when current tracker client isn't available.
  Fix read when message size wasn't read in one step
@tonyiweb
Copy link

17:46:44.184 [bt-announce(..333665)] WARN c.t.t.client.announce.Announce - Current tier or client isn't available
17:46:45.186 [bt-client(..333665)] INFO com.turn.ttorrent.client.Client - SHARING 0/311 pieces (0.00%) [0/0] with 0/0 peers at 0.00/0.00 kB/s.
17:46:48.190 [bt-client(..333665)] INFO com.turn.ttorrent.client.Client - SHARING 0/311 pieces (0.00%) [0/0] with 0/0 peers at 0.00/0.00 kB/s.
17:46:49.190 [bt-announce(..333665)] WARN c.t.t.client.announce.Announce - Current tier or client isn't available
17:46:51.194 [bt-client(..333665)] INFO com.turn.ttorrent.client.Client - SHARING 0/311 pieces (0.00%) [0/0] with 0/0 peers at 0.00/0.00 kB/s.
17:46:54.197 [bt-announce(..333665)] WARN c.t.t.client.announce.Announce - Current tier or client isn't available
17:46:54.198 [bt-client(..333665)] INFO com.turn.ttorrent.client.Client - SHARING 0/311 pieces (0.00%) [0/0] with 0/0 peers at 0.00/0.00 kB/s.
17:46:57.201 [bt-client(..333665)] INFO com.turn.ttorrent.client.Client - SHARING 0/311 pieces (0.00%) [0/0] with 0/0 peers at 0.00/0.00 kB/s.

@ptgoetz @sroze @mpetazzoni , I have tried the code you commit, but it does not work for me. Could you help me for the question?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants