@@ -33,7 +33,7 @@ def replace_cache_table(node, kwargs):
3333 if isinstance (node , CachedNode ):
3434 return node .parent .op ().replace (replace_cache_table )
3535 elif isinstance (node , RemoteTable ):
36- return node .remote_expr .op ().replace (replace_cache_table )
36+ return node .parent .op ().replace (replace_cache_table )
3737 else :
3838 return node
3939
@@ -141,8 +141,11 @@ def __dask_tokenize__(self):
141141 )
142142
143143
144- class CachedNode (ops .DatabaseTable ):
144+ class DatabaseTableView (ops .DatabaseTable ):
145145 parent : Any = None
146+
147+
148+ class CachedNode (DatabaseTableView ):
146149 storage : Any = None
147150
148151
@@ -154,26 +157,24 @@ class CachedNode(ops.DatabaseTable):
154157)
155158
156159
157- class RemoteTable (ops .DatabaseTable ):
158- remote_expr : Expr = None
159-
160+ class RemoteTable (DatabaseTableView ):
160161 @classmethod
161162 def from_expr (cls , con , expr , name = None ):
162163 name = name or gen_name ()
163164 return cls (
164165 name = name ,
165166 schema = expr .schema (),
166167 source = con ,
167- remote_expr = expr ,
168+ parent = expr ,
168169 )
169170
170171
171172def into_backend (expr , con , name = None ):
172173 return RemoteTable .from_expr (con = con , expr = expr , name = name ).to_expr ()
173174
174175
175- class FlightExpr (ops . DatabaseTable ):
176- input_expr : Expr = None
176+ class FlightExpr (DatabaseTableView ):
177+ parent : Expr = None
177178 unbound_expr : Expr = None
178179 make_server : Callable = None
179180 make_connection : Callable = None
@@ -211,7 +212,7 @@ def roundtrip_cloudpickle(obj):
211212 name = name or gen_name (),
212213 schema = unbound_expr .schema (),
213214 source = input_expr ._find_backend (),
214- input_expr = input_expr ,
215+ parent = input_expr ,
215216 unbound_expr = roundtrip_cloudpickle (unbound_expr ),
216217 make_server = make_server or FlightServer ,
217218 make_connection = make_connection or xo_connect ,
@@ -228,7 +229,7 @@ def to_rbr(self, do_instrument_reader=None):
228229 do_instrument_reader = self .do_instrument_reader
229230
230231 def inner (flight_exchange ):
231- rbr_in = flight_exchange .input_expr .to_pyarrow_batches ()
232+ rbr_in = flight_exchange .parent .to_pyarrow_batches ()
232233 if do_instrument_reader :
233234 rbr_in = instrument_reader (rbr_in , "input: " )
234235 with flight_exchange .make_server () as server :
@@ -316,8 +317,8 @@ def flight_expr(
316317 )
317318
318319
319- class FlightUDXF (ops . DatabaseTable ):
320- input_expr : Expr = None
320+ class FlightUDXF (DatabaseTableView ):
321+ parent : Expr = None
321322 # FIXME: fix circular import issue so we can possibly pass an instance of AbstractExchanger
322323 udxf : type = None
323324 make_server : Callable = None
@@ -360,7 +361,7 @@ def make_mtls_server():
360361 name = name or gen_name (),
361362 schema = schema ,
362363 source = input_expr ._find_backend (),
363- input_expr = input_expr ,
364+ parent = input_expr ,
364365 udxf = udxf ,
365366 make_server = make_server or make_mtls_server ,
366367 make_connection = make_connection or xo_connect ,
@@ -374,7 +375,7 @@ def to_rbr(self, do_instrument_reader=None):
374375 do_instrument_reader = self .do_instrument_reader
375376
376377 def inner (flight_udxf ):
377- rbr_in = flight_udxf .input_expr .to_pyarrow_batches ()
378+ rbr_in = flight_udxf .parent .to_pyarrow_batches ()
378379 if do_instrument_reader :
379380 rbr_in = instrument_reader (rbr_in , "input: " )
380381 with flight_udxf .make_server () as server :
@@ -603,7 +604,7 @@ def register_and_transform_remote_tables(expr):
603604 )
604605 batches_table = {}
605606 for arg , count in counts .items ():
606- ex = arg .remote_expr
607+ ex = arg .parent
607608 batches = ex .to_pyarrow_batches ()
608609 schema = ex .as_table ().schema ().to_pyarrow ()
609610 replicas = SafeTee .tee (batches , count )
0 commit comments