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