我正在使用 azure databricks 5.5 LTS 以及 Spark 2.4.3 和 scala 2.11。几乎每个发送到 databricks 集群的请求都会出现以下错误日志
ERROR RetryingHMSHandler: NoSuchObjectException(message:There is no database named global_temp)
at org.apache.hadoop.hive.metastore.ObjectStore.getMDatabase(ObjectStore.java:487)
at org.apache.hadoop.hive.metastore.ObjectStore.getDatabase(ObjectStore.java:498)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
Run Code Online (Sandbox Code Playgroud)
虽然这不会影响我们正在尝试做的事情的最终结果,但我们的日志不断充满这些内容,并且浏览起来并不是很愉快。我尝试通过将以下属性设置为驱动程序和执行程序来关闭它
log4j.level.org.apache.hadoop.hive.metastore.RetryingHMSHandler=OFF
Run Code Online (Sandbox Code Playgroud)
只是后来才意识到 RetryingHMSHandler 类实际上使用 slf4j 记录器,有没有一种优雅的方法来克服这个问题?