Skip to content

Jackson 2.19.0 issues #7036

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
manusa opened this issue Apr 25, 2025 · 1 comment
Open

Jackson 2.19.0 issues #7036

manusa opened this issue Apr 25, 2025 · 1 comment

Comments

@manusa
Copy link
Member

manusa commented Apr 25, 2025

          Just FYI: We use Jackson in our K8s related projects and also got this update via Renovate today. We are using Gradle, so bumping Jackson in our dependencies will indirectly also bump it for the fabric8 client. I've seen two issues so far (just in case those are not covered by the existing tests).

NullPointerException

No further invesigation, but saw this stack trace in one of our update PRs:

Caused by: com.fasterxml.jackson.databind.JsonMappingException: Cannot invoke "com.fasterxml.jackson.databind.JsonSerializer.serialize(Object, com.fasterxml.jackson.core.JsonGenerator, com.fasterxml.jackson.databind.SerializerProvider)" because "keySerializer" is null (through reference chain: io.fabric8.kubernetes.api.model.ConfigMap["metadata"]->io.fabric8.kubernetes.api.model.ObjectMeta["managedFields"]->java.util.ArrayList[0]->io.fabric8.kubernetes.api.model.ManagedFieldsEntry["fieldsV1"]->io.fabric8.kubernetes.api.model.FieldsV1["getAdditionalProperties"]->java.util.LinkedHashMap["f:data"])
	at app//com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:400)
	at app//com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:359)
	at app//com.fasterxml.jackson.databind.ser.std.StdSerializer.wrapAndThrow(StdSerializer.java:324)
	at app//com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeFields(MapSerializer.java:810)
	at app//com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithoutTypeInfo(MapSerializer.java:763)
	at app//com.fasterxml.jackson.databind.ser.AnyGetterWriter.getAndSerialize(AnyGetterWriter.java:81)
	at app//com.fasterxml.jackson.databind.ser.AnyGetterWriter.serializeAsField(AnyGetterWriter.java:89)
	at app//io.fabric8.kubernetes.model.jackson.BeanPropertyWriterDelegate.serializeAsField(BeanPropertyWriterDelegate.java:68)
	at app//com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:760)
	at app//com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:183)
	at app//com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:732)
	at app//io.fabric8.kubernetes.model.jackson.BeanPropertyWriterDelegate.serializeAsField(BeanPropertyWriterDelegate.java:68)
	at app//com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:760)
	at app//com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:183)
	at app//com.fasterxml.jackson.databind.ser.impl.IndexedListSerializer.serializeContents(IndexedListSerializer.java:119)
	at app//com.fasterxml.jackson.databind.ser.impl.IndexedListSerializer.serialize(IndexedListSerializer.java:79)
	at app//com.fasterxml.jackson.databind.ser.impl.IndexedListSerializer.serialize(IndexedListSerializer.java:18)
	at app//com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:732)
	at app//io.fabric8.kubernetes.model.jackson.BeanPropertyWriterDelegate.serializeAsField(BeanPropertyWriterDelegate.java:68)
	at app//com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:760)
	at app//com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:183)
	at app//com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:732)
	at app//io.fabric8.kubernetes.model.jackson.BeanPropertyWriterDelegate.serializeAsField(BeanPropertyWriterDelegate.java:68)
	at app//com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:760)
	at app//com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:183)
	at app//com.fasterxml.jackson.databind.ser.DefaultSerializerProvider._serialize(DefaultSerializerProvider.java:503)
	at app//com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:342)
	at app//com.fasterxml.jackson.databind.ObjectMapper._writeValueAndClose(ObjectMapper.java:4859)
	at app//com.fasterxml.jackson.databind.ObjectMapper.writeValueAsString(ObjectMapper.java:4079)
	at app//io.fabric8.kubernetes.client.utils.KubernetesSerialization.asJson(KubernetesSerialization.java:172)
	... 10 more
Caused by: java.lang.NullPointerException: Cannot invoke "com.fasterxml.jackson.databind.JsonSerializer.serialize(Object, com.fasterxml.jackson.core.JsonGenerator, com.fasterxml.jackson.databind.SerializerProvider)" because "keySerializer" is null
	at com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeFields(MapSerializer.java:796)
	... 36 more

CRD generation

With this Gradle build script the generated CRD has a ton of new additionalProperties:

getAdditionalProperties:
  additionalProperties:
    type: "object"
  type: "object"

Originally posted by @Donnerbart in #7035 (comment)

@manusa manusa changed the title Just FYI: We use Jackson in our K8s related projects and also got this update via Renovate today. We are using Gradle, so bumping Jackson in our dependencies will indirectly also bump it for the fabric8 client. I've seen two issues so far (just in case those are not covered by the existing tests). Jackson 2.19.0 issues Apr 25, 2025
r1c4r60 added a commit to r1c4r60/kubernetes-client that referenced this issue Apr 28, 2025
r1c4r60 added a commit to r1c4r60/kubernetes-client that referenced this issue Apr 28, 2025
r1c4r60 added a commit to r1c4r60/kubernetes-client that referenced this issue May 2, 2025
@JuergenKindler
Copy link

JuergenKindler commented May 2, 2025

Also see this happening - breaks applying kubectl manifests we use.
( Got hit by that via dependabot automatically updating from 7.1.0 to 7.2.0 )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants