You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Yashasvi Kotamraju (JIRA)" <ji...@apache.org> on 2018/06/14 06:56:00 UTC

[jira] [Created] (IGNITE-8788) Getting NullPointerException during commit into cassandra, after reconnecting to ignite server

Yashasvi Kotamraju created IGNITE-8788:
------------------------------------------

             Summary: 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


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)