Skip to content

Commit

Permalink
refactor(pyarrow): remove unnecessary calls to combine_chunks
Browse files Browse the repository at this point in the history
  • Loading branch information
cpcloud authored and jcrist committed Jul 5, 2023
1 parent c099302 commit c026d2d
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 19 deletions.
9 changes: 2 additions & 7 deletions ibis/backends/base/__init__.py
Expand Up @@ -288,14 +288,9 @@ def to_pyarrow(
if isinstance(expr, ir.Table):
return table
elif isinstance(expr, ir.Column):
# Column will be a ChunkedArray, `combine_chunks` will
# flatten it
if len(table.columns[0]):
return table.columns[0].combine_chunks()
else:
return pa.array(table.columns[0])
return table[0]
elif isinstance(expr, ir.Scalar):
return table.columns[0][0]
return table[0][0]
else:
raise ValueError

Expand Down
9 changes: 2 additions & 7 deletions ibis/backends/duckdb/__init__.py
Expand Up @@ -738,14 +738,9 @@ def to_pyarrow(
if isinstance(expr, ir.Table):
return table
elif isinstance(expr, ir.Column):
# Column will be a ChunkedArray, `combine_chunks` will
# flatten it
if len(table.columns[0]):
return table.columns[0].combine_chunks()
else:
return pa.array(table.columns[0])
return table[0]
elif isinstance(expr, ir.Scalar):
return table.columns[0][0]
return table[0][0]
else:
raise ValueError

Expand Down
6 changes: 1 addition & 5 deletions ibis/backends/polars/__init__.py
Expand Up @@ -439,15 +439,11 @@ def to_pyarrow(
limit: int | None = None,
**kwargs: Any,
):
pa = self._import_pyarrow()
result = self._to_pyarrow_table(expr, params=params, limit=limit, **kwargs)
if isinstance(expr, ir.Table):
return result
elif isinstance(expr, ir.Column):
if len(column := result[0]):
return column.combine_chunks()
else:
return pa.array(column)
return result[0]
elif isinstance(expr, ir.Scalar):
return result[0][0]
else:
Expand Down

0 comments on commit c026d2d

Please sign in to comment.