Skip to content

Expose or log error response from Registry in serdes #5236

Open
@jsenko

Description

@jsenko

Since the serdes communicates with Registry via cache, when Registry returns an error response, it is shadowed by an unhelpful cache error, e.g.:

Failed to update cache value for key: {"type":"record","name":"Key","namespace":"inventory_connector_postgresql1727173403473.inventory.customers","fields":[{"name":"id","type":{"type":"int","connect.default":0},"default":0}],"connect.name":"inventory_connector_postgresql1727173403473.inventory.customers.Key"}   [io.apicurio.registry.resolver.ERCache]
io.apicurio.registry.rest.client.exception.RestClientException
	at io.apicurio.registry.rest.client.impl.ErrorHandler.parseError(ErrorHandler.java:95)
	at io.apicurio.rest.client.JdkHttpClient.sendRequest(JdkHttpClient.java:207)
	at io.apicurio.registry.rest.client.impl.RegistryClientImpl.createArtifact(RegistryClientImpl.java:311)
	at io.apicurio.registry.rest.client.RegistryClient.createArtifact(RegistryClient.java:147)
	at io.apicurio.registry.resolver.DefaultSchemaResolver.lambda$handleAutoCreateArtifact$3(DefaultSchemaResolver.java:278)
	at io.apicurio.registry.resolver.ERCache.lambda$getValue$0(ERCache.java:201)
	at io.apicurio.registry.resolver.ERCache.retry(ERCache.java:254)
	at io.apicurio.registry.resolver.ERCache.getValue(ERCache.java:200)
	at io.apicurio.registry.resolver.ERCache.getByContent(ERCache.java:175)
	at io.apicurio.registry.resolver.DefaultSchemaResolver.handleAutoCreateArtifact(DefaultSchemaResolver.java:276)
	at io.apicurio.registry.resolver.DefaultSchemaResolver.getSchemaFromRegistry(DefaultSchemaResolver.java:123)
	at io.apicurio.registry.resolver.DefaultSchemaResolver.resolveSchema(DefaultSchemaResolver.java:91)
	at io.apicurio.registry.serde.AbstractKafkaSerializer.serialize(AbstractKafkaSerializer.java:83)
	at io.apicurio.registry.utils.converter.SerdeBasedConverter.fromConnectData(SerdeBasedConverter.java:122)

Improve error handling to expose the underlying error response from Registry.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    • Status

      Backlog

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions