RWM Console cluster: risingwave-alinma.alinma-rw.svc.cluster.local

← cluster insights objects flow_by_asset_mv explain
Overview Objects Graph History
materialized view · insights.flow_by_asset_mv profiled over 5s
seconds (1–30)

Job is idle — throughput ~0; structure shown.

Stateful hash join (4 state tables) — consider a temporal join for dimension lookupsAggregation state — unbounded unless keyed or temporally filteredWindow state — add a WHERE rank <= N to bound it
36 operators
Materialize · insights.flow_by_asset_mv
0% idle 2 actors
OverWindow Window state — add a WHERE rank <= N to bound it
0% idle 2 actors
LocalityProvider
0% idle 2 actors
Merge
2 actors
Exchange
0% idle 0 actors
Project
2 actors
HashAgg Aggregation state — unbounded unless keyed or temporally filtered
0% idle 2 actors
LocalityProvider
0% idle 2 actors
Merge
2 actors
Exchange
0% idle 0 actors
Filter · ((Case((0:Int64 = flag), 0:Int32, (1:Int64 = flag), 1:Int32…
0% idle 2 actors
Expand · ((Case((0:Int64 = flag), 0:Int32, (1:Int64 = flag), 1:Int32…
0% idle 2 actors
Project · ((Case((0:Int64 = flag), 0:Int32, (1:Int64 = flag), 1:Int32…
2 actors
Filter · ((Case((0:Int64 = flag), 0:Int32, (1:Int64 = flag), 1:Int32…
0% idle 2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · LeftOuter · flow_values_mv_next.transaction_currency = foreign_exchange…
2 actors
HashJoin · LeftOuter · flow_values_mv_next.transaction_currency = foreign_exchange… Stateful hash join (4 state tables) — consider a temporal join for dimension lookups
0% idle 2 actors
Merge
2 actors
Exchange
0% idle 0 actors
StreamScan · foreign_exchange_rates_eod_ft
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
LocalityProvider
0% idle 2 actors
Merge
2 actors
Exchange
0% idle 0 actors
Project
2 actors
HashAgg Aggregation state — unbounded unless keyed or temporally filtered
0% idle 2 actors
LocalityProvider
0% idle 2 actors
Merge
2 actors
Exchange
0% idle 0 actors
StreamScan · flow_values_mv_next
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Heat = the operator's output-buffer backpressure over the sampling window. Click a node to fold its subtree.
Materialize · insights.flow_by_asset_mv Materialize insights.flow_by_asset_… idle · 2 actors OverWindow OverWindow idle · 2 actors LocalityProvider LocalityProvider idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Project Project — · 2 actors HashAgg HashAgg idle · 2 actors LocalityProvider LocalityProvider idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Filter · ((Case((0:Int64 = flag), 0:Int32, (1:Int64 = flag), 1:Int32… Filter ((Case((0:Int64 = flag)… idle · 2 actors Expand · ((Case((0:Int64 = flag), 0:Int32, (1:Int64 = flag), 1:Int32… Expand ((Case((0:Int64 = flag)… idle · 2 actors Project · ((Case((0:Int64 = flag), 0:Int32, (1:Int64 = flag), 1:Int32… Project ((Case((0:Int64 = flag)… — · 2 actors Filter · ((Case((0:Int64 = flag), 0:Int32, (1:Int64 = flag), 1:Int32… Filter ((Case((0:Int64 = flag)… idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · LeftOuter · flow_values_mv_next.transaction_currency = foreign_exchange… SyncLogStore LeftOuter · flow_values… — · 2 actors HashJoin · LeftOuter · flow_values_mv_next.transaction_currency = foreign_exchange… HashJoin LeftOuter · flow_values… idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors StreamScan · foreign_exchange_rates_eod_ft StreamScan foreign_exchange_rates_… idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors LocalityProvider LocalityProvider idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Project Project — · 2 actors HashAgg HashAgg idle · 2 actors LocalityProvider LocalityProvider idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors StreamScan · flow_values_mv_next StreamScan flow_values_mv_next idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors
Streaming operator plan from EXPLAIN ANALYZE. Node heat = backpressure. Drag to pan, scroll to zoom.
Fragments (DESCRIBE FRAGMENTS) — click to expand
Fragment 63924 (Actor 743664,743663)
StreamMaterialize { columns: [account_group_id, dim_transaction_date, asset_id, asset_currency, position_type, currency_code, adjusted_net_flow, adjusted_net_flow_system_currency, adjusted_net_flow_asset_currency, flow_values_mv_next.position_type_expanded(hidden), flag(hidden), cumulative_adjusted_netflow, cumulative_adjusted_netflow_system_currency, cumulative_adjusted_netflow_asset_currency], stream_key: [account_group_id, asset_id, position_type, dim_transaction_date, asset_currency, flow_values_mv_next.position_type_expanded, currency_code, flag], pk_columns: [account_group_id, asset_id, position_type, dim_transaction_date, asset_currency, flow_values_mv_next.position_type_expanded, currency_code, flag], pk_conflict: NoCheck }
├── output: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, $expr2, flow_values_mv_next.group_currency_expanded, sum(sum(flow_values_mv_next.net_value_group)), sum(sum(flow_values_mv_next.net_value_system)), sum($expr1), flow_values_mv_next.position_type_expanded, flag, sum, sum, sum ]
├── stream key: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.asset_id_expanded, $expr2, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, flag ]
└── StreamOverWindow { window_functions: [sum(sum(sum(flow_values_mv_next.net_value_group))) OVER(PARTITION BY flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.asset_id_expanded, $expr2 ORDER BY flow_values_mv_next.dim_transaction_date_expanded ASC ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW), sum(sum(sum(flow_values_mv_next.net_value_system))) OVER(PARTITION BY flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.asset_id_expanded, $expr2 ORDER BY flow_values_mv_next.dim_transaction_date_expanded ASC ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW), sum(sum($expr1)) OVER(PARTITION BY flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.asset_id_expanded, $expr2 ORDER BY flow_values_mv_next.dim_transaction_date_expanded ASC ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)] }
    ├── output: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, $expr2, flow_values_mv_next.group_currency_expanded, sum(sum(flow_values_mv_next.net_value_group)), sum(sum(flow_values_mv_next.net_value_system)), sum($expr1), flow_values_mv_next.position_type_expanded, flag, sum, sum, sum ]
    ├── stream key: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.asset_id_expanded, $expr2, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, flag ]
    └── StreamLocalityProvider { locality_columns: [flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.asset_id_expanded, $expr2] }
        ├── output: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, $expr2, flow_values_mv_next.group_currency_expanded, sum(sum(flow_values_mv_next.net_value_group)), sum(sum(flow_values_mv_next.net_value_system)), sum($expr1), flow_values_mv_next.position_type_expanded, flag ]
        ├── stream key: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.asset_id_expanded, $expr2, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, flag ]
        └── MergeExecutor { output: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, $expr2, flow_values_mv_next.group_currency_expanded, sum(sum(flow_values_mv_next.net_value_group)), sum(sum(flow_values_mv_next.net_value_system)), sum($expr1), flow_values_mv_next.position_type_expanded, flag ], stream key: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, flag ] }

Fragment 63925 (Actor 743665,743666)
StreamProject { exprs: [flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, Case((Case((0:Int64 = flag), 0:Int32, (1:Int64 = flag), 1:Int32) = 1:Int32), 'POSITION':Varchar, flow_values_mv_next.position_type_expanded) as $expr2, flow_values_mv_next.group_currency_expanded, sum(sum(flow_values_mv_next.net_value_group)), sum(sum(flow_values_mv_next.net_value_system)), sum($expr1), flow_values_mv_next.position_type_expanded, flag] }
├── output: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, $expr2, flow_values_mv_next.group_currency_expanded, sum(sum(flow_values_mv_next.net_value_group)), sum(sum(flow_values_mv_next.net_value_system)), sum($expr1), flow_values_mv_next.position_type_expanded, flag ]
├── stream key: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, flag ]
└── StreamHashAgg { group_key: [flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, flag], aggs: [sum(sum(flow_values_mv_next.net_value_group)), sum(sum(flow_values_mv_next.net_value_system)), sum($expr1), count] }
    ├── output: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, flag, sum(sum(flow_values_mv_next.net_value_group)), sum(sum(flow_values_mv_next.net_value_system)), sum($expr1), count ]
    ├── stream key: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, flag ]
    └── StreamLocalityProvider { locality_columns: [flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, flag] }
        ├── output: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, sum(flow_values_mv_next.net_value_group)_expanded, sum(flow_values_mv_next.net_value_system)_expanded, $expr1_expanded, flow_values_mv_next.transaction_currency_expanded, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.asset_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), $expr1, flow_values_mv_next.transaction_currency, flag ]
        ├── stream key: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, flag, flow_values_mv_next.transaction_currency, flow_values_mv_next.asset_currency, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.position_type, flow_values_mv_next.group_currency ]
        └── MergeExecutor
            ├── output: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, sum(flow_values_mv_next.net_value_group)_expanded, sum(flow_values_mv_next.net_value_system)_expanded, $expr1_expanded, flow_values_mv_next.transaction_currency_expanded, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.asset_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), $expr1, flow_values_mv_next.transaction_currency, flag ]
            └── stream key: [ flow_values_mv_next.transaction_currency, flow_values_mv_next.asset_currency, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flag ]

Fragment 63926 (Actor 746899,746898)
StreamFilter { predicate: ((Case((0:Int64 = flag), 0:Int32, (1:Int64 = flag), 1:Int32) = 1:Int32) OR Not(IsNull(flow_values_mv_next.position_type_expanded))) }
├── output: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, sum(flow_values_mv_next.net_value_group)_expanded, sum(flow_values_mv_next.net_value_system)_expanded, $expr1_expanded, flow_values_mv_next.transaction_currency_expanded, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.asset_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), $expr1, flow_values_mv_next.transaction_currency, flag ]
├── stream key: [ flow_values_mv_next.transaction_currency, flow_values_mv_next.asset_currency, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flag ]
└── StreamExpand { column_subsets: [[flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.asset_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency], [flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.asset_currency, flow_values_mv_next.group_currency]] }
    ├── output: [ flow_values_mv_next.account_group_id_expanded, flow_values_mv_next.dim_transaction_date_expanded, flow_values_mv_next.asset_id_expanded, flow_values_mv_next.asset_currency_expanded, flow_values_mv_next.position_type_expanded, flow_values_mv_next.group_currency_expanded, sum(flow_values_mv_next.net_value_group)_expanded, sum(flow_values_mv_next.net_value_system)_expanded, $expr1_expanded, flow_values_mv_next.transaction_currency_expanded, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.asset_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), $expr1, flow_values_mv_next.transaction_currency, flag ]
    ├── stream key: [ flow_values_mv_next.transaction_currency, flow_values_mv_next.asset_currency, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flag ]
    └── StreamProject { exprs: [flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.asset_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), (sum(flow_values_mv_next.net_value) * Coalesce(foreign_exchange_rates_eod_ft.rate, Case((flow_values_mv_next.transaction_currency = flow_values_mv_next.asset_currency), 1:Int32, null:Int32)::Decimal)) as $expr1, flow_values_mv_next.transaction_currency] }
        ├── output: [ flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.asset_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), $expr1, flow_values_mv_next.transaction_currency ]
        ├── stream key: [ flow_values_mv_next.transaction_currency, flow_values_mv_next.asset_currency, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.position_type, flow_values_mv_next.group_currency ]
        └── StreamFilter { predicate: (Not(IsNull(foreign_exchange_rates_eod_ft.rate)) OR (flow_values_mv_next.transaction_currency = flow_values_mv_next.asset_currency)) }
            ├── output: [ flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.asset_currency, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), sum(flow_values_mv_next.net_value), foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date ]
            ├── stream key: [ flow_values_mv_next.transaction_currency, flow_values_mv_next.asset_currency, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.position_type, flow_values_mv_next.group_currency ]
            └── MergeExecutor
                ├── output: [ flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.asset_currency, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), sum(flow_values_mv_next.net_value), foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date ]
                └── stream key: [ flow_values_mv_next.transaction_currency, flow_values_mv_next.asset_currency, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.position_type, flow_values_mv_next.group_currency ]

Fragment 63927 (Actor 746897,746896)
StreamSyncLogStore
├── output: [ flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.asset_currency, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), sum(flow_values_mv_next.net_value), foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date ]
├── stream key: [ flow_values_mv_next.transaction_currency, flow_values_mv_next.asset_currency, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.position_type, flow_values_mv_next.group_currency ]
└── StreamHashJoin { type: LeftOuter, predicate: flow_values_mv_next.transaction_currency = foreign_exchange_rates_eod_ft.source_currency_code AND flow_values_mv_next.asset_currency = foreign_exchange_rates_eod_ft.target_currency_code AND flow_values_mv_next.dim_transaction_date = foreign_exchange_rates_eod_ft.date }
    ├── output: [ flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.asset_currency, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), sum(flow_values_mv_next.net_value), foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date ]
    ├── stream key: [ flow_values_mv_next.transaction_currency, flow_values_mv_next.asset_currency, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.position_type, flow_values_mv_next.group_currency ]
    ├── MergeExecutor { output: [ flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flow_values_mv_next.asset_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), sum(flow_values_mv_next.net_value) ], stream key: [ flow_values_mv_next.transaction_currency, flow_values_mv_next.asset_currency, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.position_type, flow_values_mv_next.group_currency ] }
    └── MergeExecutor { output: [ foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date, foreign_exchange_rates_eod_ft.rate ], stream key: [ foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date ] }

Fragment 63928 (Actor 746900,746901)
StreamLocalityProvider { locality_columns: [flow_values_mv_next.transaction_currency, flow_values_mv_next.asset_currency, flow_values_mv_next.dim_transaction_date] } { output: [ flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flow_values_mv_next.asset_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), sum(flow_values_mv_next.net_value) ], stream key: [ flow_values_mv_next.transaction_currency, flow_values_mv_next.asset_currency, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.position_type, flow_values_mv_next.group_currency ] }
└── MergeExecutor { output: [ flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flow_values_mv_next.asset_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), sum(flow_values_mv_next.net_value) ], stream key: [ flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flow_values_mv_next.asset_currency ] }

Fragment 63929 (Actor 746902,746903)
StreamProject { exprs: [flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flow_values_mv_next.asset_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), sum(flow_values_mv_next.net_value)] }
├── output: [ flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flow_values_mv_next.asset_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), sum(flow_values_mv_next.net_value) ]
├── stream key: [ flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flow_values_mv_next.asset_currency ]
└── StreamHashAgg { group_key: [flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flow_values_mv_next.asset_currency], aggs: [sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), sum(flow_values_mv_next.net_value), count] }
    ├── output: [ flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flow_values_mv_next.asset_currency, sum(flow_values_mv_next.net_value_group), sum(flow_values_mv_next.net_value_system), sum(flow_values_mv_next.net_value), count ]
    ├── stream key: [ flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flow_values_mv_next.asset_currency ]
    └── StreamLocalityProvider { locality_columns: [flow_values_mv_next.asset_id, flow_values_mv_next.account_group_id, flow_values_mv_next.dim_transaction_date, flow_values_mv_next.transaction_currency, flow_values_mv_next.position_type, flow_values_mv_next.group_currency, flow_values_mv_next.asset_currency] }
        ├── output:
        │   ┌── flow_values_mv_next.asset_id
        │   ├── flow_values_mv_next.account_group_id
        │   ├── flow_values_mv_next.dim_transaction_date
        │   ├── flow_values_mv_next.transaction_currency
        │   ├── flow_values_mv_next.position_type
        │   ├── flow_values_mv_next.group_currency
        │   ├── flow_values_mv_next.asset_currency
        │   ├── flow_values_mv_next.net_value
        │   ├── flow_values_mv_next.net_value_group
        │   ├── flow_values_mv_next.net_value_system
        │   ├── flow_values_mv_next.account_id
        │   ├── flow_values_mv_next.$expr3
        │   ├── flow_values_mv_next.transactions_dm.asset_id
        │   ├── flow_values_mv_next.transactions_dm.transaction_type_id
        │   ├── flow_values_mv_next.transactions_dm.transaction_id
        │   ├── flow_values_mv_next.null:Int32
        │   ├── flow_values_mv_next.$src
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.open_accounts_mv.account_id
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Int32
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#1
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date#1
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#2
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#3
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#4
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.$src
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.open_accounts_mv.account_id
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Int32
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar#1
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.$src
        │   └── flow_values_mv_next.foreign_exchange_rates_eod_ft.target_currency_code
        ├── stream key:
        │   ┌── flow_values_mv_next.asset_id
        │   ├── flow_values_mv_next.account_group_id
        │   ├── flow_values_mv_next.dim_transaction_date
        │   ├── flow_values_mv_next.transaction_currency
        │   ├── flow_values_mv_next.position_type
        │   ├── flow_values_mv_next.group_currency
        │   ├── flow_values_mv_next.asset_currency
        │   ├── flow_values_mv_next.account_id
        │   ├── flow_values_mv_next.$expr3
        │   ├── flow_values_mv_next.transactions_dm.asset_id
        │   ├── flow_values_mv_next.transactions_dm.transaction_type_id
        │   ├── flow_values_mv_next.transactions_dm.transaction_id
        │   ├── flow_values_mv_next.null:Int32
        │   ├── flow_values_mv_next.$src
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.open_accounts_mv.account_id
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Int32
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#1
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date#1
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#2
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#3
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#4
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.$src
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.open_accounts_mv.account_id
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Int32
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar#1
        │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.$src
        │   └── flow_values_mv_next.foreign_exchange_rates_eod_ft.target_currency_code
        └── MergeExecutor
            ├── output:
            │   ┌── flow_values_mv_next.asset_id
            │   ├── flow_values_mv_next.account_group_id
            │   ├── flow_values_mv_next.dim_transaction_date
            │   ├── flow_values_mv_next.transaction_currency
            │   ├── flow_values_mv_next.position_type
            │   ├── flow_values_mv_next.group_currency
            │   ├── flow_values_mv_next.asset_currency
            │   ├── flow_values_mv_next.net_value
            │   ├── flow_values_mv_next.net_value_group
            │   ├── flow_values_mv_next.net_value_system
            │   ├── flow_values_mv_next.account_id
            │   ├── flow_values_mv_next.$expr3
            │   ├── flow_values_mv_next.transactions_dm.asset_id
            │   ├── flow_values_mv_next.transactions_dm.transaction_type_id
            │   ├── flow_values_mv_next.transactions_dm.transaction_id
            │   ├── flow_values_mv_next.null:Int32
            │   ├── flow_values_mv_next.$src
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.open_accounts_mv.account_id
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Int32
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#1
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date#1
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#2
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#3
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#4
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.$src
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.open_accounts_mv.account_id
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Int32
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar#1
            │   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.$src
            │   └── flow_values_mv_next.foreign_exchange_rates_eod_ft.target_currency_code
            └── stream key:
                ┌── flow_values_mv_next.transaction_currency
                ├── flow_values_mv_next.dim_transaction_date
                ├── flow_values_mv_next.group_currency
                ├── flow_values_mv_next.account_id
                ├── flow_values_mv_next.$expr3
                ├── flow_values_mv_next.transactions_dm.asset_id
                ├── flow_values_mv_next.asset_id
                ├── flow_values_mv_next.transactions_dm.transaction_type_id
                ├── flow_values_mv_next.transactions_dm.transaction_id
                ├── flow_values_mv_next.null:Int32
                ├── flow_values_mv_next.$src
                ├── flow_values_mv_next.position_type
                ├── flow_values_mv_next.account_group_id
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.open_accounts_mv.account_id
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Int32
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#1
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date#1
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#2
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#3
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#4
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.$src
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.open_accounts_mv.account_id
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Int32
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar#1
                ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.$src
                └── flow_values_mv_next.foreign_exchange_rates_eod_ft.target_currency_code

Fragment 63930 (Actor 746905,746904)
StreamTableScan { table: flow_values_mv_next, columns: [asset_id, account_group_id, dim_transaction_date, transaction_currency, position_type, group_currency, asset_currency, net_value, net_value_group, net_value_system, account_id, $expr3, transactions_dm.asset_id, transactions_dm.transaction_type_id, transactions_dm.transaction_id, null:Int32, $src, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.open_accounts_mv.account_id, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Int32, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#1, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date#1, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#2, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#3, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#4, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.$src, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.open_accounts_mv.account_id, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Int32, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar#1, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.$src, foreign_exchange_rates_eod_ft.target_currency_code] }
├── output:
│   ┌── flow_values_mv_next.asset_id
│   ├── flow_values_mv_next.account_group_id
│   ├── flow_values_mv_next.dim_transaction_date
│   ├── flow_values_mv_next.transaction_currency
│   ├── flow_values_mv_next.position_type
│   ├── flow_values_mv_next.group_currency
│   ├── flow_values_mv_next.asset_currency
│   ├── flow_values_mv_next.net_value
│   ├── flow_values_mv_next.net_value_group
│   ├── flow_values_mv_next.net_value_system
│   ├── flow_values_mv_next.account_id
│   ├── flow_values_mv_next.$expr3
│   ├── flow_values_mv_next.transactions_dm.asset_id
│   ├── flow_values_mv_next.transactions_dm.transaction_type_id
│   ├── flow_values_mv_next.transactions_dm.transaction_id
│   ├── flow_values_mv_next.null:Int32
│   ├── flow_values_mv_next.$src
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.open_accounts_mv.account_id
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Int32
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#1
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date#1
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#2
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#3
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#4
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.$src
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.open_accounts_mv.account_id
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Int32
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar#1
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.$src
│   └── flow_values_mv_next.foreign_exchange_rates_eod_ft.target_currency_code
├── stream key:
│   ┌── flow_values_mv_next.transaction_currency
│   ├── flow_values_mv_next.dim_transaction_date
│   ├── flow_values_mv_next.group_currency
│   ├── flow_values_mv_next.account_id
│   ├── flow_values_mv_next.$expr3
│   ├── flow_values_mv_next.transactions_dm.asset_id
│   ├── flow_values_mv_next.asset_id
│   ├── flow_values_mv_next.transactions_dm.transaction_type_id
│   ├── flow_values_mv_next.transactions_dm.transaction_id
│   ├── flow_values_mv_next.null:Int32
│   ├── flow_values_mv_next.$src
│   ├── flow_values_mv_next.position_type
│   ├── flow_values_mv_next.account_group_id
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.open_accounts_mv.account_id
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Int32
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#1
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date#1
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#2
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#3
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#4
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.$src
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.open_accounts_mv.account_id
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Int32
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar#1
│   ├── flow_values_mv_next.account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.$src
│   └── flow_values_mv_next.foreign_exchange_rates_eod_ft.target_currency_code
├── Upstream { output: [ asset_id, account_group_id, dim_transaction_date, transaction_currency, position_type, group_currency, asset_currency, net_value, net_value_group, net_value_system, account_id, $expr3, transactions_dm.asset_id, transactions_dm.transaction_type_id, transactions_dm.transaction_id, null:Int32, $src, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.open_accounts_mv.account_id, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Int32, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#1, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date#1, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#2, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#3, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#4, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.$src, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.open_accounts_mv.account_id, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Int32, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar#1, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.$src, foreign_exchange_rates_eod_ft.target_currency_code ], stream key: [] }
└── BatchPlanNode { output: [ asset_id, account_group_id, dim_transaction_date, transaction_currency, position_type, group_currency, asset_currency, net_value, net_value_group, net_value_system, account_id, $expr3, transactions_dm.asset_id, transactions_dm.transaction_type_id, transactions_dm.transaction_id, null:Int32, $src, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.open_accounts_mv.account_id, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Int32, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#1, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Date#1, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#2, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#3, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.null:Varchar#4, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.$src, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.open_accounts_mv.account_id, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Int32, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.null:Varchar#1, account_to_account_groups_txn_binned_mv_next.account_to_account_groups_mv_next.account_groups_mv_next.$src, foreign_exchange_rates_eod_ft.target_currency_code ], stream key: [] }

Fragment 63931 (Actor 746907,746906)
StreamTableScan { table: foreign_exchange_rates_eod_ft, columns: [source_currency_code, target_currency_code, date, rate] } { output: [ foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date, foreign_exchange_rates_eod_ft.rate ], stream key: [ foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date ] }
├── Upstream { output: [ source_currency_code, target_currency_code, date, rate ], stream key: [] }
└── BatchPlanNode { output: [ source_currency_code, target_currency_code, date, rate ], stream key: [] }