Re: [PR] DRILL-8482:Assign region throw exception when some region is deployed… (drill)

2024-03-01 Thread via GitHub


shfshihuafeng commented on PR #2885:
URL: https://github.com/apache/drill/pull/2885#issuecomment-1974124079

   @cgivre yes , when hbase region  are distributed as follows  , you select * 
from table , we do not get result.
   
   ```
   NavigableMap regionsToScan = Maps.newTreeMap();
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[0], splits[1]), 
SERVER_A);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[1], splits[2]), 
SERVER_A);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[2], splits[3]), 
SERVER_B);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[3], splits[4]), 
SERVER_B);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[6], splits[7]), 
SERVER_D);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[7], splits[8]), 
SERVER_D);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[8], splits[9]), 
SERVER_D);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[9], splits[10]), 
SERVER_D);
   final List endpoints = Lists.newArrayList();
   
endpoints.add(DrillbitEndpoint.newBuilder().setAddress(HOST_A).setControlPort(1234).build());
   
endpoints.add(DrillbitEndpoint.newBuilder().setAddress(HOST_B).setControlPort(1234).build());
   
endpoints.add(DrillbitEndpoint.newBuilder().setAddress(HOST_C).setControlPort(1234).build());
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@drill.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



Re: [PR] DRILL-8482:Assign region throw exception when some region is deployed… (drill)

2024-03-01 Thread via GitHub


cgivre commented on PR #2885:
URL: https://github.com/apache/drill/pull/2885#issuecomment-1973318466

   @shfshihuafeng Is this a bug?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@drill.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



Re: [I] Assign region throw exception when some region is deployed on affinity node and some on non-affinity node (drill)

2024-03-01 Thread via GitHub


shfshihuafeng commented on issue #2886:
URL: https://github.com/apache/drill/issues/2886#issuecomment-1972764785

   
[0001-DRILL-8482-Assign-region-throw-exception-when-some-r.patch](https://github.com/apache/drill/files/14458628/0001-DRILL-8482-Assign-region-throw-exception-when-some-r.patch)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@drill.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[I] Assign region throw exception when some region is deployed on affinity node and some on non-affinity node (drill)

2024-03-01 Thread via GitHub


shfshihuafeng opened a new issue, #2886:
URL: https://github.com/apache/drill/issues/2886

   Before submitting a bug report, please verify that you are using the most 
current version of Drill.  
   
   **Describe the bug**
   Assign region throw exception when some region is deployed on affinity node 
and some on non-affinity node
   
   **To Reproduce**
   Steps to reproduce the behavior:
   NavigableMap regionsToScan = Maps.newTreeMap();
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[0], splits[1]), 
SERVER_A);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[1], splits[2]), 
SERVER_A);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[2], splits[3]), 
SERVER_B);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[3], splits[4]), 
SERVER_B);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[6], splits[7]), 
SERVER_D);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[7], splits[8]), 
SERVER_D);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[8], splits[9]), 
SERVER_D);
   regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[9], splits[10]), 
SERVER_D);
   final List endpoints = Lists.newArrayList();
   
endpoints.add(DrillbitEndpoint.newBuilder().setAddress(HOST_A).setControlPort(1234).build());
   
endpoints.add(DrillbitEndpoint.newBuilder().setAddress(HOST_B).setControlPort(1234).build());
   
endpoints.add(DrillbitEndpoint.newBuilder().setAddress(HOST_C).setControlPort(1234).build());
   
   HBaseGroupScan scan = new HBaseGroupScan();
   scan.setRegionsToScan(regionsToScan);
   scan.setHBaseScanSpec(new HBaseScanSpec(TABLE_NAME_STR, splits[0], 
splits[0], null));
   scan.applyAssignments(endpoints);
   
   **Expected behavior**
   ```
A has 3 regions
   
B has 2 regions
   
C has 3 regions
   ```
   
   **Error detail, log output or screenshots**
   ```
   Caused by: java.lang.NullPointerException: null
           at 
org.apache.drill.exec.store.hbase.HBaseGroupScan.applyAssignments(HBaseGroupScan.java:283)
   ```
   
   **Drill version**
   The version of Drill you encountered the issue in.
   
   **Additional context**
   Add any other context about the problem here.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@drill.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[PR] DRILL-8482:Assign region throw exception when some region is deployed… (drill)

2024-03-01 Thread via GitHub


shfshihuafeng opened a new pull request, #2885:
URL: https://github.com/apache/drill/pull/2885

   … on affinity node and some on non-affinity node
   
   # [DRILL-8482](https://issues.apache.org/jira/browse/DRILL-8482): 
   
   Assign region throw exception when some region is deployed on affinity node 
and some on non-affinity node
   
   ## Description
   
Assign region throw exception when some region is deployed on affinity node 
and some on non-affinity node。
   
   ## Documentation
   (Please describe user-visible changes similar to what should appear in the 
Drill documentation.)
   
   ## Testing
 
   Refer to unit test cases on 
TestHBaseRegionScanAssignments#testHBaseGroupScanAssignmentSomeAfinedAndSomeWithOrphans


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@drill.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[jira] [Created] (DRILL-8482) Assign region throw exception when some region is deployed on affinity node and some on non-affinity node

2024-03-01 Thread shihuafeng (Jira)
shihuafeng created DRILL-8482:
-

 Summary: Assign region throw exception when some region is 
deployed on affinity node and some on non-affinity node
 Key: DRILL-8482
 URL: https://issues.apache.org/jira/browse/DRILL-8482
 Project: Apache Drill
  Issue Type: Bug
  Components: Storage - HBase
Affects Versions: 1.21.1
Reporter: shihuafeng
 Fix For: 1.22.0


*Describe the bug*
   Assign region throw exception when some region is deployed on affinity node 
and some on non-affinity node。

*To Reproduce*
Steps to reproduce the behavior:
 # 
{code:java}
NavigableMap regionsToScan = Maps.newTreeMap();
regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[0], splits[1]), SERVER_A);
regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[1], splits[2]), SERVER_A);
regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[2], splits[3]), SERVER_B);
regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[3], splits[4]), SERVER_B);
regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[6], splits[7]), SERVER_D);
regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[7], splits[8]), SERVER_D);
regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[8], splits[9]), SERVER_D);
regionsToScan.put(new HRegionInfo(TABLE_NAME, splits[9], splits[10]), SERVER_D);
final List endpoints = Lists.newArrayList();
endpoints.add(DrillbitEndpoint.newBuilder().setAddress(HOST_A).setControlPort(1234).build());
endpoints.add(DrillbitEndpoint.newBuilder().setAddress(HOST_B).setControlPort(1234).build());
endpoints.add(DrillbitEndpoint.newBuilder().setAddress(HOST_C).setControlPort(1234).build());

HBaseGroupScan scan = new HBaseGroupScan();
scan.setRegionsToScan(regionsToScan);
scan.setHBaseScanSpec(new HBaseScanSpec(TABLE_NAME_STR, splits[0], splits[0], 
null));
scan.applyAssignments(endpoints);{code}

*Expected behavior*
 

*Error detail, log output or screenshots*
{code:java}
Caused by: java.lang.NullPointerException: null
        at 
org.apache.drill.exec.store.hbase.HBaseGroupScan.applyAssignments(HBaseGroupScan.java:283){code}
 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)