@Override
  public void heartbeat(HeartbeatRequest ids)
      throws NoSuchTxnException,  NoSuchLockException, TxnAbortedException, MetaException {
    new HeartbeatTxnFunction(ids.getTxnid()).execute(jdbcResource);
    new HeartbeatLockFunction(ids.getLockid()).execute(jdbcResource);
  }
{@code ids} should only have txnid or lockid but not both, ideally.
Currently DBTxnManager.heartbeat() enforces this.
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java