[
https://issues.apache.org/jira/browse/HIVE-26984?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17683368#comment-17683368
]
László Bodor commented on HIVE-26984:
-------------------------------------
okay, I think I understand your point
regarding the comfort and probability of conf issues (how often would I need
this): yeah, I'm indeed after comfort: just as we speak I can tell 2 different
code paths where some hive props behave unexpectedly causing a huge headache
for me (one is a tez vertex manager setting, another is "tez.queue.name"
cleared somewhere in the code...okay we already found maybe why the latter was,
but the story is the same: it caused a headache
I've already faced a similar problem while investigating the absence of hbase
related properties somewhere in the code, so 3 different issues from the last
couple of months, instantly
chicken-egg problem: you're right, it's possible theoretically if you change
the property to *true* on the fly...so worst case, we might end up setting this
property on cluster level (brute force, involves hiveserver2 restart) it's not
optimal, I know, let me think about this: what about trying this out on a
cluster, and putting a temporary log message to the original set HiveConf
methods: if I can see the usage of original HiveConf methods after setting
this prop to *true*, the chicken-egg problem just happened, and I can
investigate it, is it acceptable in case of this solution?
"when someone just wrote `new HiveConf()`..." <-- that's what @Deprecated is
for, sometimes it's a common need to hide object creation details
" as about passing&launching the agent: I'm not sure - but maybe the agent can
be placed inside say hive-exec or something; and then tweak the tez launch
params (from inside HS2) to add the -agent to the launch cmdline.... ; probably
similar for the HS2 startup...but that should be done somewhere in the
scripts..." <-- with all due respect, as far as I understand, here you're still
trying to convince me this is better than using a single hive setting (again,
comfort, I'm lazy I know)
so answering the question of whether I explored these paths? not yet, and don't
want to seem ignorant regarding your idea of the agents, let me think about it
also
> Deprecate public HiveConf constructors
> --------------------------------------
>
> Key: HIVE-26984
> URL: https://issues.apache.org/jira/browse/HIVE-26984
> Project: Hive
> Issue Type: Improvement
> Reporter: László Bodor
> Assignee: László Bodor
> Priority: Major
> Labels: pull-request-available
> Time Spent: 1.5h
> Remaining Estimate: 0h
>
> From time to time we investigate configuration object problems that are hard
> to investigate. We can improve this area, e.g. with HIVE-26985, but first, we
> need to introduce a public static factory method to hook into the creation
> process. I can see this pattern in another projects as well, like:
> HBaseConfiguration.
> Creating custom HiveConf subclasses can be useful because putting optional
> (say: if else branches or whatever) stuff into the original HiveConf object's
> hot codepaths can turn it less performant instantly.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)