KUDU-3265 txn-related options to 'kudu perf loadgen'

This patch adds the following txn-related options to the
'kudu perf loadgen' tool:
  (1) --txn_start
  (2) --txn_commit
  (3) --txn_rollback

With those, it's possible to insert rows into the table in the scope
of a multi-row transaction, and then (1) leave the transaction
as is, or (2) commit the transaction, or (3) rollback the transaction
explicitly.

Semantically, specifying --txn_commit or --txn_rollback implies setting
--txn_start as well.

This patch partially addresses KUDU-3265.  A follow-up patch will add
functionality to write and read transactional tokens in serialized form,
so the newly introduced --txn_start option starts making more sense.
With that, it will be possible to start a new multi-row transaction
in one session of the kudu CLI tool, and then continue adding more rows
in another session of the kudu CLI tool, passing around transactional
token.

Change-Id: I73750af589d432c6ae973439264f55c08a327aa7
Reviewed-on: http://gerrit.cloudera.org:8080/17526
Tested-by: Kudu Jenkins
Reviewed-by: Andrew Wong <awong@cloudera.com>
2 files changed