MCPcopy Create free account
hub / github.com/BIT-DataLab/LakeBench / collect_select_buffer

Method collect_select_buffer

join/LSH/datasketch/storage.py:624–645  ·  view source on GitHub ↗

Perform buffered select queries :return: list of list of query results

(self)

Source from the content-addressed store, hash-verified

622 self._select_statements_and_parameters_with_decoders.extend(statements_and_parameters_with_decoders)
623
624 def collect_select_buffer(self):
625 """
626 Perform buffered select queries
627
628 :return: list of list of query results
629 """
630 if not self._select_statements_and_parameters_with_decoders:
631 return []
632 # copy the underlying list in a python2/3 compatible way
633 buffer = list(self._select_statements_and_parameters_with_decoders)
634 # delete the actual elements in a python2/3 compatible way
635 del self._select_statements_and_parameters_with_decoders[:]
636 statements_and_parameters, decoders = zip(*buffer)
637
638 ret = collections.defaultdict(list)
639 query_results = self._select(statements_and_parameters)
640 for rows, (key_decoder, val_decoder) in zip(query_results, decoders):
641 for row in rows:
642 ret[key_decoder(row.key)].append((val_decoder(row.value), row.ts))
643 return [
644 [x[0] for x in sorted(v, key=operator.itemgetter(1))] for v in ret.values()
645 ]
646
647 def select(self, keys):
648 """

Callers

nothing calls this directly

Calls 1

_selectMethod · 0.95

Tested by

no test coverage detected