You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Igor Kryvenko (JIRA)" <ji...@apache.org> on 2018/04/21 20:16:00 UTC
[jira] [Created] (HIVE-19265) Potential NPE and hiding actual
exception in Hive#copyFiles
Igor Kryvenko created HIVE-19265:
------------------------------------
Summary: Potential NPE and hiding actual exception in Hive#copyFiles
Key: HIVE-19265
URL: https://issues.apache.org/jira/browse/HIVE-19265
Project: Hive
Issue Type: Bug
Reporter: Igor Kryvenko
Assignee: Igor Kryvenko
{{In Hive#copyFiles}} we have such code
{code:java}
if (src.isDirectory()) {
try {
files = srcFs.listStatus(src.getPath(), FileUtils.HIDDEN_FILES_PATH_FILTER);
} catch (IOException e) {
pool.shutdownNow();
throw new HiveException(e);
}
}
{code}
If pool is null we will get NPE and actual cause will be lost.
Initializing of pool
{code:java}
final ExecutorService pool = conf.getInt(ConfVars.HIVE_MOVE_FILES_THREAD_COUNT.varname, 25) > 0 ?
Executors.newFixedThreadPool(conf.getInt(ConfVars.HIVE_MOVE_FILES_THREAD_COUNT.varname, 25),
new ThreadFactoryBuilder().setDaemon(true).setNameFormat("Move-Thread-%d").build()) : null;
{code}
So in the case when the pool is not created we can get potential NPE and swallow an actual exception
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)