mchades commented on code in PR #4965: URL: https://github.com/apache/gravitino/pull/4965#discussion_r1797632676
########## server/src/main/java/org/apache/gravitino/server/GravitinoServer.java: ########## @@ -119,6 +120,7 @@ protected void configure() { register(JsonParseExceptionMapper.class); register(JsonMappingExceptionMapper.class); register(ObjectMapperProvider.class).register(JacksonFeature.class); + property(CommonProperties.JSON_JACKSON_DISABLED_MODULES, "DefaultScalaModule"); Review Comment: To resolve below error in embedded test mode: > com.fasterxml.jackson.databind.JsonMappingException: Scala module 2.14.2 requires Jackson Databind version >= 2.14.0 and < 2.15.0 - Found jackson-databind version 2.15.2 > at org.apache.hudi.com.fasterxml.jackson.module.scala.JacksonModule.setupModule(JacksonModule.scala:61) > at org.apache.hudi.com.fasterxml.jackson.module.scala.JacksonModule.setupModule$(JacksonModule.scala:46) > at org.apache.hudi.com.fasterxml.jackson.module.scala.DefaultScalaModule.setupModule(DefaultScalaModule.scala:17) > at com.fasterxml.jackson.databind.ObjectMapper.registerModule(ObjectMapper.java:879) > at com.fasterxml.jackson.databind.ObjectMapper.registerModules(ObjectMapper.java:1081) > at org.glassfish.jersey.jackson.internal.DefaultJacksonJaxbJsonProvider.findAndRegisterModules(DefaultJacksonJaxbJsonProvider.java:86) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at org.glassfish.hk2.utilities.reflection.ReflectionHelper.invoke(ReflectionHelper.java:1268) > at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:309) > at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:351) > at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463) > at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:59) > at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:47) > at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture$1.call(Cache.java:74) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture.run(Cache.java:131) > at org.glassfish.hk2.utilities.cache.Cache.compute(Cache.java:176) > at org.jvnet.hk2.internal.SingletonContext.findOrCreate(SingletonContext.java:98) > at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102) > at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:93) > at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:67) > at org.glassfish.jersey.inject.hk2.AbstractHk2InjectionManager.lambda$getAllServiceHolders$0(AbstractHk2InjectionManager.java:137) > at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) > at java.util.LinkedList$LLSpliterator.forEachRemaining(LinkedList.java:1235) > at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) > at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472) > at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) > at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) > at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:566) > at org.glassfish.jersey.inject.hk2.AbstractHk2InjectionManager.getAllServiceHolders(AbstractHk2InjectionManager.java:141) > at org.glassfish.jersey.inject.hk2.ImmediateHk2InjectionManager.getAllServiceHolders(ImmediateHk2InjectionManager.java:30) > at org.glassfish.jersey.internal.inject.Providers.getServiceHolders(Providers.java:307) > at org.glassfish.jersey.internal.inject.Providers.getCustomProviders(Providers.java:151) > at org.glassfish.jersey.message.internal.MessageBodyFactory.initialize(MessageBodyFactory.java:219) > at org.glassfish.jersey.message.internal.MessageBodyFactory$MessageBodyWorkersConfigurator.postInit(MessageBodyFactory.java:114) > at org.glassfish.jersey.server.ApplicationHandler.lambda$initialize$2(ApplicationHandler.java:353) > at java.util.Arrays$ArrayList.forEach(Arrays.java:3880) > at org.glassfish.jersey.server.ApplicationHandler.initialize(ApplicationHandler.java:353) > at org.glassfish.jersey.server.ApplicationHandler.lambda$initialize$1(ApplicationHandler.java:297) > at org.glassfish.jersey.internal.Errors.process(Errors.java:292) > at org.glassfish.jersey.internal.Errors.process(Errors.java:274) > at org.glassfish.jersey.internal.Errors.processWithException(Errors.java:232) > at org.glassfish.jersey.server.ApplicationHandler.initialize(ApplicationHandler.java:296) > at org.glassfish.jersey.server.ApplicationHandler.<init>(ApplicationHandler.java:261) > at org.glassfish.jersey.servlet.WebComponent.<init>(WebComponent.java:311) > at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:154) > at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:339) > at javax.servlet.GenericServlet.init(GenericServlet.java:244) > at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:632) > at org.eclipse.jetty.servlet.ServletHolder.initialize(ServletHolder.java:415) > at org.eclipse.jetty.servlet.ServletHandler.lambda$initialize$0(ServletHandler.java:750) > at java.util.stream.SortedOps$SizedRefSortingSink.end(SortedOps.java:357) > at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:483) > at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472) > at java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:313) > at java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:743) > at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:647) > at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:774) > at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:379) > at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1449) > at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1414) > at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:916) > at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:288) > at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:524) > at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73) > at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169) > at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117) > at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97) > at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73) > at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169) > at org.eclipse.jetty.server.Server.start(Server.java:423) > at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110) > at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97) > at org.eclipse.jetty.server.Server.doStart(Server.java:387) > at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73) > at org.apache.gravitino.server.web.JettyServer.start(JettyServer.java:183) > at org.apache.gravitino.server.GravitinoServer.start(GravitinoServer.java:147) > at org.apache.gravitino.server.GravitinoServer.main(GravitinoServer.java:168) > at org.apache.gravitino.integration.test.MiniGravitino.lambda$start$0(MiniGravitino.java:150) It's because `hudi_spark_bundle` jar includes `DefaultScalaModule` v2.14.2, in embedded test mode, it will automatically found and registered by MiniGravitino server's ObjectMapper(v2.15.2). Since Gravitino does not use the `DefaultScalaModule`, I disable it. -- 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: commits-unsubscr...@gravitino.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org