reinstate DuplicateTranKeyError check

it is critical that duplicate keys never exist, we don't expect this to
ever get thrown, it is mainly for unit testing to detect if the
_GetNextKeyForCurrentNamespace algorithm is bugged.