Return-Path: X-Original-To: apmail-hadoop-mapreduce-issues-archive@minotaur.apache.org Delivered-To: apmail-hadoop-mapreduce-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 856C617EF5 for ; Thu, 16 Apr 2015 01:42:00 +0000 (UTC) Received: (qmail 52903 invoked by uid 500); 16 Apr 2015 01:42:00 -0000 Delivered-To: apmail-hadoop-mapreduce-issues-archive@hadoop.apache.org Received: (qmail 52842 invoked by uid 500); 16 Apr 2015 01:42:00 -0000 Mailing-List: contact mapreduce-issues-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: mapreduce-issues@hadoop.apache.org Delivered-To: mailing list mapreduce-issues@hadoop.apache.org Received: (qmail 52831 invoked by uid 99); 16 Apr 2015 01:42:00 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 16 Apr 2015 01:42:00 +0000 Date: Thu, 16 Apr 2015 01:42:00 +0000 (UTC) From: "Sangjin Lee (JIRA)" To: mapreduce-issues@hadoop.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (MAPREDUCE-6293) uberized job fails with the job classloader enabled MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/MAPREDUCE-6293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14497445#comment-14497445 ] Sangjin Lee commented on MAPREDUCE-6293: ---------------------------------------- Thanks [~jira.shegalov] for the review! I checked for null there in the abundance of caution because if {{jobClassLoader}} was null {{setContextClassLoader()}} would also set the thread's context classloader to null. If the inherited context classloader was not null initially, then it would have an effect of nulling out that TCCL. So to be safe, we should not be calling {{setContextClassLoader()}} unless we're truly overriding it, no? > uberized job fails with the job classloader enabled > --------------------------------------------------- > > Key: MAPREDUCE-6293 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-6293 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: mr-am > Affects Versions: 2.6.0 > Reporter: Sangjin Lee > Assignee: Sangjin Lee > Attachments: MAPREDUCE-6293.001.patch > > > An uberized job fails if the job classloader is enabled and the job needs to use the thread context classloader to load a class. Some example error in the log: > {quote} > 2015-03-23 23:28:34,675 INFO [main\] org.apache.hadoop.mapreduce.v2.util.MRApps: Creating job classloader > ... > 2015-03-23 23:28:42,096 ERROR [uber-SubtaskRunner\] cascading.provider.ServiceLoader: unable to find service class: cascading.tuple.hadoop.collect.HadoopTupleMapFactory, with exception: java.lang.ClassNotFoundException: cascading.tuple.hadoop.collect.HadoopTupleMapFactory > {quote} -- This message was sent by Atlassian JIRA (v6.3.4#6332)