code: def delete_row_range(self, format_str, start_game, end_game):
          
          row_keys = make_single_array(
              self.tf_table.keys_by_range_dataset(
                  format_str.format(start_game),
                  format_str.format(end_game)))
          row_keys = list(row_keys)
          if not row_keys:
              utils.dbg('No rows left for games %d..%d' % (
                  start_game, end_game))
              return
          utils.dbg('Deleting %d rows:  %s..%s' % (
              len(row_keys), row_keys[0], row_keys[-1]))
  
          # Reverse the keys so that the queue is left in a more
          # sensible end state if you change your mind (say, due to a
          # mistake in the timestamp) and abort the process: there will
          # be a bit trimmed from the end, rather than a bit
          # trimmed out of the middle.
          row_keys.reverse()
          total_keys = len(row_keys)
          utils.dbg('Deleting total of %d keys' % total_keys)
          concurrency = min(MAX_BT_CONCURRENCY,
                            multiprocessing.cpu_count() * 2)
          with multiprocessing.Pool(processes=concurrency) as pool:
              batches = []
              with tqdm(desc='Keys', unit_scale=2, total=total_keys) as pbar:
                  for b in utils.iter_chunks(bigtable.row.MAX_MUTATIONS,
                                             row_keys):
                      pbar.update(len(b))
                      batches.append((self.btspec, b))
                      if len(batches) >= concurrency:
                          pool.map(_delete_rows, batches)
                          batches = []
                  pool.map(_delete_rows, batches)
                  batches = []
docs: Delete rows related to the given game range.
  
          Args:
            format_str:  a string to `.format()` by the game numbers
              in order to create the row prefixes.
            start_game:  the starting game number of the deletion.
            end_game:  the ending game number of the deletion.