[
https://issues.apache.org/jira/browse/HIVE-29052?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17986711#comment-17986711
]
Butao Zhang edited comment on HIVE-29052 at 6/28/25 2:44 PM:
-------------------------------------------------------------
[~dkuzmenko] I deployed hms server using a compiled standalone hms tar on my
local physical machine.
{color:#ff0000}hive/standalone-metastore/metastore-server/target/apache-hive-standalone-metastore-server-4.1.0-bin.tar.gz{color}
* export HADOOP_HOME=/opt/hadoop-3.4.1
* metastore-site.xml
I just used a few simple configurations to start the standalone HMS.
{code:java}
<configuration>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>mysql_psswd</value>
<description>password to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://127.0.0.1:3356/hive?createDatabaseIfNotExist=true</value>
<description>
JDBC connect string for a JDBC metastore.
To use SSL to encrypt/authenticate the connection, provide
database-specific SSL flag in the connection URL.
For example, jdbc:postgresql://myhost/db?ssl=true for postgres database.
</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
<description>Username to use against metastore database</description>
</property>
</configuration> {code}
* ./apache-hive-metastore-4.1.0-bin/bin/start-metastore
> _Looks like IcebergHouseKeeperService is missing from classpath_
IcebergHouseKeeperService is in *hive-iceberg-handler-4.1.0.jar, but we didn't
put this jar into the*
{*}{color:#ff0000}apache-hive-standalone-metastore-server-4.1.0-bin.tar.gz.{color}{*}{*}{*}
*{color:#ff0000}org.apache.hadoop.hive.ql.txn.compactor.Initiator{color}*
{color:#172b4d}has the same issue. This class is in {*}hive-exec-4.1.0.jar{*},
but standalone hms didn't include this jar.{color}
was (Author: zhangbutao):
[~dkuzmenko] I deployed hms server using a compiled standalone hms tar on my
local physical machine.
{color:#FF0000}hive/standalone-metastore/metastore-server/target/apache-hive-standalone-metastore-server-4.1.0-bin.tar.gz{color}
* export HADOOP_HOME=/opt/hadoop-3.4.1
* metastore-site.xml
I just used a few simple configurations to start the standalone HMS.
{code:java}
<configuration>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>mysql_psswd</value>
<description>password to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://127.0.0.1:3356/hive?createDatabaseIfNotExist=true</value>
<description>
JDBC connect string for a JDBC metastore.
To use SSL to encrypt/authenticate the connection, provide
database-specific SSL flag in the connection URL.
For example, jdbc:postgresql://myhost/db?ssl=true for postgres database.
</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
<description>Username to use against metastore database</description>
</property>
</configuration> {code}
* ./apache-hive-metastore-4.1.0-bin/bin/start-metastore
> _Looks like IcebergHouseKeeperService is missing from classpath_
IcebergHouseKeeperService is in *hive-iceberg-handler-4.1.0.jar, but we didn't
put this jar into the*
*{color:#FF0000}apache-hive-standalone-metastore-server-4.1.0-bin.tar.gz.{color}*
> Error starting standalone HMS: "IcebergHouseKeeperService class not found"
> --------------------------------------------------------------------------
>
> Key: HIVE-29052
> URL: https://issues.apache.org/jira/browse/HIVE-29052
> Project: Hive
> Issue Type: Task
> Components: Standalone Metastore
> Affects Versions: 4.1.0, 4.2.0
> Reporter: Butao Zhang
> Priority: Major
>
> During local standalone HMS deployment testing, the following exception log
> was observed:
>
> {code:java}
> 2025-06-28T17:19:28,840 ERROR [Metastore threads starter thread]
> leader.LeaseLeaderElection: Error notifying the listener:
> org.apache.hadoop.hive.metastore.leader.CompactorTasks@61e0c33d, leader: true
> java.lang.ClassNotFoundException:
> org.apache.hadoop.hive.ql.txn.compactor.Initiator
> at
> java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
> ~[?:?]
> at
> java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
> ~[?:?]
> at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
> ~[?:?]
> at java.base/java.lang.Class.forName0(Native Method) ~[?:?]
> at java.base/java.lang.Class.forName(Class.java:375) ~[?:?]
> at
> org.apache.hadoop.hive.metastore.leader.CompactorTasks.instantiateThread(CompactorTasks.java:53)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.CompactorTasks.getCompactorThreads(CompactorTasks.java:67)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.CompactorTasks.takeLeadership(CompactorTasks.java:136)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.LeaseLeaderElection.lambda$notifyListener$0(LeaseLeaderElection.java:141)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) ~[?:?]
> at
> org.apache.hadoop.hive.metastore.leader.LeaseLeaderElection.notifyListener(LeaseLeaderElection.java:138)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.LeaseLeaderElection.doWork(LeaseLeaderElection.java:120)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.LeaseLeaderElection.tryBeLeader(LeaseLeaderElection.java:181)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.LeaseLeaderElection.tryBeLeader(LeaseLeaderElection.java:63)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.LeaderElectionContext.lambda$start$2(LeaderElectionContext.java:125)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at java.base/java.lang.Thread.run(Thread.java:833) [?:?]
> at
> org.apache.hadoop.hive.metastore.leader.LeaderElectionContext.start(LeaderElectionContext.java:136)
> [hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.HiveMetaStore$8.run(HiveMetaStore.java:855)
> [hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> 2025-06-28T17:19:28,847 ERROR [Metastore threads starter thread]
> leader.LeaseLeaderElection: Error notifying the listener:
> org.apache.hadoop.hive.metastore.leader.HouseKeepingTasks@33d3660, leader:
> true
> org.apache.hadoop.hive.metastore.api.MetaException:
> org.apache.iceberg.mr.hive.metastore.task.IcebergHouseKeeperService class not
> found
> at
> org.apache.hadoop.hive.metastore.utils.JavaUtils.getClass(JavaUtils.java:56)
> ~[hive-standalone-metastore-common-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.HouseKeepingTasks.getRemoteOnlyTasks(HouseKeepingTasks.java:72)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.HouseKeepingTasks.takeLeadership(HouseKeepingTasks.java:112)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.LeaseLeaderElection.lambda$notifyListener$0(LeaseLeaderElection.java:141)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) ~[?:?]
> at
> org.apache.hadoop.hive.metastore.leader.LeaseLeaderElection.notifyListener(LeaseLeaderElection.java:138)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.LeaseLeaderElection.doWork(LeaseLeaderElection.java:120)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.LeaseLeaderElection.tryBeLeader(LeaseLeaderElection.java:181)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.LeaseLeaderElection.tryBeLeader(LeaseLeaderElection.java:63)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.leader.LeaderElectionContext.lambda$start$2(LeaderElectionContext.java:125)
> ~[hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at java.base/java.lang.Thread.run(Thread.java:833) [?:?]
> at
> org.apache.hadoop.hive.metastore.leader.LeaderElectionContext.start(LeaderElectionContext.java:136)
> [hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> at
> org.apache.hadoop.hive.metastore.HiveMetaStore$8.run(HiveMetaStore.java:855)
> [hive-standalone-metastore-server-4.1.0.jar:4.1.0]
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)