VeriBlock / nodecore-releases

Other
37 stars 11 forks source link

High memory usage causes Nodecore crash with java exception #57

Closed smokim87 closed 6 years ago

smokim87 commented 6 years ago

2018-07-21 14:49:50,577 ERROR [ForkJoinPool.commonPool-worker-3] o.v.c.c.Crypto [Crypto.java:35] Unhandled exception java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: SHA-256, provider: SUN, class: sun.security.provider.SHA2$SHA256) at java.security.Provider$Service.newInstance(Unknown Source) at sun.security.jca.GetInstance.getInstance(Unknown Source) at sun.security.jca.GetInstance.getInstance(Unknown Source) at java.security.Security.getImpl(Unknown Source) at java.security.MessageDigest.getInstance(Unknown Source) at org.veriblock.core.crypto.Crypto.(Crypto.java:33) at org.veriblock.core.utilities.AddressUtility.isValidStandardAddress(AddressUtility.java:85) at nodecore.core.transactions.g.a(TransactionUtility.java:44) at nodecore.core.transactions.DefaultTransaction.o(DefaultTransaction.java:840) at nodecore.core.a.q.a(PoPDatastore.java:48) at nodecore.core.a.i.(DefaultBlock.java:232) at nodecore.core.a.i.(DefaultBlock.java:382) at nodecore.core.a.i.(DefaultBlock.java:374) at nodecore.core.a.i$$FastClassByGuice$$77582dfa.newInstance() at com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy.newInstance(DefaultConstructionProxyFactory.java:89) at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:111) at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:90) at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:268) at com.google.inject.internal.InjectorImpl$2$1.call(InjectorImpl.java:1019) at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1085) at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:1015) at com.google.inject.assistedinject.FactoryProvider2.invoke(FactoryProvider2.java:776) at com.sun.proxy.$Proxy16.a(Unknown Source) at nodecore.core.a.k.a(DefaultBlockchain.java:203) at java.util.stream.ReferencePipeline$3$1.accept(Unknown Source) at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(Unknown Source) at java.util.stream.AbstractPipeline.copyInto(Unknown Source) at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source) at java.util.stream.Nodes$SizedCollectorTask.compute(Unknown Source) at java.util.concurrent.CountedCompleter.exec(Unknown Source) at java.util.concurrent.ForkJoinTask.doExec(Unknown Source) at java.util.concurrent.ForkJoinPool$WorkQueue.execLocalTasks(Unknown Source) at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(Unknown Source) at java.util.concurrent.ForkJoinPool.runWorker(Unknown Source) at java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source) Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded

JoshRack commented 6 years ago

Much has been done to address memory pressure in NodeCore.