dchristle commented on pull request #32688:
URL: https://github.com/apache/spark/pull/32688#issuecomment-854269717


   Hi all @LuciferYang @HyukjinKwon @gengliangwang @srowen  --
   
   While attempting to run a job on k8s with a `SNAPSHOT` of today's `master` 
branch, I found there appears to be a conflict in our dependencies. The error 
occurs at the start of the job, and the stack trace is:
   ```
   Exception in thread "main" java.lang.NoSuchMethodError: 
'com.fasterxml.jackson.core.util.JacksonFeatureSet 
com.fasterxml.jackson.core.JsonParser.getReadCapabilities()'
        at 
com.fasterxml.jackson.databind.DeserializationContext.<init>(DeserializationContext.java:211)
        at 
com.fasterxml.jackson.databind.deser.DefaultDeserializationContext.<init>(DefaultDeserializationContext.java:50)
        at 
com.fasterxml.jackson.databind.deser.DefaultDeserializationContext$Impl.<init>(DefaultDeserializationContext.java:391)
        at 
com.fasterxml.jackson.databind.deser.DefaultDeserializationContext$Impl.createInstance(DefaultDeserializationContext.java:413)
        at 
com.fasterxml.jackson.databind.ObjectMapper.createDeserializationContext(ObjectMapper.java:4656)
        at 
com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4585)
        at 
com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3593)
        at 
io.fabric8.kubernetes.client.utils.Serialization.unmarshal(Serialization.java:247)
        at 
io.fabric8.kubernetes.client.utils.Serialization.unmarshal(Serialization.java:200)
        at 
io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleResponse(OperationSupport.java:495)
        at 
io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleResponse(OperationSupport.java:451)
        at 
io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleGet(OperationSupport.java:416)
        at 
io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleGet(OperationSupport.java:397)
        at 
io.fabric8.kubernetes.client.dsl.base.BaseOperation.handleGet(BaseOperation.java:933)
        at 
io.fabric8.kubernetes.client.dsl.base.BaseOperation.getMandatory(BaseOperation.java:220)
        at 
io.fabric8.kubernetes.client.dsl.base.BaseOperation.get(BaseOperation.java:186)
        at 
io.fabric8.kubernetes.client.dsl.base.BaseOperation.get(BaseOperation.java:84)
   ...
   ```
   
   The root cause is that `kubernetes-client` has a dependency on Jackson 
2.11.3: 
https://github.com/fabric8io/kubernetes-client/blob/d810aa1da99ff5cdb81cabea4f5a6dcf55ff0218/pom.xml#L87
   
   When it initializes `DeserializationContext`, `getReadCapabilities()` is 
called here 
https://github.com/FasterXML/jackson-databind/blob/b5a60a816b9333edbba830bb252a1417dcd2686b/src/main/java/com/fasterxml/jackson/databind/DeserializationContext.java#L212
 
   
   but that method has only existed since `2.12`: 
https://github.com/FasterXML/jackson-core/blob/080eee156d82481625a38eda5a14ba4fbe2c4a46/src/main/java/com/fasterxml/jackson/core/JsonParser.java#L604
   
   I will report back if downgrading the pom to 2.11.4 resolves the issue.


-- 
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.

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



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to