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

Daniel Dai commented on PIG-4068:
---------------------------------

+1

> ObjectCache cause ClassCastException
> ------------------------------------
>
>                 Key: PIG-4068
>                 URL: https://issues.apache.org/jira/browse/PIG-4068
>             Project: Pig
>          Issue Type: Sub-task
>          Components: tez
>            Reporter: Cheolsoo Park
>            Assignee: Cheolsoo Park
>             Fix For: 0.14.0
>
>         Attachments: PIG-4068-1.patch
>
>
> Here is stack trace-
> {code}
> 2014-07-23 20:19:41,503 INFO [TezChild] 
> org.apache.tez.runtime.task.TezTaskRunner: Encounted an error while executing 
> task: attempt_1405989231017_0003_1_10_000087_2
> java.lang.ClassCastException: java.lang.Boolean cannot be cast to 
> java.util.Map
>     at 
> org.apache.pig.backend.hadoop.executionengine.tez.PigProcessor.collectSample(PigProcessor.java:345)
>     at 
> org.apache.pig.backend.hadoop.executionengine.tez.PigProcessor.initializeInputs(PigProcessor.java:255)
>     at 
> org.apache.pig.backend.hadoop.executionengine.tez.PigProcessor.run(PigProcessor.java:183)
>     at 
> org.apache.tez.runtime.LogicalIOProcessorRuntimeTask.run(LogicalIOProcessorRuntimeTask.java:315)
>     at 
> org.apache.tez.runtime.task.TezTaskRunner$TaskRunnerCallable$1.run(TezTaskRunner.java:180)
>     at 
> org.apache.tez.runtime.task.TezTaskRunner$TaskRunnerCallable$1.run(TezTaskRunner.java:172)
>     at java.security.AccessController.doPrivileged(Native Method)
>     at javax.security.auth.Subject.doAs(Subject.java:415)
>     at 
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
>     at 
> org.apache.tez.runtime.task.TezTaskRunner$TaskRunnerCallable.call(TezTaskRunner.java:172)
>     at 
> org.apache.tez.runtime.task.TezTaskRunner$TaskRunnerCallable.call(TezTaskRunner.java:167)
>     at java.util.concurrent.FutureTask.run(FutureTask.java:262)
>     at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>     at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>     at java.lang.Thread.run(Thread.java:745)
> {code}
> The problem is that {{PigProcessor.collectSample()}} and 
> {{POPartitionRearrangeTez.init()}} use the same cache key for different 
> objects (Map vs. Boolean)-
> {code:title=PigProcessor.java}
> String quantileMapCacheKey = "sample-" + sampleVertex  + ".cached";
> sampleMap = (Map<String, 
> Object>)ObjectCache.getInstance().retrieve(quantileMapCacheKey);{code}
> {code:title=POPartitionRearrangeTez.java}
> String isCachedKey = "sample-" + PigProcessor.sampleVertex + ".cached";
> ...
> cache.cache(isCachedKey, Boolean.TRUE);
> {code}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to