Skip to content

Commit f86483d

Browse files
refactor: Remove reproject node (#1065)
1 parent 1c3879d commit f86483d

File tree

5 files changed

+1
-42
lines changed

5 files changed

+1
-42
lines changed

bigframes/core/__init__.py

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -394,20 +394,6 @@ def project_window_op(
394394
output_name,
395395
)
396396

397-
def _reproject_to_table(self) -> ArrayValue:
398-
"""
399-
Internal operators that projects the internal representation into a
400-
new ibis table expression where each value column is a direct
401-
reference to a column in that table expression. Needed after
402-
some operations such as window operations that cannot be used
403-
recursively in projections.
404-
"""
405-
return ArrayValue(
406-
nodes.ReprojectOpNode(
407-
child=self.node,
408-
)
409-
)
410-
411397
def relational_join(
412398
self,
413399
other: ArrayValue,

bigframes/core/block_transforms.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -196,8 +196,7 @@ def interpolate(block: blocks.Block, method: str = "linear") -> blocks.Block:
196196
else:
197197
output_column_ids.append(column)
198198

199-
# Force reproject since used `skip_project_unsafe` perviously
200-
block = block.select_columns(output_column_ids)._force_reproject()
199+
block = block.select_columns(output_column_ids)
201200
return block.with_column_labels(original_labels)
202201

203202

bigframes/core/blocks.py

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2433,15 +2433,6 @@ def join(
24332433
# Always sort mult-index join
24342434
return join_multi_indexed(self, other, how=how, sort=sort)
24352435

2436-
def _force_reproject(self) -> Block:
2437-
"""Forces a reprojection of the underlying tables expression. Used to force predicate/order application before subsequent operations."""
2438-
return Block(
2439-
self._expr._reproject_to_table(),
2440-
index_columns=self.index_columns,
2441-
column_labels=self.column_labels,
2442-
index_labels=self.index.names,
2443-
)
2444-
24452436
def is_monotonic_increasing(
24462437
self, column_id: typing.Union[str, Sequence[str]]
24472438
) -> bool:

bigframes/core/compile/compiler.py

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -335,10 +335,6 @@ def compile_window(self, node: nodes.WindowOpNode, ordered: bool = True):
335335
)
336336
return result if ordered else result.to_unordered()
337337

338-
@_compile_node.register
339-
def compile_reproject(self, node: nodes.ReprojectOpNode, ordered: bool = True):
340-
return self.compile_node(node.child, ordered)._reproject_to_table()
341-
342338
@_compile_node.register
343339
def compile_explode(self, node: nodes.ExplodeNode, ordered: bool = True):
344340
return self.compile_node(node.child, ordered).explode(node.column_ids)

bigframes/core/nodes.py

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -931,19 +931,6 @@ def prune(self, used_cols: COLUMN_SET) -> BigFrameNode:
931931
return self.transform_children(lambda x: x.prune(consumed_ids))
932932

933933

934-
# TODO: Remove this op
935-
@dataclass(frozen=True, eq=False)
936-
class ReprojectOpNode(UnaryNode):
937-
@property
938-
def variables_introduced(self) -> int:
939-
return 0
940-
941-
@property
942-
def relation_ops_created(self) -> int:
943-
# This op is not a real transformation, just a hint to the sql generator
944-
return 0
945-
946-
947934
@dataclass(frozen=True, eq=False)
948935
class RandomSampleNode(UnaryNode):
949936
fraction: float

0 commit comments

Comments
 (0)