OutOfMemoryError при сборке проекта с SBT - PullRequest
0 голосов
/ 27 февраля 2020

У меня есть приложение Play 2.8, которое работает на экземпляре EC2 емкостью 1 ГБ. Однако всякий раз, когда я собираю приложение с помощью команды sbt clean stage (в том же экземпляре EC2), время от времени я получаю следующее исключение. Несмотря на это, сборка удалась. Я уже увеличил максимальное количество потоков до верхнего предела в /etc/security/limits.conf, но проблема все еще существует.

Feb 27, 2020 12:06:57 AM com.github.benmanes.caffeine.cache.BoundedLocalCache scheduleDrainBuffers
WARNING: Exception thrown when submitting maintenance task
java.lang.OutOfMemoryError: unable to create new native thread
        at java.lang.Thread.start0(Native Method)
        at java.lang.Thread.start(Thread.java:717)
        at java.util.concurrent.ForkJoinPool.createWorker(ForkJoinPool.java:1486)
  | => rat java.util.concurrent.ForkJoinPool.tryAddWorker(ForkJoinPool.java:1517)
        at java.util.concurrent.ForkJoinPool.signalWork(ForkJoinPool.java:1634)
        at java.util.concurrent.ForkJoinPool.externalPush(ForkJoinPool.java:2414)
        at java.util.concurrent.ForkJoinPool.execute(ForkJoinPool.java:2648)
        at com.github.benmanes.caffeine.cache.BoundedLocalCache.scheduleDrainBuffers(BoundedLocalCache.java:1070)
        at com.github.benmanes.caffeine.cache.BoundedLocalCache.scheduleAfterWrite(BoundedLocalCache.java:1037)
        at com.github.benmanes.caffeine.cache.BoundedLocalCache.afterWrite(BoundedLocalCache.java:1007)
        at com.github.benmanes.caffeine.cache.BoundedLocalCache.put(BoundedLocalCache.java:1655)
        at com.github.benmanes.caffeine.cache.BoundedLocalCache.put(BoundedLocalCache.java:1602)
        at com.github.benmanes.caffeine.cache.LocalManualCache.put(LocalManualCache.java:64)
        at sbt.internal.InMemoryCacheStore$InMemoryCacheStore.put(InMemoryCacheStore.scala:39)
        at sbt.internal.InMemoryCacheStore$CacheStoreImpl.write(InMemoryCacheStore.scala:78)
        at sbt.util.Tracked$CacheHelp.save(Tracked.scala:181)
        at sbt.util.Tracked$.$anonfun$outputChanged$1(Tracked.scala:104)
        at sbt.Package$.apply(Package.scala:108)
        at sbt.Defaults$.$anonfun$packageTask$1(Defaults.scala:1404)
        at scala.Function1.$anonfun$compose$1(Function1.scala:49)
        at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:62)
        at sbt.std.Transform$$anon$4.work(Transform.scala:67)
        at sbt.Execute.$anonfun$submit$2(Execute.scala:281)
        at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:19)
        at sbt.Execute.work(Execute.scala:290)
        at sbt.Execute.$anonfun$submit$1(Execute.scala:281)
        at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:178)
        at sbt.CompletionService$$anon$2.call(CompletionService.scala:37)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
...