ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Igor Kamyshnikov (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (IGNITE-8788) Getting NullPointerException during commit into cassandra, after reconnecting to ignite server
Date Sat, 29 Sep 2018 11:34:00 GMT

    [ https://issues.apache.org/jira/browse/IGNITE-8788?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16632961#comment-16632961
] 

Igor Kamyshnikov commented on IGNITE-8788:
------------------------------------------

There is one other aspect of this issue.

Let's assume that ignite server config has Cassandra caches A and B. And ignite client config
has A, B and C. If such ignite client joins the cluster it infects it: no other clients would
be able to join this cluster even if they have just A and B caches defined in their configs
(their Ignition.start threads will hang). New Ignite server nodes would not be able to join
the cluster as well (dying with the exception mentioned in the ticket). And even if that "bad"
client leaves the cluster, the cluster cannot be joined by new correct clients and servers.

 

 

> Getting NullPointerException during commit into cassandra, after reconnecting to ignite
server
> ----------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-8788
>                 URL: https://issues.apache.org/jira/browse/IGNITE-8788
>             Project: Ignite
>          Issue Type: Bug
>          Components: cassandra
>            Reporter: Yashasvi Kotamraju
>            Assignee: Igor Rudyak
>            Priority: Major
>
> When ignite client reconnects to restarted ignite server, while commiting data into cassandra NullPointerException 
is observed for random runs.
> caused by: java.lang.NullPointerException 
>         at 
> org.apache.ignite.cache.store.cassandra.persistence.PojoField.getValueFromObject(PojoField.java:167) 
>         at 
> org.apache.ignite.cache.store.cassandra.persistence.PersistenceController.bindValues(PersistenceController.java:450) 
>         at 
> org.apache.ignite.cache.store.cassandra.persistence.PersistenceController.bindKeyValue(PersistenceController.java:202) 
>         at 
> org.apache.ignite.cache.store.cassandra.session.transaction.WriteMutation.bindStatement(WriteMutation.java:58) 
>         at 
> org.apache.ignite.cache.store.cassandra.session.CassandraSessionImpl.execute(CassandraSessionImpl.java:499) 
>  
> After going through the source code 
> there is a suspicion that its a java serialization issue in ignite cassandra 
> module 
> In org.apache.ignite.cache.store.cassandra.persistence.PojoField.java, there 
> is a PojoFieldAccessor instance variable which is transient type, so it will 
> not be part of serialization and if PojoField object is serialized and then 
> deserialized it would have PojoFieldAccessor as null. And in the Exception 
> we are seeing the same, NullPointerException when getValue(..) is called on 
> null PojoFieldAccessor in PojoField.getValueFromObject() method . So when 
> ever PojoField object is serialized and then deserialized we might be 
> observing the issue. 
> Reproducer can be found at:
> http://apache-ignite-users.70518.x6.nabble.com/Getting-NullPointerException-during-commit-into-cassandra-after-reconnecting-to-ignite-server-td22005.html
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message