eolivelli commented on PR #22510:
URL: https://github.com/apache/pulsar/pull/22510#issuecomment-2057202628

   > @eolivelli have you had a chance to check if Gzip compression helps with 
large responses? Pulsar admin client changes: #22464, broker side changes: 
#21667, #22463 and #22370 .
   
   I have seen those PRs, great stuff, but the problem here is about the 
serialization happening in some upgredictable place, like this:
   ```
   
   "pulsar-web-48-18" #174 prio=5 os_prio=0 cpu=1421.36ms elapsed=456.08s 
tid=0x00007f6a54002260 nid=0x342c0 waiting on condition  [0x00007f6e5c951000]
      java.lang.Thread.State: WAITING (parking)
           at jdk.internal.misc.Unsafe.park([email protected]/Native Method)
           - parking to wait for  <0x00001007fe5a5b38> (a 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
           at 
java.util.concurrent.locks.LockSupport.park([email protected]/LockSupport.java:341)
           at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block([email protected]/AbstractQueuedSynchronizer.java:506)
           at 
java.util.concurrent.ForkJoinPool.unmanagedBlock([email protected]/ForkJoinPool.java:3465)
           at 
java.util.concurrent.ForkJoinPool.managedBlock([email protected]/ForkJoinPool.java:3436)
           at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await([email protected]/AbstractQueuedSynchronizer.java:1623)
           at 
org.eclipse.jetty.util.SharedBlockingCallback$Blocker.block(SharedBlockingCallback.java:241)
           at 
org.eclipse.jetty.server.HttpOutput.channelWrite(HttpOutput.java:270)
           at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:873)
           at 
org.glassfish.jersey.servlet.internal.ResponseWriter$NonCloseableOutputStreamWrapper.write(ResponseWriter.java:301)
           at 
org.glassfish.jersey.message.internal.CommittingOutputStream.write(CommittingOutputStream.java:200)
           at 
org.glassfish.jersey.message.internal.WriterInterceptorExecutor$UnCloseableOutputStream.write(WriterInterceptorExecutor.java:276)
           at 
com.fasterxml.jackson.core.json.UTF8JsonGenerator._flushBuffer(UTF8JsonGenerator.java:2203)
           at 
com.fasterxml.jackson.core.json.UTF8JsonGenerator._writeStringSegments(UTF8JsonGenerator.java:1343)
           at 
com.fasterxml.jackson.core.json.UTF8JsonGenerator.writeString(UTF8JsonGenerator.java:517)
           at 
com.fasterxml.jackson.databind.ser.std.StringSerializer.serialize(StringSerializer.java:41)
           at 
com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:733)
           at 
com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:774)
           at 
com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:178)
           at 
com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeOptionalFields(MapSerializer.java:869)
           at 
com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithoutTypeInfo(MapSerializer.java:760)
           at 
com.fasterxml.jackson.databind.ser.std.MapSerializer.serialize(MapSerializer.java:720)
           at 
com.fasterxml.jackson.databind.ser.std.MapSerializer.serialize(MapSerializer.java:35)
           at 
com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:733)
           at 
com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:774)
           at 
com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:178)
           at 
com.fasterxml.jackson.databind.ser.DefaultSerializerProvider._serialize(DefaultSerializerProvider.java:480)
           at 
com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:319)
           at 
com.fasterxml.jackson.databind.ObjectWriter$Prefetch.serialize(ObjectWriter.java:1572)
           at 
com.fasterxml.jackson.databind.ObjectWriter.writeValue(ObjectWriter.java:1061)
           at 
org.glassfish.jersey.jackson.internal.jackson.jaxrs.base.ProviderBase.writeTo(ProviderBase.java:647)
           at 
org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.invokeWriteTo(WriterInterceptorExecutor.java:242)
           at 
org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.aroundWriteTo(WriterInterceptorExecutor.java:227)
           at 
org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:139)
           at 
org.glassfish.jersey.server.internal.JsonWithPaddingInterceptor.aroundWriteTo(JsonWithPaddingInterceptor.java:85)
           at 
org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:139)
           at 
org.glassfish.jersey.server.internal.MappableExceptionWrapperInterceptor.aroundWriteTo(MappableExceptionWrapperInterceptor.java:61)
           at 
org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:139)
           at 
org.glassfish.jersey.message.internal.MessageBodyFactory.writeTo(MessageBodyFactory.java:1116)
           at 
org.glassfish.jersey.server.ServerRuntime$Responder.writeResponse(ServerRuntime.java:635)
           at 
org.glassfish.jersey.server.ServerRuntime$Responder.processResponse(ServerRuntime.java:373)
           at 
org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:363)
           at 
org.glassfish.jersey.server.ServerRuntime$AsyncResponder$3.run(ServerRuntime.java:857)
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to