Bug 1295968

Summary: hadoop-httpfs service does not start
Product: [Fedora] Fedora Reporter: Denis Arnaud <denis.arnaud_fedora>
Component: hadoopAssignee: Robert Rati <rrati>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 23CC: besser82, coolsvap, denis.arnaud_fedora, extras-qa, matt, moceap, rrati
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: hadoop-2.4.1-12.fc23 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1235420 Environment:
Last Closed: 2016-01-19 23:28:02 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Denis Arnaud 2016-01-05 23:06:39 UTC
Description of problem:

The hadoop-httpfs RPM installs the Tomcat/Catalina configuration files for the Tomcat instance dedicated to httpFS. The reference installation directory is /usr/share/hadoop/httpfs/tomcat

However, the Tomcat service cannot start:
# systemctl start tomcat@httpfs
# systemctl status tomcat@httpfs
 tomcat - Apache Tomcat Web Application Container
   Loaded: loaded (/usr/lib/systemd/system/tomcat@.service; disabled; vendor preset: disabled)
   Active: inactive (dead)

The error is explicit in the /var/log/hadoop-httpfs/httpfs-catalina.YYYY-MM-DD.log:
05-Jan-2016 23:30:26.891 WARNING [main] org.apache.catalina.startup.Catalina.load Catalina.start using conf/server.xml: Error at (32, 67) : org.apache.catalina.core.JasperListener
05-Jan-2016 23:30:26.897 SEVERE [main] org.apache.tomcat.util.digester.Digester.startElement Begin event threw exception
 java.lang.ClassNotFoundException: org.apache.catalina.core.JasperListener
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
 
It is due to the fact that the server.xml configuration file contains lines to load the JasperListener. Whereas the Tomcat version delivered with Fedora 23 does not include those two lines.

As a matter of fact, as a manual work around:
* I copied/pasted all the configuration files of Tomcat (from /etc/tomcat/) into /etc/hadoop/tomcat/
* In server.xml, changed the default ports (8005 for admin, 8080 for the service, into respectively ${httpfs.admin.port} and ${httpfs.http.port}).
* In logging.properties, changed ${catalina.base} into ${httpfs.log.dir}
Those three tasks fixed the issue.
So, the real key is to pull out the configuration files corresponding to the Tomcat version of the current Fedora release.

Version-Release number of selected component (if applicable):

$ rpm -q hadoop-httpfs
hadoop-httpfs-2.4.1-11.fc23.noarch

How reproducible:

Always

Steps to Reproduce:
1. Install hadoop-httpfs
2. Try to start the tomcat@httpfs service
3. Query the status of the tomcat@httpfs service, and check the logs in /var/log/hadoop-httpfs/

Actual results:

The tomcat@httpfs service cannot start.

Expected results:

The tomcat@httpfs service should start.

Comment 1 gil cattaneo 2016-01-09 13:40:27 UTC
see https://fedorahosted.org/pki/ticket/1264

Comment 2 Fedora Update System 2016-01-10 13:48:42 UTC
hadoop-2.4.1-12.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-182ae3df92

Comment 3 Fedora Update System 2016-01-10 20:23:25 UTC
hadoop-2.4.1-12.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-182ae3df92

Comment 4 Fedora Update System 2016-01-19 23:27:59 UTC
hadoop-2.4.1-12.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.