Menu

Hive HCatalog Check

module.exports =  header: 'Hive HCatalog Check', handler: ({options}) ->

Asset Connection

The Hive metastore listener port, default to "9083".

  @connection.assert
    header: 'RPC'
    servers: options.wait.rpc.filter (server) -> server.host is options.fqdn
    retry: 3
    sleep: 3000

Check Database

Check if Hive can authenticate and run a basic query to the database.

  @call header: 'Database', ->
    cmd = switch options.db.engine
      when 'mariadb', 'mysql' then 'SELECT * FROM VERSION'
      when 'postgresql' then '\\dt'
    @system.execute
      cmd: db.cmd options.db, admin_username: null, cmd

Check Port

Check if the Hive HCatalog (Metastore) server is listening.

  # migration: wdavidw 170911, this is the same as the connection.assert call just above
  # @connection.assert
  #   header: 'Port'
  #   server: options.hive_site['hive.metastore.uris']
  #     .split(',')
  #     .map (uri) ->
  #       {fqdn, port} = url.parse uri
  #       host: fqdn, port: port
  #     .filter (server) ->
  #       server.fqdn is options.fqdn

Module Dependencies

url = require 'url'
db = require '@nikitajs/core/lib/misc/db'