File tree 2 files changed +12
-0
lines changed
2 files changed +12
-0
lines changed Original file line number Diff line number Diff line change @@ -419,6 +419,9 @@ pub trait TableContext: Send + Sync {
419
419
unimplemented ! ( )
420
420
}
421
421
422
+ /// Calling this function will automatically create a pipeline for broadcast data in `build_distributed_pipeline()`
423
+ ///
424
+ /// The returned id can be used to get sender and receiver for broadcasting data.
422
425
fn get_next_broadcast_id ( & self ) -> u32 ;
423
426
424
427
fn reset_broadcast_id ( & self ) {
Original file line number Diff line number Diff line change @@ -291,13 +291,22 @@ impl QueryContext {
291
291
pub fn broadcast_source_receiver ( & self , broadcast_id : u32 ) -> Receiver < BlockMetaInfoPtr > {
292
292
self . shared . broadcast_source_receiver ( broadcast_id)
293
293
}
294
+
295
+ /// Get a sender to broadcast data
296
+ ///
297
+ /// Note: The channel must be closed by calling close() after data transmission is completed
294
298
pub fn broadcast_source_sender ( & self , broadcast_id : u32 ) -> Sender < BlockMetaInfoPtr > {
295
299
self . shared . broadcast_source_sender ( broadcast_id)
296
300
}
297
301
302
+ /// A receiver to receive broadcast data
303
+ ///
304
+ /// Note: receive() can be called repeatedly until an Error is returned, indicating
305
+ /// that the upstream channel has been closed
298
306
pub fn broadcast_sink_receiver ( & self , broadcast_id : u32 ) -> Receiver < BlockMetaInfoPtr > {
299
307
self . shared . broadcast_sink_receiver ( broadcast_id)
300
308
}
309
+
301
310
pub fn broadcast_sink_sender ( & self , broadcast_id : u32 ) -> Sender < BlockMetaInfoPtr > {
302
311
self . shared . broadcast_sink_sender ( broadcast_id)
303
312
}
You can’t perform that action at this time.
0 commit comments