[ 
https://issues.apache.org/jira/browse/FLINK-29860?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Noel O'Connor updated FLINK-29860:
----------------------------------
    Description: 
When using a HybridSource with a set of pulsar sources submitting a job to a 
flink cluster results in the following error

------------------------------------------------------------
 The program finished with the following exception:

The implementation of the BlockElement is not serializable. The object probably 
contains or references non serializable fields.
    org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:164)
    org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:132)
    org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:132)
    org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:132)
    org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:132)
    org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:69)
    
org.apache.flink.connector.base.source.hybrid.HybridSource$HybridSourceBuilder.addSource(HybridSource.java:246)
    
org.apache.flink.connector.base.source.hybrid.HybridSource$HybridSourceBuilder.addSource(HybridSource.java:233)
    
org.apache.flink.connector.base.source.hybrid.HybridSource.builder(HybridSource.java:104)

 

I think this is related to https://issues.apache.org/jira/browse/FLINK-25444

>From a pulsar connector perspective it's simple fixed, just mark the "private 
>final InlineElement desc" attribute in 
>flink-connectors/flink-connector-pulsar/src/main/java/org/apache/flink/connector/pulsar/source/config/CursorVerification.java
> as transient to avoid the serialisation process.

 

I've tested this and it seems to solve the issue. I can submit a PR with this 
fix.

 

  was:
When using a HybridSource with a set of pulsar sources submitting a job to a 
flink cluster results in the following error

------------------------------------------------------------
 The program finished with the following exception:

The implementation of the BlockElement is not serializable. The object probably 
contains or references non serializable fields.
    org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:164)
    org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:132)
    org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:132)
    org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:132)
    org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:132)
    org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:69)
    
org.apache.flink.connector.base.source.hybrid.HybridSource$HybridSourceBuilder.addSource(HybridSource.java:246)
    
org.apache.flink.connector.base.source.hybrid.HybridSource$HybridSourceBuilder.addSource(HybridSource.java:233)
    
org.apache.flink.connector.base.source.hybrid.HybridSource.builder(HybridSource.java:104)

 

I think this is related to https://issues.apache.org/jira/browse/FLINK-25444

>From a pulsar connector perspective it's simple fixed, just mark the "private 
>final InlineElement desc" attribute in 
>flink-connectors/flink-connector-pulsar/src/main/java/org/apache/flink/connector/pulsar/source/config/CursorVerification.java

 

I've tested this and it seems to solve the issue. I can submit a PR with this 
fix.

 


> Pulsar connector bug when using Hybrid.Builder
> ----------------------------------------------
>
>                 Key: FLINK-29860
>                 URL: https://issues.apache.org/jira/browse/FLINK-29860
>             Project: Flink
>          Issue Type: Bug
>          Components: Connectors / Pulsar
>    Affects Versions: 1.6.4
>            Reporter: Noel O'Connor
>            Priority: Major
>
> When using a HybridSource with a set of pulsar sources submitting a job to a 
> flink cluster results in the following error
> ------------------------------------------------------------
>  The program finished with the following exception:
> The implementation of the BlockElement is not serializable. The object 
> probably contains or references non serializable fields.
>     org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:164)
>     org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:132)
>     org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:132)
>     org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:132)
>     org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:132)
>     org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:69)
>     
> org.apache.flink.connector.base.source.hybrid.HybridSource$HybridSourceBuilder.addSource(HybridSource.java:246)
>     
> org.apache.flink.connector.base.source.hybrid.HybridSource$HybridSourceBuilder.addSource(HybridSource.java:233)
>     
> org.apache.flink.connector.base.source.hybrid.HybridSource.builder(HybridSource.java:104)
>  
> I think this is related to https://issues.apache.org/jira/browse/FLINK-25444
> From a pulsar connector perspective it's simple fixed, just mark the "private 
> final InlineElement desc" attribute in 
> flink-connectors/flink-connector-pulsar/src/main/java/org/apache/flink/connector/pulsar/source/config/CursorVerification.java
>  as transient to avoid the serialisation process.
>  
> I've tested this and it seems to solve the issue. I can submit a PR with this 
> fix.
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to