You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by shivakumar <sh...@gmail.com> on 2019/06/13 17:56:28 UTC

Row count [select count(*) from table] not matching with the actual row count present in the table

To reproduce, create a sample table using JDBC endpoint:

CREATE TABLE person(Id VARCHAR, birthTime TIMESTAMP, name VARCHAR, PRIMARY
KEY(Id)) WITH "TEMPLATE=templateEternal,CACHE_NAME=person,
KEY_TYPE=personKey,VALUE_TYPE=person";

 

and configure cache expiry policy as below 

<property name="cacheConfiguration">
<list>
<bean id="cache-template-bean" abstract="true"
class="org.apache.ignite.configuration.CacheConfiguration">
<property name="name" value="templateEternal*"/>
<property name="cacheMode" value="PARTITIONED"/>
<property name="backups" value="1"/>
<property name="groupName" value="groupEternal"/>
<property name="expiryPolicyFactory">
<bean class="javax.cache.expiry.CreatedExpiryPolicy"
factory-method="factoryOf">
<constructor-arg>
<bean class="javax.cache.expiry.Duration">
<constructor-arg value="SECONDS"/>
<constructor-arg value="600"/>
</bean>
</constructor-arg>
</bean>
</property>
</bean>
</list>
</property>

with above cache configuration records will start expiring at the end of 10
minute, batch insert around 10000 records to the table and after 10 minute
records will start expiring but after some time check the records count
[select count(*) from person] most of the time it will show some non zero
number but if rows are selected instead of count to see the actual data with
[select * from person]  there will be zero rows.

why count is not becoming zero even though there are now data (rows) in the
table ?

0: jdbc:ignite:thin://10...*:10800> select count from person;
--------------------------------

COUNT
--------------------------------

70
--------------------------------
1 row selected (0.004 seconds)
0: jdbc:ignite:thin://10...*:10800> select * from person;
-------------------------------------------------------------+--------------------------------------------------------------+--------------------------------

ID	BIRTHTIME	NAME
-------------------------------------------------------------+--------------------------------------------------------------+--------------------------------
-------------------------------------------------------------+--------------------------------------------------------------+--------------------------------
No rows selected (0.015 seconds)
0: jdbc:ignite:thin://10...*:10800>



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Re: Row count [select count(*) from table] not matching with the actual row count present in the table

Posted by "Maxim.Pudov" <pu...@gmail.com>.
Looks like a problem indeed. Evgenii already assigned the ticket to himself.
Once the issue is fixed it will be included in the next release. Thank you
for revealing the problem!



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Re: Row count [select count(*) from table] not matching with the actual row count present in the table

Posted by shivakumar <sh...@gmail.com>.
HI 
Any Idea on this issue ? 
I have created Jira bug for this issue
https://issues.apache.org/jira/browse/IGNITE-11917


regars,
shiva



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/