def _select_batched(self, table, cols, num_rows, limit, queries_per_batch=3, execute=True):
        """Run select queries in small batches and return joined resutls."""
        # Execute select queries in small batches to avoid connection timeout
        commands, offset = [], 0
        while num_rows > 0:
            # Use number of rows as limit if num_rows < limit
            _limit = min(limit, num_rows)

            # Execute select_limit query
            commands.append(self._select_limit_statement(table, cols=cols, offset=offset, limit=limit))
            offset += _limit
            num_rows += -_limit

        # Execute commands
        if execute:
            rows = []
            til_reconnect = queries_per_batch
            for c in commands:
                if til_reconnect == 0:
                    self.disconnect()
                    self.reconnect()
                    til_reconnect = queries_per_batch
                rows.extend(self.fetch(c, False))
                til_reconnect += -1
            del commands
            return rows
        # Return commands
        else:
            return commands
def _select_batched ( self , table , cols , num_rows , limit , queries_per_batch = 3 , execute = True ) : commands , offset = [ ] , 0 while num_rows > 0 : _limit = min ( limit , num_rows ) commands . append ( self . _select_limit_statement ( table , cols = cols , offset = offset , limit = limit ) ) offset += _limit num_rows += - _limit if execute : rows = [ ] til_reconnect = queries_per_batch for c in commands : if til_reconnect == 0 : self . disconnect ( ) self . reconnect ( ) til_reconnect = queries_per_batch rows . extend ( self . fetch ( c , False ) ) til_reconnect += - 1 del commands return rows else : return commands
Run select queries in small batches and return joined resutls.