[ 
https://issues.apache.org/jira/browse/HIVE-17812?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alan Gates updated HIVE-17812:
------------------------------
    Attachment: HIVE-17812.patch

This change does break compatibility for NotificationListeners and Events.  It 
does this by switching the reference in EventContext (and similar classes) from 
an HMSHandler to IHMSHandler (the interface).  This makes it easier to move the 
pieces separately, and is also a cleaner design since it makes more sense for 
potentially external pieces like listeners to depend on interfaces rather than 
implementations.

Is this avoidable?  Yes, I could move events and listeners in a bigger patch 
along with HiveMetaStore.  However, other changes are going to break listeners 
and events anyway.  Namely, the change from HiveConf -> Conf (which is not 
avoidable).  Also, if we do split the metastore into a separate TLP in the 
future it will change class names, which will also obviously impact 
implementations of listener.

We should look into what it will take to build a shim that would support 
existing listeners.  This would need to live in the metastore module rather 
than standalone-metastore, since it will need to reference HiveConf.

> Move remaining classes that HiveMetaStore depends on 
> -----------------------------------------------------
>
>                 Key: HIVE-17812
>                 URL: https://issues.apache.org/jira/browse/HIVE-17812
>             Project: Hive
>          Issue Type: Sub-task
>          Components: Metastore
>            Reporter: Alan Gates
>            Assignee: Alan Gates
>              Labels: pull-request-available
>         Attachments: HIVE-17812.patch
>
>
> There are several remaining pieces that need moved before we can move 
> HiveMetaStore itself.  These include NotificationListener and 
> implementations, Events, AlterHandler, and a few other miscellaneous pieces.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to