How does transactionName gets generated from startTransactio

transactionName is an optional input field in the startTransaction service. When I test this service it looks like it’s using a sequence number.

Will this seqeunce number always be unique (when running parallel processes)?

Are there reasons (not) to use this and just default the transaction name?