[
https://issues.apache.org/jira/browse/HIVE-17832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16215873#comment-16215873
]
Janaki Lahorani commented on HIVE-17832:
----------------------------------------
Thanks [~sershe]. I would like to understand the reasons behind such a design
decision.
I think making this parameter modifiable at session level is beneficial for the
following reasons.
1. If a user made a mistake in defining the table, then the user doesn't have
an option to change the definition. The user needs to drop the table and
recreate it. That can be a bit tedious if the table definition is quite big.
2. This is a DDL operation that is most likely not exposed to the end user.
The setup of tables is typically handled by an administrator.
3. HMS embedded with HS2 is also a accepted configuration. If the parameter
is not modifiable for standalone HMS, then it shouldn't be modifiable for
embedded HMS as well, which is not the case today. You see a lot of qfile
tests that modifies this parameter.
4. Please refer to the following comment from [~ashutoshc] in JIRA HIVE-12320
(cut and pasted for your reference):
_Ashutosh Chauhan added a comment - 03/Nov/15 10:05
Its better to be strict (default this to true) than leaving potential to
corrupt data. This is only a safeguard since behavior is governed by a config
param. An advance user who know what they are doing can still set this to false
to potentially do dangerous schema changes.
_
I don't think the implication was also to restart the HMS after changing the
parameter value.
I would be very grateful if you can elaborate on why you feel this was by
design, and the benefits for having such a design.
Thanks,
Janaki.
> Allow hive.metastore.disallow.incompatible.col.type.changes to be changed in
> metastore
> --------------------------------------------------------------------------------------
>
> Key: HIVE-17832
> URL: https://issues.apache.org/jira/browse/HIVE-17832
> Project: Hive
> Issue Type: Bug
> Affects Versions: 2.1.1
> Reporter: Janaki Lahorani
> Assignee: Janaki Lahorani
> Fix For: 3.0.0
>
> Attachments: HIVE17832.1.patch, HIVE17832.2.patch
>
>
> hive.metastore.disallow.incompatible.col.type.changes when set to true, will
> disallow incompatible column type changes through alter table. But, this
> parameter is not modifiable in HMS. If HMS in not embedded into HS2, the
> value cannot be changed.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)