[ 
https://issues.apache.org/jira/browse/PHOENIX-2074?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14613275#comment-14613275
 ] 

Josh Mahonin commented on PHOENIX-2074:
---------------------------------------

I'm not sure if this is the same issue or not, but I'm running into something 
similar with 4.4.0 with one of my spark jobs. This appears to be a regression 
from 4.3.1. I don't yet have a lot of detail yet, but I am seeing the following 
output from Spark:

java.lang.StackOverflowError
        at 
org.apache.phoenix.iterate.RoundRobinResultIterator$RoundRobinIterator.next(RoundRobinResultIterator.java:309)
        at 
org.apache.phoenix.iterate.RoundRobinResultIterator$RoundRobinIterator.next(RoundRobinResultIterator.java:309)
        at 
org.apache.phoenix.iterate.RoundRobinResultIterator$RoundRobinIterator.next(RoundRobinResultIterator.java:309)

It's a bit difficult to update the cluster I'm seeing this on right now, so I 
won't be able to test out this patch readily until I can get another 
environment up and load the dataset in. I can say that there are no JOINs 
involved, as this is going through the spark -> mapreduce pipeline. There's a 
few SELECTs happening at the same time, but my guess is it's failing on the one 
dataset which is quite a lot larger than the others at 6632640 rows.

The SELECT itself isn't complicated, I believe it's getting translated to 
something like:
SELECT ETYPE,EID,M,E FROM WD WHERE TID = '???';

Where the DDL is approximately:
CREATE TABLE IF NOT EXISTS WD(
  TID CHAR(3) NOT NULL,
  ETYPE CHAR(3) NOT NULL,
  EID VARCHAR NOT NULL,
  M INTEGER NOT NULL,
  E DOUBLE
  CONSTRAINT pk PRIMARY KEY (TID, ETYPE, EID, M)) MULTI_TENANT=true, 
COMPRESSION='SNAPPY', KEEP_DELETED_CELLS = false;

I don't see the same issues with the same job, on a similar dataset where the 
231840 rows. Note that it's hitting the same table, just with a different TID.

I'll keep digging at it, and am willing and able to help out and test any 
patches, this is pretty high priority for me to get working again.

> StackOverflowError for hash join with round robin
> -------------------------------------------------
>
>                 Key: PHOENIX-2074
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-2074
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: James Taylor
>         Attachments: PHOENIX-2074.patch
>
>
> EVENTS Table has id,article, and more columns. Id is the primay key
> MAPPING Table has id,article,category columns. Id is the primay key
> There is index on article column of both the tables.
> Below is the query. 
> select count(MAPPING.article) as cnt,MAPPING.category from EVENTS
> join
> MAPPING on MAPPING.article = EVENTS.article
> group by category order by cnt ;
> Here's the stack trace:
> {code}
> Error: Encountered exception in sub plan [0] execution. (state=,code=0)
> java.sql.SQLException: Encountered exception in sub plan [0] execution.
>         at 
> org.apache.phoenix.execute.HashJoinPlan.iterator(HashJoinPlan.java:156)
>         at 
> org.apache.phoenix.jdbc.PhoenixStatement$1.call(PhoenixStatement.java:251)
>         at 
> org.apache.phoenix.jdbc.PhoenixStatement$1.call(PhoenixStatement.java:241)
>         at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
>         at 
> org.apache.phoenix.jdbc.PhoenixStatement.executeQuery(PhoenixStatement.java:240)
>         at 
> org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:1250)
>         at sqlline.Commands.execute(Commands.java:822)
>         at sqlline.Commands.sql(Commands.java:732)
>         at sqlline.SqlLine.dispatch(SqlLine.java:808)
>         at sqlline.SqlLine.begin(SqlLine.java:681)
>         at sqlline.SqlLine.start(SqlLine.java:398)
>         at sqlline.SqlLine.main(SqlLine.java:292)
> Caused by: java.lang.StackOverflowError
>         at 
> org.apache.phoenix.iterate.RoundRobinResultIterator$RoundRobinIterator.close(RoundRobinResultIterator.java:298)
>         at 
> org.apache.phoenix.iterate.RoundRobinResultIterator$RoundRobinIterator.close(RoundRobinResultIterator.java:298)
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to