Hi Folks,
We have seen below BLOCKED thread while gerrit server load reaching high. Could you please check and help the reason for this?
gerrit version: 2.16.22
"SSH-Stream-Worker-37" #694 prio=1 os_prio=0 tid=0x00007f202801f800 nid=0x1381d waiting for monitor entry [0x00007f1ed85d7000]
java.lang.Thread.State: BLOCKED (on object monitor)
at com.google.common.base.Suppliers$NonSerializableMemoizingSupplier.get(Suppliers.java:165)
- waiting to lock <0x00007fed7b75f6b8> (a com.google.common.base.Suppliers$NonSerializableMemoizingSupplier)
at com.google.gerrit.server.events.SupplierSerializer.serialize(SupplierSerializer.java:27)
at com.google.gerrit.server.events.SupplierSerializer.serialize(SupplierSerializer.java:23)
at com.google.gson.internal.bind.TreeTypeAdapter.write(TreeTypeAdapter.java:81)
at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:69)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:127)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.write(ReflectiveTypeAdapterFactory.java:245)
at com.google.gson.Gson.toJson(Gson.java:704)
at com.google.gson.Gson.toJson(Gson.java:683)
at com.google.gson.Gson.toJson(Gson.java:638)
at com.google.gson.Gson.toJson(Gson.java:618)
at com.google.gerrit.sshd.commands.StreamEvents.write(StreamEvents.java:279)
at com.google.gerrit.sshd.commands.StreamEvents.writeEvents(StreamEvents.java:259)
at com.google.gerrit.sshd.commands.StreamEvents.access$000(StreamEvents.java:52)
at com.google.gerrit.sshd.commands.StreamEvents$1.run(StreamEvents.java:98)
at com.google.gerrit.server.logging.LoggingContextAwareRunnable.run(LoggingContextAwareRunnable.java:83)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at com.google.gerrit.server.git.WorkQueue$Task.run(WorkQueue.java:646)
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)
Regards,
Layona