Return-Path: X-Original-To: apmail-hadoop-common-user-archive@www.apache.org Delivered-To: apmail-hadoop-common-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id E1FE1EDAD for ; Tue, 19 Mar 2013 16:20:46 +0000 (UTC) Received: (qmail 20639 invoked by uid 500); 19 Mar 2013 16:20:41 -0000 Delivered-To: apmail-hadoop-common-user-archive@hadoop.apache.org Received: (qmail 20537 invoked by uid 500); 19 Mar 2013 16:20:41 -0000 Mailing-List: contact user-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@hadoop.apache.org Delivered-To: mailing list user@hadoop.apache.org Received: (qmail 20527 invoked by uid 99); 19 Mar 2013 16:20:41 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 19 Mar 2013 16:20:41 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of harsh@cloudera.com designates 209.85.223.175 as permitted sender) Received: from [209.85.223.175] (HELO mail-ie0-f175.google.com) (209.85.223.175) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 19 Mar 2013 16:20:36 +0000 Received: by mail-ie0-f175.google.com with SMTP id c12so814667ieb.6 for ; Tue, 19 Mar 2013 09:20:16 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:content-type:x-gm-message-state; bh=sW3wWPMNY8jmoglZ5k0WI5CrtuPbA0r+wcoUZlJxaFo=; b=RwySvB6vtrN09kZ0+B3WCISNV//wpyT/WF19JwPk8//UQTkq1qE3UFqrge60rFH0kb Bb4DljDO8Qg5FNnb639nKczOK7TDaWUX2iKJadv4qAyVt4viHa5erforgjtyvqvZFmxb mrFkubDveGPbplPRrra6sQD/zH18Luj2o2FGPKeWhfR5DzjnCYYu4VN79mxp+ZJTb9Uz agXTOevedwFYrKWGSLn72lCwVLfSP9girOUyykvDvb7DHW442HqZjmtYJvFKYiXNDa4u 6WFObgDheQSF6uCFbdDnPAXOTL322bdSgLSjym4OhjVy1zVK0jMHnRoneeCrW5Q0PoMe VnIQ== X-Received: by 10.50.209.4 with SMTP id mi4mr1769644igc.40.1363710015843; Tue, 19 Mar 2013 09:20:15 -0700 (PDT) MIME-Version: 1.0 Received: by 10.50.181.198 with HTTP; Tue, 19 Mar 2013 09:19:54 -0700 (PDT) In-Reply-To: References: From: Harsh J Date: Tue, 19 Mar 2013 21:49:54 +0530 Message-ID: Subject: Re: java.lang.NoSuchMethodError ThreadSafeClientConnManager To: "" Content-Type: text/plain; charset=ISO-8859-1 X-Gm-Message-State: ALoCoQnDpzsZDmRM9kz847rsHSzGHR/BMesW0Bt3eL0PfCg/H9Nktg00pe/81lSsplTwA6DSYYI/ X-Virus-Checked: Checked by ClamAV on apache.org ZK is showing its runtime JVM classpath (from the JVM that invoked a ZK client), and not the ZK server's classpath. The path reported is the below, which is part of /opt/hadoop/lib itself: /opt/hadoop/bin/../lib/commons-httpclient-3.0.1.jar Check for this jar's existence on all nodes and replace them with your required version perhaps? I'm not sure if it will work but that seems to be what you wish to try. I'd instead generally recommend passing the dependencies you need as part of your job along with it via -libjars and such, and setting the MR option to have it take precedence over the hadoop-provided jars of the same kind. On Tue, Mar 19, 2013 at 9:42 PM, Aji Janis wrote: > Hello, > > I am getting the following syslog while running a mapreduce job on my > cluster: > > 2013-03-19 11:00:37,465 INFO > org.apache.solr.client.solrj.fimpl.HttpClientUtil: Creating new http client, > config: > 2013-03-19 11:00:37,477 INFO org.apache.hadoop.mapred.TaskLogsTruncater: > Initializing logs' truncater with mapRetainSize=-1 and reduceRetainSize=-1 > 2013-03-19 11:00:37,550 INFO org.apache.hadoop.io.nativeio.NativeIO: > Initialized cache for UID to User mapping with a cache timeout of 14400 > seconds. > 2013-03-19 11:00:37,551 INFO org.apache.hadoop.io.nativeio.NativeIO: Got > UserName hadoop for UID 8004 from the native implementation > 2013-03-19 11:00:37,554 FATAL org.apache.hadoop.mapred.Child: Error running > child : java.lang.NoSuchMethodError: > org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager: method > ()V not found > at > org.apache.solr.client.solrj.impl.HttpClientUtil.createClient(HttpClientUtil.java:103) > at > org.apache.solr.client.solrj.impl.CloudSolrServer.(CloudSolrServer.java:83) > > > I think the issue is that somewhere I have a wrong version of the httpclient > jar (I need 4.0 or higher but I have a lower version somewhere). I say this > because the zookeeper classpath in syslog shows a library that I can't find > it in my cluster anywhere. > > Syslog showed the zookeeper classpath as follows: > > > 2013-03-19 11:00:22,347 INFO org.apache.zookeeper.ZooKeeper: Client > environment:java.class.path=/opt/hadoop/bin/../conf: > /usr/java/default/lib/tools.jar:/opt/hadoop/bin/..:/opt/hadoop/bin/../hadoop-core-0.20.203.0.jar: > /opt/hadoop/bin/../lib/aspectjrt-1.6.5.jar:/opt/hadoop/bin/../lib/aspectjtools-1.6.5.jar: > /opt/hadoop/bin/../lib/commons-beanutils-1.7.0.jar:/opt/hadoop/bin/../lib/commons-beanutils-core-1.8.0.jar: > /opt/hadoop/bin/../lib/commons-cli-1.2.jar:/opt/hadoop/bin/../lib/commons-codec-1.4.jar: > /opt/hadoop/bin/../lib/commons-collections-3.2.1.jar:/opt/hadoop/bin/../lib/commons-configuration-1.6.jar: > /opt/hadoop/bin/../lib/commons-daemon-1.0.1.jar:/opt/hadoop/bin/../lib/commons-digester-1.8.jar: > /opt/hadoop/bin/../lib/commons-el-1.0.jar:/opt/hadoop/bin/../lib/commons-httpclient-3.0.1.jar: > /opt/hadoop/bin/../lib/commons-lang-2.4.jar:/opt/hadoop/bin/../lib/commons-logging-1.1.1.jar: > /opt/hadoop/bin/../lib/commons-logging-api-1.0.4.jar:/opt/hadoop/bin/../lib/commons-math-2.1.jar: > /opt/hadoop/bin/../lib/commons-net-1.4.1.jar:/opt/hadoop/bin/../lib/core-3.1.1.jar: > /opt/hadoop/bin/../lib/hsqldb-1.8.0.10.jar:/opt/hadoop/bin/../lib/jackson-core-asl-1.0.1.jar: > /opt/hadoop/bin/../lib/jackson-mapper-asl-1.0.1.jar:/opt/hadoop/bin/../lib/jasper-compiler-5.5.12.jar: > /opt/hadoop/bin/../lib/jasper-runtime-5.5.12.jar:/opt/hadoop/bin/../lib/jets3t-0.6.1.jar: > /opt/hadoop/bin/../lib/jetty-6.1.26.jar:/opt/hadoop/bin/../lib/jetty-util-6.1.26.jar: > /opt/hadoop/bin/../lib/jsch-0.1.42.jar:/opt/hadoop/bin/../lib/junit-4.5.jar:/opt/hadoop/bin/../lib/kfs-0.2.2.jar: > /opt/hadoop/bin/../lib/log4j-1.2.15.jar:/opt/hadoop/bin/../lib/mockito-all-1.8.5.jar:/opt/hadoop/bin/../lib/oro-2.0.8.jar: > /opt/hadoop/bin/../lib/servlet-api-2.5-20081211.jar:/opt/hadoop/bin/../lib/slf4j-api-1.4.3.jar: > /opt/hadoop/bin/../lib/slf4j-log4j12-1.4.3.jar:/opt/hadoop/bin/../lib/xmlenc-0.52.jar: > /opt/hadoop/bin/../lib/jsp-2.1/jsp-2.1.jar:/opt/hadoop/bin/../lib/jsp-2.1/jsp-api-2.1.jar:./:/conf:/build/*: > /opt/hadoop-data/mapred/local/taskTracker/MYDIRNAME/jobcache/job_201301171136_1906/jars/classes: > /opt/hadoop-data/mapred/local/taskTracker/MYDIRNAME/jobcache/job_201301171136_1906/jars: > /opt/hadoop-data/mapred/local/taskTracker/MYDIRNAME/jobcache/job_201301171136_1906/attempt_201301171136_1906_m_000000_0/work > > > but in all the nodes in my cluster we have removed commons-httpclient from > /opt/hadoop/lib and put in httpclient-4.2.3.jar so I am not sure where > commons-httpclient is coming from. See below: > > [root@mynode MYDIRNAME]# ls /opt/hadoop/lib > aspectjrt-1.6.5.jar commons-configuration-1.6.jar > commons-math-2.1.jar jackson-mapper-asl-1.0.1.jar jsch-0.1.42.jar > native > aspectjtools-1.6.5.jar commons-daemon-1.0.1.jar > commons-net-1.4.1.jar jasper-compiler-5.5.12.jar jsp-2.1 > oro-2.0.8.jar > commons-beanutils-1.7.0.jar commons-digester-1.8.jar > core-3.1.1.jar jasper-runtime-5.5.12.jar junit-4.5.jar > servlet-api-2.5-20081211.jar > commons-beanutils-core-1.8.0.jar commons-el-1.0.jar > hsqldb-1.8.0.10.jar jdiff kfs-0.2.2.jar > slf4j-api-1.4.3.jar > commons-cli-1.2.jar commons-lang-2.4.jar > hsqldb-1.8.0.10.LICENSE.txt jets3t-0.6.1.jar > kfs-0.2.LICENSE.txt slf4j-log4j12-1.4.3.jar > commons-codec-1.4.jar commons-logging-1.1.1.jar > httpclient-4.2.3.jar jetty-6.1.26.jar log4j-1.2.15.jar > xmlenc-0.52.jar > commons-collections-3.2.1.jar commons-logging-api-1.0.4.jar > jackson-core-asl-1.0.1.jar jetty-util-6.1.26.jar > mockito-all-1.8.5.jar > > > > Any suggestions? Does anyone know where the Zookeeper is getting the > classpath/library information? Do I need to restart my Zookeeper? Not sure > what the problem is. Any suggestions would be awesome. Thank you. > > -- Harsh J