I am developing regression test for the small scanner feature. In order to test the logic, I created 2 tables with roughly 4000 bytes row size and one has default 64K hbase block size, the other has 128K.
By doing an explain select * from t1311k where uniq>2 and uniq <30, I am expecting that the 29 rows scanned will be ether bellow or above the hbase block size when hitting the 64 or 128 K block table. However in order for the compiler/optimizer to accurately evaluate row accessed, I update statistics on both tables. Scripting all this on a test, it does not work, as it appears that the update statistics is not having any effect. If I close sqlci, and restart, then the correct behavior happen. So I intuit that the NATable associated with my tables are cached, for each session, and that update statistics is not invalidating the cache. Am I right? If so, is there a programmatic way to force the NATable cache to refresh? Eric
