+
+ my $identifier = join('', map($codeset[int(rand $#codeset)], (1..$length) ) );
+
+ if ( qsearchs('prepay_credit',{identifier=>$identifier}) ) {
+ if ( $condup++ < 54 ) {
+ warn "$me generate: duplicate identifier $identifier; retrying\n"
+ if $DEBUG;
+ redo;
+ } else {
+ warn "$me generate: giving up after 54 tries"
+ if $DEBUG;
+ }
+ }
+ $condup = 0;
+