Hi,

Looks like your listener is statefull and holds a connection object that is
transfered to remote node.
Try to move connection to out of listener.

On Thu, Nov 16, 2017 at 3:42 AM, gunman524 <[email protected]> wrote:

> Hi guys,
>
> I met a issue that "Duplicate field ID" Error occurs when register a
> contentious query.
>
> Here is my case:
>
> 1. Start a jdbc client and use SQL to create table and insert record
>
> 2. Start  a another client and using contentious query to monitor table and
> insert the income data to another Mysql DB using Mybatis in
> setLocalListener
>
> But that error might  occur sometimes when data injecting and  Listener
> registering
>
> javax·cach.Exception:clas,org.apach.ignite.binary.Binarvobl.
> ctException:Duplicat.fieldID:profil.SQL
>  at
> org.apache.ignite.internal.processors.cache.igniteCacheProxylmpl.query(
> ignitegcheProxyImpl.iava:597)
> at
> org.apache.ignite.internal.processors.cache.GatewayProtectedCacheProxy.
> query(GatewayProtectedcacheProxy.java:368)
>
> After deep analyze, we fond mySQL jdbc driver has to method, profileSQL and
> profileSql, and they will have same hascode after serialization
>
> private com.mysql.jdbc.ConnectionPropertiesImpl$BooleanConnectionProperty
> com.mysql.jdbc.ConnectionPropertiesImpl.profileSQL
>
> My question is, why Ignite need  to serialize mysql driver? Does it mean
> the
> code in setLocalListener need to send to Ignite cluster?
>
> How can we avoid this issue?
>
> Many thanks
>
>
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>



-- 
Best regards,
Andrey V. Mashenkov

Reply via email to