简体   繁体   中英

hive-site.xml: The element type “configuration” must be terminated by the matching end-tag “</configuration>”

I'm trying to install Hive on a Ubuntu system, for the sake of practicing/learning. I'm following a set of pre-written instructions. It says to test the Hive installation by going to $HIVE_HOME and running bin/hive. When I do, I get a rather large dump of text, but I think the salient bit is as follows:

**[Fatal Error] hive-site.xml:2787:3: The element type "configuration" must be terminated by the matching end-tag "</configuration>".
17/05/06 10:46:12 FATAL conf.Configuration: error parsing conf file:/usr/local/hive/conf/hive-site.xml
org.xml.sax.SAXParseException; systemId: file:/usr/local/hive/conf/hive-site.xml; lineNumber: 2787; columnNumber: 3; The element type "configuration" must be terminated by the matching end-tag "</configuration>".**

I've gone to line 2787 and it is actually the </configuration> tag. I did not edit any of the tags in hive-site.xml. The only thing I did was take the following section:

<property>
   <name>javax.jdo.option.ConnectionURL</name>
   <value>jdbc:derby:;databaseName=/usr/local/hive/metastore_db;create=true</value>
   <description>JDBC connect string for a JDBC metastore </description>
</property>

And change it to:

<property>
   <name>javax.jdo.option.ConnectionURL</name>
   <value>jdbc:derby://localhost:1527/metastore_db;create=true </value>
   <description>JDBC connect string for a JDBC metastore </description>
</property>

I only edited the text between the "value" tags, without altering the tags themselves. Maybe the format is incorrect? Any help would be appreciated.

The file is located here, if anyone wants to take a look at it:

http://www.vaughn-s.net/hadoop/hive-site.xml

You have a missing <property> opening tag, just before <name>hive.mapjoin.optimized.hashtable</name>

<property>
  <name>hive.lazysimple.extended_boolean_literal</name>
  <value>false</value>
  <description>
    LazySiimpleSerde uses this properties to determine if it treats 'T', 't', 'F', 'f',
    '1', and '0' as extened, legal boolean literal, in addition to 'TRUE' and 'FALSE'.
    The default is false, which means only 'TRUE' and 'FALSE' are treated as legal
    boolean literal.
  </description>
</property>
  <name>hive.mapjoin.optimized.hashtable</name>
  <value>true</value>
  <description>Whether Hive should use memory-optimized hash table for MapJoin. Only works on Tez, because memory-optimized hashtable cannot be serialized.</description>
</property>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM