2017-12-18 21 views
1

!table 명령은 두 개의 중복 된 tableName을 보여줍니다. DIMSTAT 클래스 eq. DimStat.java는, 아래 코드는 보여줍니다sqlline.sh에서`! table '을 사용하여 중복 테이블을 보여줍니다.

Ignition.setClientMode(true); 
    Ignition.start(ConfigUtils.getIgniteCfg("127.0.0.1:47500..47509")); 
    CacheConfiguration<String, DimStat> ccf = new CacheConfiguration<>(); 
    ccf.setSqlSchema("PUBLIC"); 
    ccf.setBackups(2); 
    ccf.setName("DIMSTAT"); 
    ccf.setIndexedTypes(String.class, DimStat.class); // DimStat 
    ccf.setExpiryPolicyFactory(CreatedExpiryPolicy.factoryOf(new Duration(TimeUnit.DAYS, 1))); 
    IgniteCache<String, Dim_Stat> cache = Ignition.ignite().getOrCreateCache(ccf); 

!table result using DimStat.class

을하지만, 사용 Dim_Stat.java

!table result using Dim_Stat.class

+0

그것은 JDBC 드라이버의 버그처럼 보인다. 'CacheConfiguration.setIndexedTypes()'는 JDBC 드라이버가 테이블 이름을 두 번 보내도록합니다. 해결 방법으로 DDL 명령 https://apacheignite-sql.readme.io/docs/ddl을 사용하는 것이 좋습니다. 다음 예제도 도움이 될 것입니다. https://github.com/apache/ignite/blob/master /examples/src/main/java/org/apache/ignite/examples/datagrid/CacheQueryDdlExample.java – sk0x50

답변