question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Error managing large amount of torrents.

See original GitHub issue

I have 300+ torrents that I’d like to load in joal. Fixed the limit to 500.

Apparently, is generates an error. I’m not sure the reason why. Is it because of the number ? Of a tracker ? Of a specific torrent ? Running as a docker container

Here’s the log related to that error:

[ERROR] 2022-11-30 22:05:09.769 [           main] o.a.j.ApplicationReadyListener: Fatal error encountered

java.lang.IllegalStateException: Fatal error encountered

	at org.araymond.joal.ApplicationReadyListener.onApplicationEvent(ApplicationReadyListener.java:35)

	at org.araymond.joal.ApplicationReadyListener.onApplicationEvent(ApplicationReadyListener.java:16)

	at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:176)

	at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:169)

	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:143)

	at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:421)

	at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:378)

	at org.springframework.boot.context.event.EventPublishingRunListener.ready(EventPublishingRunListener.java:114)

	at org.springframework.boot.SpringApplicationRunListeners.lambda$ready$6(SpringApplicationRunListeners.java:82)

	at java.base/java.util.ArrayList.forEach(Unknown Source)

	at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:120)

	at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:114)

	at org.springframework.boot.SpringApplicationRunListeners.ready(SpringApplicationRunListeners.java:82)

	at org.springframework.boot.SpringApplication.run(SpringApplication.java:323)

	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)

	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295)

	at org.araymond.joal.JackOfAllTradesApplication.main(JackOfAllTradesApplication.java:15)

	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

	at java.base/java.lang.reflect.Method.invoke(Unknown Source)

	at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)

	at org.springframework.boot.loader.Launcher.launch(Launcher.java:108)

	at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)

	at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:65)

Caused by: java.lang.IllegalArgumentException: Comparison method violates its general contract!

	at java.base/java.util.TimSort.mergeLo(Unknown Source)

	at java.base/java.util.TimSort.mergeAt(Unknown Source)

	at java.base/java.util.TimSort.mergeCollapse(Unknown Source)

	at java.base/java.util.TimSort.sort(Unknown Source)

	at java.base/java.util.Arrays.sort(Unknown Source)

	at java.base/java.util.ArrayList.sort(Unknown Source)

	at java.base/java.util.stream.SortedOps$RefSortingSink.end(Unknown Source)

	at java.base/java.util.stream.Sink$ChainedReference.end(Unknown Source)

	at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(Unknown Source)

	at java.base/java.util.stream.AbstractPipeline.copyInto(Unknown Source)

	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)

	at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(Unknown Source)

	at java.base/java.util.stream.AbstractPipeline.evaluate(Unknown Source)

	at java.base/java.util.stream.ReferencePipeline.findAny(Unknown Source)

	at org.araymond.joal.core.torrent.watcher.TorrentFileProvider.getTorrentNotIn(TorrentFileProvider.java:124)

	at org.araymond.joal.core.ttorrent.client.Client.addTorrent(Client.java:102)

	at org.araymond.joal.core.ttorrent.client.Client.start(Client.java:87)

	at org.araymond.joal.core.SeedManager.startSeeding(SeedManager.java:128)

	at org.araymond.joal.ApplicationReadyListener.onApplicationEvent(ApplicationReadyListener.java:33)

... 24 more

Issue Analytics

  • State:closed
  • Created 10 months ago
  • Comments:5 (3 by maintainers)

github_iconTop GitHub Comments

2reactions
anthonyraymondcommented, Nov 30, 2022

Version 2.1.33 has been release to address the issue: https://github.com/anthonyraymond/joal/releases

0reactions
tiritibambixcommented, Dec 1, 2022

Awesome, thank you.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Torrent client to support large numbers of torrents? (100k+)
Actual torrent performance/seedability seems stable even over 100k. I am likely to only be seeding ~100 torrents at any one time, so concurrent ......
Read more >
Suggestion about managing huge amount of torrents, RAM ...
qBittorrent eats too much RAM and acts unresponsive. It can take dozens of minutes to launch. It can eat up to 8 GB...
Read more >
How to Fix the “qBittorrent Stalled” Error? – 10 Proven Ways
To resume downloading, you can right-click the stalled torrent file and select Force Resume. Then your torrent file should resume downloading.
Read more >
The Best qBittorrent Settings (2022 Update) - RapidSeedbox
In this ultimate guide to qBittorrent, we'll go through the best qBittorrent settings to maximize your downloads speeds, privacy, and UX.
Read more >
4189 (Better handling of long torrent names) - Transmission
While running a torrent with very long name Transmission stops it periodically giving an error message: "Unable to save resume file: File name...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found