Aivean / royalroad-downloader

https://royalroad.com book downloader
MIT License
57 stars 4 forks source link

error/out of memory when downloading #8

Closed bonnouji closed 6 years ago

bonnouji commented 6 years ago

running the code on kinda old laptop and suddenly the program spitting out of memory error. the novel i'm trying to download is mythran master of all continued (https://royalroadl.com/fiction/8220/mythrans-master-of-all-continued) which is around 300++ chapter

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space at java.util.Arrays.copyOf(Unknown Source) at java.io.ByteArrayOutputStream.grow(Unknown Source) at java.io.ByteArrayOutputStream.ensureCapacity(Unknown Source) at java.io.ByteArrayOutputStream.write(Unknown Source) at org.jsoup.helper.DataUtil.readToByteBuffer(DataUtil.java:167) at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java: 707) at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java: 628) at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:260) at net.ruippeixotog.scalascraper.browser.JsoupBrowser.executeRequest(Jso upBrowser.scala:65) at net.ruippeixotog.scalascraper.browser.JsoupBrowser$$anonfun$3.apply(J soupBrowser.scala:76) at net.ruippeixotog.scalascraper.browser.JsoupBrowser$$anonfun$3.apply(J soupBrowser.scala:76) at scala.Function1$$anonfun$andThen$1.apply(Function1.scala:52) at scala.Function1$$anonfun$andThen$1.apply(Function1.scala:52) at net.ruippeixotog.scalascraper.browser.JsoupBrowser.get(JsoupBrowser.s cala:33) at com.aivean.royalroad.Main$$anonfun$4.apply(Main.scala:62) at com.aivean.royalroad.Main$$anonfun$4.apply(Main.scala:59) at scala.collection.parallel.AugmentedIterableIterator$class.map2combine r(RemainsIterator.scala:115) at scala.collection.parallel.immutable.ParVector$ParVectorIterator.map2c ombiner(ParVector.scala:62) at scala.collection.parallel.ParIterableLike$Map.leaf(ParIterableLike.sc ala:1054) at scala.collection.parallel.Task$$anonfun$tryLeaf$1.apply$mcV$sp(Tasks. scala:49) at scala.collection.parallel.Task$$anonfun$tryLeaf$1.apply(Tasks.scala:4 8) at scala.collection.parallel.Task$$anonfun$tryLeaf$1.apply(Tasks.scala:4 8) at scala.collection.parallel.Task$class.tryLeaf(Tasks.scala:51) at scala.collection.parallel.ParIterableLike$Map.tryLeaf(ParIterableLike .scala:1051) at scala.collection.parallel.AdaptiveWorkStealingTasks$WrappedTask$class .internal(Tasks.scala:169) at scala.collection.parallel.AdaptiveWorkStealingForkJoinTasks$WrappedTa sk.internal(Tasks.scala:443) at scala.collection.parallel.AdaptiveWorkStealingTasks$WrappedTask$class .compute(Tasks.scala:149) at scala.collection.parallel.AdaptiveWorkStealingForkJoinTasks$WrappedTa sk.compute(Tasks.scala:443) at scala.concurrent.forkjoin.RecursiveAction.exec(RecursiveAction.java:1 60) at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool .java:1339) at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:19 79)

Aivean commented 6 years ago

Just give java more memory by setting Xmx flag when running the script.

Like java -Xmx2G -jar ....

Let me know it it worked.

bonnouji commented 6 years ago

IT WORKED!! Thanks a lot !!!!!!!!!!