@@ -9,8 +9,7 @@ use crate::queryplanner::query_executor::{CubeTable, InlineTableId, InlineTableP
99use crate :: queryplanner:: topk:: { ClusterAggregateTopK , SortColumn } ;
1010use crate :: queryplanner:: udfs:: aggregate_udf_by_kind;
1111use crate :: queryplanner:: udfs:: {
12- aggregate_kind_by_name, scalar_udf_by_kind, CubeAggregateUDFKind ,
13- CubeScalarUDFKind ,
12+ aggregate_kind_by_name, scalar_udf_by_kind, CubeAggregateUDFKind , CubeScalarUDFKind ,
1413} ;
1514use crate :: queryplanner:: { CubeTableLogical , InfoSchemaTableProvider } ;
1615use crate :: table:: Row ;
@@ -1332,23 +1331,29 @@ impl LogicalExtensionCodec for CubeExtensionCodec {
13321331 let serialized = ExtensionNodeSerialized :: deserialize ( r)
13331332 . map_err ( |e| DataFusionError :: Execution ( format ! ( "try_decode: {}" , e) ) ) ?;
13341333 Ok ( Extension {
1335- node : Arc :: new ( match serialized {
1334+ node : match serialized {
13361335 ExtensionNodeSerialized :: ClusterSend ( serialized) => {
1337- ClusterSendNode :: from_serialized ( inputs, serialized)
1336+ Arc :: new ( ClusterSendNode :: from_serialized ( inputs, serialized) )
13381337 }
1339- } ) ,
1338+ ExtensionNodeSerialized :: PanicWorker ( serialized) => {
1339+ Arc :: new ( PanicWorkerNode :: from_serialized ( inputs, serialized) )
1340+ }
1341+ } ,
13401342 } )
13411343 }
13421344
13431345 fn try_encode ( & self , node : & Extension , buf : & mut Vec < u8 > ) -> datafusion:: common:: Result < ( ) > {
13441346 use serde:: Serialize ;
13451347 let mut ser = flexbuffers:: FlexbufferSerializer :: new ( ) ;
1346- let to_serialize =
1347- if let Some ( cluster_send) = node. node . as_any ( ) . downcast_ref :: < ClusterSendNode > ( ) {
1348- ExtensionNodeSerialized :: ClusterSend ( cluster_send. to_serialized ( ) )
1349- } else {
1350- todo ! ( "{:?}" , node)
1351- } ;
1348+ let to_serialize = if let Some ( cluster_send) =
1349+ node. node . as_any ( ) . downcast_ref :: < ClusterSendNode > ( )
1350+ {
1351+ ExtensionNodeSerialized :: ClusterSend ( cluster_send. to_serialized ( ) )
1352+ } else if let Some ( panic_worker) = node. node . as_any ( ) . downcast_ref :: < PanicWorkerNode > ( ) {
1353+ ExtensionNodeSerialized :: PanicWorker ( panic_worker. to_serialized ( ) )
1354+ } else {
1355+ todo ! ( "{:?}" , node)
1356+ } ;
13521357 to_serialize
13531358 . serialize ( & mut ser)
13541359 . map_err ( |e| DataFusionError :: Execution ( format ! ( "try_encode: {}" , e) ) ) ?;
0 commit comments