You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "shivakumar (JIRA)" <ji...@apache.org> on 2019/06/13 17:48:00 UTC

[jira] [Created] (IGNITE-11917) Row count [select count(*) from table] not matching with the actual row count present in the table

shivakumar created IGNITE-11917:
-----------------------------------

             Summary: Row count [select count(*) from table] not matching with the actual row count present in the table 
                 Key: IGNITE-11917
                 URL: https://issues.apache.org/jira/browse/IGNITE-11917
             Project: Ignite
          Issue Type: Bug
          Components: sql
    Affects Versions: 2.7
            Reporter: shivakumar


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 start expiring  but after some time check the records count [select count(*) from person] it should show some non zero number but if rows are selected instead of count to see the actual data with [select * from person] [select * from person] there will be zero rows.

why count is not becoming zero?

 

 


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>



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