Couldn't we reuse HiveMetaHook for this new purpose (with an instance loaded 
via global config vs associated with the table handler)?

JVS

On Mar 8, 2011, at 2:12 PM, Ashutosh Chauhan wrote:

> Hi all,
> 
> I have a requirement that every time some change on metastore takes
> place, we have some logic which needs to be run. For example, if a new
> table is getting created in metastore I want to send a message to a
> message bus. Easiest way for this to work is to add the logic in
> createTable(). Control it by a hiveConf param and turn it off by
> default. Alternative way is via hooks. Have this extra logic in hook
> and then load and fire the hook if its available. Does anyone has an
> opinion which of these two is preferable. Second one requires new hook
> loading and execution logic. I am currently interested in four
> functions: createTable() dropTable() addPartition() dropPartition().
> Current, HiveMetaHook which exists in createTable() doesn't perfectly
> fit the bill, since it is fired only when user expresses it in his
> create table statement (i.e., if he has specified a storage handler)
> Instead I want to have this logic always run.
> If it is unclear, let me know, I can post the code  which can
> demonstrate my usecase.
> 
> Ashutosh

Reply via email to