Github user JamesRTaylor commented on the pull request:

    https://github.com/apache/phoenix/pull/12#issuecomment-55311741
  
    Multiple CF tests: MultiCfQueryExecIT, one CF tests: QueryIT, no CF tests: 
KeyOnlyIT. Queries across multiple regions: Any time a table is pre-split. For 
example, see BaseQueryIT, when we initialize ATABLE, we pass in 
getDefaultSplits(tenantId) which forces the rows to be split across multiple 
regions.
    
        @Before
        public void initTable() throws Exception {
             ts = nextTimestamp();
            initATableValues(tenantId, getDefaultSplits(tenantId), date=new 
Date(System.currentTimeMillis()), ts);
            if (indexDDL != null && indexDDL.length() > 0) {
                Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
                props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, 
Long.toString(ts));
                Connection conn = DriverManager.getConnection(getUrl(), props);
                conn.createStatement().execute(indexDDL);
            }
        }
    
    Any table initialized in the static block of BaseTest may be split into 
multiple regions at initialization time. You'll get some decent coverage if you 
set the "number of bytes before adding a guidepost" parameter very low, so that 
basically after a single row you'll get a guidepost. We might be ok starting 
with that as long as you add specific test cases that test the lifecycle of 
these guideposts: adding the expected number for a given table with data across 
multiple regions, adding data to the table, re-analyzing removes old guideposts 
and adds new ones, a split cleans up the old ones and adds new ones, 
multi-tenant table with an analyze against it (i.e. testing a "partial" 
analyze). Then maybe some lower level ones that test your changes to 
DefaultParallelIteratorRegionSplitter.getSplits() and the merge bisect logic 
there.



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to