Well, perhaps it’s a bug (I’ll try to check it on my side later). 

Can you try to annotate InboundData class with “@DefaultCoder(AvroCoder.class)” 
for example and see if it will work?

> On 23 Mar 2023, at 15:13, Juan Cuzmar <jcuz...@protonmail.com> wrote:
> 
> Alexey yes! here it is:
> 
> 
>    import lombok.*;
>    import lombok.extern.jackson.Jacksonized;
> 
>    import java.io.Serializable;
>    import java.util.List;
>    import java.util.Map;
> 
>    @Jacksonized
>    @Builder
>    @Getter
>    @Value
>    @EqualsAndHashCode
>    @ToString
>    public class InboundData implements Serializable {
> 
>        String payload;
>        Map<String, String> attributes;
>        List<Store> stores;
>    }
> 
> 
> ------- Original Message -------
> On Thursday, March 23rd, 2023 at 8:14 AM, Alexey Romanenko 
> <aromanenko....@gmail.com> wrote:
> 
> 
>> Could you share a class declaration of your InboundData class? Is it just a 
>> POJO?
>> 
>> —
>> Alexey
>> 
>>> On 23 Mar 2023, at 08:16, Juan Cuzmar jcuz...@protonmail.com wrote:
>>> 
>>> Hello all,
>>> 
>>> I hope this message finds you well. I am currently working with Apache 
>>> Beam's JdbcIO and need some guidance regarding setting a coder for the 
>>> input data without resorting to the deprecated withCoder method. I've been 
>>> trying to resolve this issue and would appreciate any insights or 
>>> recommendations from the community.
>>> 
>>> Here's a snippet of my code:
>>> 
>>> .apply("Inserting", JdbcIO.<PubsubMessage, InboundData>readAll()
>>> .withDataSourceProviderFn(DataSourceProvider.of(dbConfig))
>>> ...
>>> .withRowMapper(resultSet -> {
>>> // Mapping logic here
>>> }).withOutputParallelization(false)
>>> ).setCoder(SerializableCoder.of(InboundData.class))
>>> 
>>> When I run the code, I encounter the following error:
>>> 
>>> java.lang.IllegalStateException: Unable to infer a coder for 
>>> JdbcIO.readAll() transform.
>>> ...
>>> 
>>> I understand that the withCoder method is marked as deprecated and should 
>>> be avoided. Therefore, I would like to know the recommended way to set the 
>>> coder for JdbcIO, considering the deprecated status of withCoder.
>>> 
>>> If there are any specific coding practices or conventions that I should 
>>> follow when posting code snippets or emphasizing certain aspects, please 
>>> let me know, and I'll be sure to adhere to them in the future.
>>> 
>>> Thank you for your time and assistance.
>>> 
>>> Best regards!

Reply via email to