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

← cluster adib_rm objects sdk_home_overview_party_mv explain
Overview Objects Graph History
materialized view · adib_rm.sdk_home_overview_party_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 filtered
123 operators
Materialize · adib_rm.sdk_home_overview_party_mv
0% idle 2 actors
Project
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · LeftOuter · parties.id = party_top_allocations_by_sector_mv_next.party_…
2 actors
HashJoin · LeftOuter · parties.id = party_top_allocations_by_sector_mv_next.party_… 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
Filter · party_top_allocations_by_sector_mv_next
0% idle 2 actors
StreamScan · party_top_allocations_by_sector_mv_next
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · LeftOuter · parties.id = party_top_allocations_by_asset_type_mv_next.pa…
2 actors
HashJoin · LeftOuter · parties.id = party_top_allocations_by_asset_type_mv_next.pa… 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
Filter · party_top_allocations_by_asset_type_mv_next
0% idle 2 actors
StreamScan · party_top_allocations_by_asset_type_mv_next
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · LeftOuter · parties.id = party_top_allocations_mv_next.party_id
2 actors
HashJoin · LeftOuter · parties.id = party_top_allocations_mv_next.party_id 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
Filter · party_top_allocations_mv_next
0% idle 2 actors
StreamScan · party_top_allocations_mv_next
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · LeftOuter · parties.id = party_cash_tiles_mv_next.party_id
2 actors
HashJoin · LeftOuter · parties.id = party_cash_tiles_mv_next.party_id 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 · party_cash_tiles_mv_next
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · LeftOuter · parties.id = party_portfolios_mv_next.party_id
2 actors
HashJoin · LeftOuter · parties.id = party_portfolios_mv_next.party_id 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 · party_portfolios_mv_next
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · LeftOuter · party_to_account_groups_mv.account_group_id = intraday_posi…
2 actors
HashJoin · LeftOuter · party_to_account_groups_mv.account_group_id = intraday_posi… 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
Filter · intraday_position_summary_mv_next
0% idle 2 actors
StreamScan · intraday_position_summary_mv_next
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · LeftOuter · party_to_account_groups_mv.account_group_id = pnl_snapshot_…
2 actors
HashJoin · LeftOuter · party_to_account_groups_mv.account_group_id = pnl_snapshot_… 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
Filter · pnl_snapshot_mv_next
0% idle 2 actors
StreamScan · pnl_snapshot_mv_next
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · LeftOuter · party_to_account_groups_mv.account_group_id = position_snap…
2 actors
HashJoin · LeftOuter · party_to_account_groups_mv.account_group_id = position_snap… 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
Project · position_snapshot_mv
2 actors
Filter · position_snapshot_mv
0% idle 2 actors
StreamScan · position_snapshot_mv
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · LeftOuter · parties.id = party_to_account_groups_mv.party_id
2 actors
HashJoin · LeftOuter · parties.id = party_to_account_groups_mv.party_id 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
Project · party_to_account_groups_mv
2 actors
Filter · party_to_account_groups_mv
0% idle 2 actors
StreamScan · party_to_account_groups_mv
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · Inner · parties.id = customer_relationships.party_id
2 actors
HashJoin · Inner · parties.id = customer_relationships.party_id Stateful hash join (4 state tables) — consider a temporal join for dimension lookups
0% idle 2 actors
Project · Inner · parties.id = customer_relationships.party_id
2 actors
HashAgg · Inner · parties.id = customer_relationships.party_id Aggregation state — unbounded unless keyed or temporally filtered
0% idle 2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · Inner · customer_relationships.id = lifecycle_profiles.customer_rel…
2 actors
HashJoin · Inner · customer_relationships.id = lifecycle_profiles.customer_rel… 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
Project · lifecycle_profiles
2 actors
Filter · lifecycle_profiles
0% idle 2 actors
StreamScan · lifecycle_profiles
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
Project · customer_relationships
2 actors
Filter · customer_relationships
0% idle 2 actors
StreamScan · customer_relationships
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
Project · parties
2 actors
Filter · parties
0% idle 2 actors
StreamScan · parties
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 · adib_rm.sdk_home_overview_party_mv Materialize adib_rm.sdk_home_overvi… idle · 2 actors Project Project — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · LeftOuter · parties.id = party_top_allocations_by_sector_mv_next.party_… SyncLogStore LeftOuter · parties.id … — · 2 actors HashJoin · LeftOuter · parties.id = party_top_allocations_by_sector_mv_next.party_… HashJoin LeftOuter · parties.id … idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Filter · party_top_allocations_by_sector_mv_next Filter party_top_allocations_b… idle · 2 actors StreamScan · party_top_allocations_by_sector_mv_next StreamScan party_top_allocations_b… idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · LeftOuter · parties.id = party_top_allocations_by_asset_type_mv_next.pa… SyncLogStore LeftOuter · parties.id … — · 2 actors HashJoin · LeftOuter · parties.id = party_top_allocations_by_asset_type_mv_next.pa… HashJoin LeftOuter · parties.id … idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Filter · party_top_allocations_by_asset_type_mv_next Filter party_top_allocations_b… idle · 2 actors StreamScan · party_top_allocations_by_asset_type_mv_next StreamScan party_top_allocations_b… idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · LeftOuter · parties.id = party_top_allocations_mv_next.party_id SyncLogStore LeftOuter · parties.id … — · 2 actors HashJoin · LeftOuter · parties.id = party_top_allocations_mv_next.party_id HashJoin LeftOuter · parties.id … idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Filter · party_top_allocations_mv_next Filter party_top_allocations_m… idle · 2 actors StreamScan · party_top_allocations_mv_next StreamScan party_top_allocations_m… idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · LeftOuter · parties.id = party_cash_tiles_mv_next.party_id SyncLogStore LeftOuter · parties.id … — · 2 actors HashJoin · LeftOuter · parties.id = party_cash_tiles_mv_next.party_id HashJoin LeftOuter · parties.id … idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors StreamScan · party_cash_tiles_mv_next StreamScan party_cash_tiles_mv_next idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · LeftOuter · parties.id = party_portfolios_mv_next.party_id SyncLogStore LeftOuter · parties.id … — · 2 actors HashJoin · LeftOuter · parties.id = party_portfolios_mv_next.party_id HashJoin LeftOuter · parties.id … idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors StreamScan · party_portfolios_mv_next StreamScan party_portfolios_mv_next idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · LeftOuter · party_to_account_groups_mv.account_group_id = intraday_posi… SyncLogStore LeftOuter · party_to_ac… — · 2 actors HashJoin · LeftOuter · party_to_account_groups_mv.account_group_id = intraday_posi… HashJoin LeftOuter · party_to_ac… idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Filter · intraday_position_summary_mv_next Filter intraday_position_summa… idle · 2 actors StreamScan · intraday_position_summary_mv_next StreamScan intraday_position_summa… idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · LeftOuter · party_to_account_groups_mv.account_group_id = pnl_snapshot_… SyncLogStore LeftOuter · party_to_ac… — · 2 actors HashJoin · LeftOuter · party_to_account_groups_mv.account_group_id = pnl_snapshot_… HashJoin LeftOuter · party_to_ac… idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Filter · pnl_snapshot_mv_next Filter pnl_snapshot_mv_next idle · 2 actors StreamScan · pnl_snapshot_mv_next StreamScan pnl_snapshot_mv_next idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · LeftOuter · party_to_account_groups_mv.account_group_id = position_snap… SyncLogStore LeftOuter · party_to_ac… — · 2 actors HashJoin · LeftOuter · party_to_account_groups_mv.account_group_id = position_snap… HashJoin LeftOuter · party_to_ac… idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Project · position_snapshot_mv Project position_snapshot_mv — · 2 actors Filter · position_snapshot_mv Filter position_snapshot_mv idle · 2 actors StreamScan · position_snapshot_mv StreamScan position_snapshot_mv idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · LeftOuter · parties.id = party_to_account_groups_mv.party_id SyncLogStore LeftOuter · parties.id … — · 2 actors HashJoin · LeftOuter · parties.id = party_to_account_groups_mv.party_id HashJoin LeftOuter · parties.id … idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Project · party_to_account_groups_mv Project party_to_account_groups… — · 2 actors Filter · party_to_account_groups_mv Filter party_to_account_groups… idle · 2 actors StreamScan · party_to_account_groups_mv StreamScan party_to_account_groups… idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · Inner · parties.id = customer_relationships.party_id SyncLogStore Inner · parties.id = cu… — · 2 actors HashJoin · Inner · parties.id = customer_relationships.party_id HashJoin Inner · parties.id = cu… idle · 2 actors Project · Inner · parties.id = customer_relationships.party_id Project Inner · parties.id = cu… — · 2 actors HashAgg · Inner · parties.id = customer_relationships.party_id HashAgg Inner · parties.id = cu… idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · Inner · customer_relationships.id = lifecycle_profiles.customer_rel… SyncLogStore Inner · customer_relati… — · 2 actors HashJoin · Inner · customer_relationships.id = lifecycle_profiles.customer_rel… HashJoin Inner · customer_relati… idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Project · lifecycle_profiles Project lifecycle_profiles — · 2 actors Filter · lifecycle_profiles Filter lifecycle_profiles idle · 2 actors StreamScan · lifecycle_profiles StreamScan lifecycle_profiles idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Project · customer_relationships Project customer_relationships — · 2 actors Filter · customer_relationships Filter customer_relationships idle · 2 actors StreamScan · customer_relationships StreamScan customer_relationships idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Project · parties Project parties — · 2 actors Filter · parties Filter parties idle · 2 actors StreamScan · parties StreamScan parties 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 24663 (Actor 116942,116941)
StreamMaterialize { columns: [party_id, base_currency_code, total_market_value, total_market_value_system_currency, unrealized_gain_loss, portfolios, cash_tiles, favourites, top_allocations, top_allocations_asset_type, top_allocations_sector, party_to_account_groups_mv.parties.id(hidden), party_to_account_groups_mv.null:Varchar(hidden), party_to_account_groups_mv.$src(hidden), position_snapshot_mv.holding_values_latest_mv_next.type_expanded(hidden), position_snapshot_mv.flag(hidden), party_to_account_groups_mv.account_group_id(hidden), pnl_snapshot_mv_next.position_type(hidden), intraday_position_summary_mv_next.position_type(hidden), party_top_allocations_mv_next.account_group_type(hidden), party_top_allocations_by_asset_type_mv_next.account_group_type(hidden), party_top_allocations_by_sector_mv_next.account_group_type(hidden)], stream_key: [party_id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, base_currency_code, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type, party_top_allocations_by_sector_mv_next.account_group_type], pk_columns: [party_id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, base_currency_code, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type, party_top_allocations_by_sector_mv_next.account_group_type], pk_conflict: NoCheck }
├── output: [ parties.id, min(lifecycle_profiles.base_currency_code), $expr1, $expr2, $expr3, $expr4, $expr5, '[]':Jsonb, $expr6, $expr7, $expr8, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type, party_top_allocations_by_sector_mv_next.account_group_type ]
├── stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type, party_top_allocations_by_sector_mv_next.account_group_type ]
└── StreamProject
└─exprs:
  ┌─parties.id
  ├─min(lifecycle_profiles.base_currency_code)
  ├─Coalesce(intraday_position_summary_mv_next.market_value, position_snapshot_mv.market_value) as $expr1
  ├─Case(Not(IsNull(intraday_position_summary_mv_next.market_value)), intraday_position_summary_mv_next.market_value_system_currency, position_snapshot_mv.market_value_system_currency) as $expr2
  ├─JsonbBuildObject('value':Varchar, JsonbBuildObject('amount':Varchar, Case(Not(IsNull(intraday_position_summary_mv_next.market_value)), (intraday_position_summary_mv_next.market_value - intraday_position_summary_mv_next.total_average_cost)::Varchar, pnl_snapshot_mv_next.unrealized_gain_loss::Varchar), 'currencyCode':Varchar, min(lifecycle_profiles.base_currency_code)), 'percentage':Varchar, Case(Not(IsNull(intraday_position_summary_mv_next.market_value)), Case((IsNull(intraday_position_summary_mv_next.total_average_cost) OR (intraday_position_summary_mv_next.total_average_cost = 0:Decimal)), null:Varchar, ((intraday_position_summary_mv_next.market_value - intraday_position_summary_mv_next.total_average_cost) / intraday_position_summary_mv_next.total_average_cost)::Varchar), Case((IsNull(pnl_snapshot_mv_next.total_average_cost) OR (pnl_snapshot_mv_next.total_average_cost = 0:Decimal)), null:Varchar, (pnl_snapshot_mv_next.unrealized_gain_loss / pnl_snapshot_mv_next.total_average_cost)::Varchar))) as $expr3
  ├─Coalesce(party_portfolios_mv_next.portfolios, '[]':Jsonb) as $expr4
  ├─Coalesce(party_cash_tiles_mv_next.cash_tiles, '[]':Jsonb) as $expr5
  ├─'[]':Jsonb
  ├─Coalesce(party_top_allocations_mv_next.top_allocations, '[]':Jsonb) as $expr6
  ├─Coalesce(party_top_allocations_by_asset_type_mv_next.top_allocations_asset_type, '[]':Jsonb) as $expr7
  ├─Coalesce(party_top_allocations_by_sector_mv_next.top_allocations_sector, '[]':Jsonb) as $expr8
  ├─party_to_account_groups_mv.parties.id
  ├─party_to_account_groups_mv.null:Varchar
  ├─party_to_account_groups_mv.$src
  ├─position_snapshot_mv.holding_values_latest_mv_next.type_expanded
  ├─position_snapshot_mv.flag
  ├─party_to_account_groups_mv.account_group_id
  ├─pnl_snapshot_mv_next.position_type
  ├─intraday_position_summary_mv_next.position_type
  ├─party_top_allocations_mv_next.account_group_type
  ├─party_top_allocations_by_asset_type_mv_next.account_group_type
  └─party_top_allocations_by_sector_mv_next.account_group_type
    ├── output: [ parties.id, min(lifecycle_profiles.base_currency_code), $expr1, $expr2, $expr3, $expr4, $expr5, '[]':Jsonb, $expr6, $expr7, $expr8, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type, party_top_allocations_by_sector_mv_next.account_group_type ]
    ├── stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type, party_top_allocations_by_sector_mv_next.account_group_type ]
    └── MergeExecutor { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_cash_tiles_mv_next.cash_tiles, party_top_allocations_mv_next.top_allocations, party_top_allocations_by_asset_type_mv_next.top_allocations_asset_type, party_top_allocations_by_sector_mv_next.top_allocations_sector, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type, party_top_allocations_by_sector_mv_next.party_id, party_top_allocations_by_sector_mv_next.account_group_type ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type, party_top_allocations_by_sector_mv_next.account_group_type ] }

Fragment 24664 (Actor 116939,116940)
StreamSyncLogStore { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_cash_tiles_mv_next.cash_tiles, party_top_allocations_mv_next.top_allocations, party_top_allocations_by_asset_type_mv_next.top_allocations_asset_type, party_top_allocations_by_sector_mv_next.top_allocations_sector, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type, party_top_allocations_by_sector_mv_next.party_id, party_top_allocations_by_sector_mv_next.account_group_type ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type, party_top_allocations_by_sector_mv_next.account_group_type ] }
└── StreamHashJoin { type: LeftOuter, predicate: parties.id = party_top_allocations_by_sector_mv_next.party_id } { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_cash_tiles_mv_next.cash_tiles, party_top_allocations_mv_next.top_allocations, party_top_allocations_by_asset_type_mv_next.top_allocations_asset_type, party_top_allocations_by_sector_mv_next.top_allocations_sector, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type, party_top_allocations_by_sector_mv_next.party_id, party_top_allocations_by_sector_mv_next.account_group_type ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type, party_top_allocations_by_sector_mv_next.account_group_type ] }
    ├── MergeExecutor { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_cash_tiles_mv_next.cash_tiles, party_top_allocations_mv_next.top_allocations, party_top_allocations_by_asset_type_mv_next.top_allocations_asset_type, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.party_id, party_top_allocations_by_asset_type_mv_next.account_group_type ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type ] }
    └── MergeExecutor { output: [ party_top_allocations_by_sector_mv_next.party_id, party_top_allocations_by_sector_mv_next.top_allocations_sector, party_top_allocations_by_sector_mv_next.account_group_type ], stream key: [ party_top_allocations_by_sector_mv_next.party_id, party_top_allocations_by_sector_mv_next.account_group_type ] }

Fragment 24665 (Actor 116947,116948)
StreamSyncLogStore { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_cash_tiles_mv_next.cash_tiles, party_top_allocations_mv_next.top_allocations, party_top_allocations_by_asset_type_mv_next.top_allocations_asset_type, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.party_id, party_top_allocations_by_asset_type_mv_next.account_group_type ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type ] }
└── StreamHashJoin { type: LeftOuter, predicate: parties.id = party_top_allocations_by_asset_type_mv_next.party_id } { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_cash_tiles_mv_next.cash_tiles, party_top_allocations_mv_next.top_allocations, party_top_allocations_by_asset_type_mv_next.top_allocations_asset_type, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.party_id, party_top_allocations_by_asset_type_mv_next.account_group_type ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type, party_top_allocations_by_asset_type_mv_next.account_group_type ] }
    ├── MergeExecutor { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_cash_tiles_mv_next.cash_tiles, party_top_allocations_mv_next.top_allocations, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.party_id, party_top_allocations_mv_next.account_group_type ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type ] }
    └── MergeExecutor { output: [ party_top_allocations_by_asset_type_mv_next.party_id, party_top_allocations_by_asset_type_mv_next.top_allocations_asset_type, party_top_allocations_by_asset_type_mv_next.account_group_type ], stream key: [ party_top_allocations_by_asset_type_mv_next.party_id, party_top_allocations_by_asset_type_mv_next.account_group_type ] }

Fragment 24666 (Actor 116938,116937)
StreamSyncLogStore { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_cash_tiles_mv_next.cash_tiles, party_top_allocations_mv_next.top_allocations, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.party_id, party_top_allocations_mv_next.account_group_type ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type ] }
└── StreamHashJoin { type: LeftOuter, predicate: parties.id = party_top_allocations_mv_next.party_id } { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_cash_tiles_mv_next.cash_tiles, party_top_allocations_mv_next.top_allocations, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.party_id, party_top_allocations_mv_next.account_group_type ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_top_allocations_mv_next.account_group_type ] }
    ├── MergeExecutor { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_cash_tiles_mv_next.cash_tiles, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_cash_tiles_mv_next.party_id ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type ] }
    └── MergeExecutor { output: [ party_top_allocations_mv_next.party_id, party_top_allocations_mv_next.top_allocations, party_top_allocations_mv_next.account_group_type ], stream key: [ party_top_allocations_mv_next.party_id, party_top_allocations_mv_next.account_group_type ] }

Fragment 24667 (Actor 116946,116945)
StreamSyncLogStore { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_cash_tiles_mv_next.cash_tiles, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_cash_tiles_mv_next.party_id ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type ] }
└── StreamHashJoin { type: LeftOuter, predicate: parties.id = party_cash_tiles_mv_next.party_id } { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_cash_tiles_mv_next.cash_tiles, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_cash_tiles_mv_next.party_id ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type ] }
    ├── MergeExecutor { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_portfolios_mv_next.party_id ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type ] }
    └── MergeExecutor { output: [ party_cash_tiles_mv_next.party_id, party_cash_tiles_mv_next.cash_tiles ], stream key: [ party_cash_tiles_mv_next.party_id ] }

Fragment 24668 (Actor 116944,116943)
StreamSyncLogStore { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_portfolios_mv_next.party_id ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type ] }
└── StreamHashJoin { type: LeftOuter, predicate: parties.id = party_portfolios_mv_next.party_id } { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_portfolios_mv_next.portfolios, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type, party_portfolios_mv_next.party_id ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type ] }
    ├── MergeExecutor { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.account_group_id, intraday_position_summary_mv_next.currency_code, intraday_position_summary_mv_next.position_type ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type ] }
    └── MergeExecutor { output: [ party_portfolios_mv_next.party_id, party_portfolios_mv_next.portfolios ], stream key: [ party_portfolios_mv_next.party_id ] }

Fragment 24669 (Actor 116953,116954)
StreamSyncLogStore { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.account_group_id, intraday_position_summary_mv_next.currency_code, intraday_position_summary_mv_next.position_type ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type ] }
└── StreamHashJoin { type: LeftOuter, predicate: party_to_account_groups_mv.account_group_id = intraday_position_summary_mv_next.account_group_id AND min(lifecycle_profiles.base_currency_code) = intraday_position_summary_mv_next.currency_code } { output: [ parties.id, min(lifecycle_profiles.base_currency_code), position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.account_group_id, intraday_position_summary_mv_next.currency_code, intraday_position_summary_mv_next.position_type ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type, intraday_position_summary_mv_next.position_type ] }
    ├── MergeExecutor { output: [ parties.id, min(lifecycle_profiles.base_currency_code), party_to_account_groups_mv.account_group_id, position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, pnl_snapshot_mv_next.account_group_id, pnl_snapshot_mv_next.position_type, pnl_snapshot_mv_next.currency_code ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type ] }
    └── MergeExecutor { output: [ intraday_position_summary_mv_next.account_group_id, intraday_position_summary_mv_next.currency_code, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, intraday_position_summary_mv_next.position_type ], stream key: [ intraday_position_summary_mv_next.account_group_id, intraday_position_summary_mv_next.currency_code, intraday_position_summary_mv_next.position_type ] }

Fragment 24670 (Actor 116951,116952)
StreamSyncLogStore { output: [ parties.id, min(lifecycle_profiles.base_currency_code), party_to_account_groups_mv.account_group_id, position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, pnl_snapshot_mv_next.account_group_id, pnl_snapshot_mv_next.position_type, pnl_snapshot_mv_next.currency_code ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type ] }
└── StreamHashJoin { type: LeftOuter, predicate: party_to_account_groups_mv.account_group_id = pnl_snapshot_mv_next.account_group_id AND min(lifecycle_profiles.base_currency_code) = pnl_snapshot_mv_next.currency_code } { output: [ parties.id, min(lifecycle_profiles.base_currency_code), party_to_account_groups_mv.account_group_id, position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, pnl_snapshot_mv_next.account_group_id, pnl_snapshot_mv_next.position_type, pnl_snapshot_mv_next.currency_code ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code), pnl_snapshot_mv_next.position_type ] }
    ├── MergeExecutor { output: [ parties.id, min(lifecycle_profiles.base_currency_code), party_to_account_groups_mv.account_group_id, position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.account_group_id, position_snapshot_mv.currency_code, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code) ] }
    └── MergeExecutor { output: [ pnl_snapshot_mv_next.account_group_id, pnl_snapshot_mv_next.currency_code, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, pnl_snapshot_mv_next.position_type ], stream key: [ pnl_snapshot_mv_next.account_group_id, pnl_snapshot_mv_next.position_type, pnl_snapshot_mv_next.currency_code ] }

Fragment 24671 (Actor 116949,116950)
StreamSyncLogStore { output: [ parties.id, min(lifecycle_profiles.base_currency_code), party_to_account_groups_mv.account_group_id, position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.account_group_id, position_snapshot_mv.currency_code, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code) ] }
└── StreamHashJoin { type: LeftOuter, predicate: party_to_account_groups_mv.account_group_id = position_snapshot_mv.account_group_id AND min(lifecycle_profiles.base_currency_code) = position_snapshot_mv.currency_code } { output: [ parties.id, min(lifecycle_profiles.base_currency_code), party_to_account_groups_mv.account_group_id, position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.account_group_id, position_snapshot_mv.currency_code, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, party_to_account_groups_mv.account_group_id, min(lifecycle_profiles.base_currency_code) ] }
    ├── MergeExecutor { output: [ parties.id, min(lifecycle_profiles.base_currency_code), party_to_account_groups_mv.account_group_id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src ] }
    └── MergeExecutor { output: [ position_snapshot_mv.account_group_id, position_snapshot_mv.currency_code, position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag ], stream key: [ position_snapshot_mv.account_group_id, position_snapshot_mv.currency_code, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag ] }

Fragment 24672 (Actor 116956,116955)
StreamSyncLogStore { output: [ parties.id, min(lifecycle_profiles.base_currency_code), party_to_account_groups_mv.account_group_id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src ] }
└── StreamHashJoin { type: LeftOuter, predicate: parties.id = party_to_account_groups_mv.party_id } { output: [ parties.id, min(lifecycle_profiles.base_currency_code), party_to_account_groups_mv.account_group_id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src ], stream key: [ parties.id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src ] }
    ├── MergeExecutor { output: [ parties.id, min(lifecycle_profiles.base_currency_code), customer_relationships.party_id ], stream key: [ parties.id ] }
    └── MergeExecutor { output: [ party_to_account_groups_mv.party_id, party_to_account_groups_mv.account_group_id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src ], stream key: [ party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src ] }

Fragment 24673 (Actor 116958,116957)
StreamSyncLogStore { output: [ parties.id, min(lifecycle_profiles.base_currency_code), customer_relationships.party_id ], stream key: [ parties.id ] }
└── StreamHashJoin { type: Inner, predicate: parties.id = customer_relationships.party_id } { output: [ parties.id, min(lifecycle_profiles.base_currency_code), customer_relationships.party_id ], stream key: [ parties.id ] }
    ├── MergeExecutor { output: [ parties.id ], stream key: [ parties.id ] }
    └── StreamProject { exprs: [customer_relationships.party_id, min(lifecycle_profiles.base_currency_code)] } { output: [ customer_relationships.party_id, min(lifecycle_profiles.base_currency_code) ], stream key: [ customer_relationships.party_id ] }
        └── StreamHashAgg { group_key: [customer_relationships.party_id], aggs: [min(lifecycle_profiles.base_currency_code), count] } { output: [ customer_relationships.party_id, min(lifecycle_profiles.base_currency_code), count ], stream key: [ customer_relationships.party_id ] }
            └── MergeExecutor { output: [ customer_relationships.party_id, lifecycle_profiles.base_currency_code, customer_relationships.id, lifecycle_profiles.id ], stream key: [ customer_relationships.id, lifecycle_profiles.id ] }

Fragment 24674 (Actor 116962,116961)
StreamProject { exprs: [parties.id] } { output: [ parties.id ], stream key: [ parties.id ] }
└── StreamFilter { predicate: IsNull(parties.disabled_at) } { output: [ parties.id, parties.disabled_at ], stream key: [ parties.id ] }
    └── StreamTableScan { table: parties, columns: [id, disabled_at] } { output: [ parties.id, parties.disabled_at ], stream key: [ parties.id ] }
        ├── Upstream { output: [ id, disabled_at ], stream key: [] }
        └── BatchPlanNode { output: [ id, disabled_at ], stream key: [] }

Fragment 24675 (Actor 116959,116960)
StreamSyncLogStore { output: [ customer_relationships.party_id, lifecycle_profiles.base_currency_code, customer_relationships.id, lifecycle_profiles.id ], stream key: [ customer_relationships.id, lifecycle_profiles.id ] }
└── StreamHashJoin { type: Inner, predicate: customer_relationships.id = lifecycle_profiles.customer_relationship_id } { output: [ customer_relationships.party_id, lifecycle_profiles.base_currency_code, customer_relationships.id, lifecycle_profiles.id ], stream key: [ customer_relationships.id, lifecycle_profiles.id ] }
    ├── MergeExecutor { output: [ customer_relationships.id, customer_relationships.party_id ], stream key: [ customer_relationships.id ] }
    └── MergeExecutor { output: [ lifecycle_profiles.customer_relationship_id, lifecycle_profiles.base_currency_code, lifecycle_profiles.id ], stream key: [ lifecycle_profiles.id ] }

Fragment 24676 (Actor 116964,116963)
StreamProject { exprs: [customer_relationships.id, customer_relationships.party_id] } { output: [ customer_relationships.id, customer_relationships.party_id ], stream key: [ customer_relationships.id ] }
└── StreamFilter { predicate: (customer_relationships.type = 'CUSTOMER':Varchar) AND (customer_relationships.status = 'ACTIVE':Varchar) AND IsNull(customer_relationships.disabled_at) } { output: [ customer_relationships.id, customer_relationships.party_id, customer_relationships.type, customer_relationships.status, customer_relationships.disabled_at ], stream key: [ customer_relationships.id ] }
    └── StreamTableScan { table: customer_relationships, columns: [id, party_id, type, status, disabled_at] } { output: [ customer_relationships.id, customer_relationships.party_id, customer_relationships.type, customer_relationships.status, customer_relationships.disabled_at ], stream key: [ customer_relationships.id ] }
        ├── Upstream { output: [ id, party_id, type, status, disabled_at ], stream key: [] }
        └── BatchPlanNode { output: [ id, party_id, type, status, disabled_at ], stream key: [] }

Fragment 24677 (Actor 116965,116966)
StreamProject { exprs: [lifecycle_profiles.customer_relationship_id, lifecycle_profiles.base_currency_code, lifecycle_profiles.id] } { output: [ lifecycle_profiles.customer_relationship_id, lifecycle_profiles.base_currency_code, lifecycle_profiles.id ], stream key: [ lifecycle_profiles.id ] }
└── StreamFilter { predicate: IsNull(lifecycle_profiles.disabled_at) } { output: [ lifecycle_profiles.customer_relationship_id, lifecycle_profiles.base_currency_code, lifecycle_profiles.id, lifecycle_profiles.disabled_at ], stream key: [ lifecycle_profiles.id ] }
    └── StreamTableScan { table: lifecycle_profiles, columns: [customer_relationship_id, base_currency_code, id, disabled_at] } { output: [ lifecycle_profiles.customer_relationship_id, lifecycle_profiles.base_currency_code, lifecycle_profiles.id, lifecycle_profiles.disabled_at ], stream key: [ lifecycle_profiles.id ] }
        ├── Upstream { output: [ customer_relationship_id, base_currency_code, id, disabled_at ], stream key: [] }
        └── BatchPlanNode { output: [ customer_relationship_id, base_currency_code, id, disabled_at ], stream key: [] }

Fragment 24678 (Actor 116967,116968)
StreamProject { exprs: [party_to_account_groups_mv.party_id, party_to_account_groups_mv.account_group_id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src] } { output: [ party_to_account_groups_mv.party_id, party_to_account_groups_mv.account_group_id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src ], stream key: [ party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src ] }
└── StreamFilter { predicate: (party_to_account_groups_mv.type = 'all':Varchar) } { output: [ party_to_account_groups_mv.party_id, party_to_account_groups_mv.account_group_id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, party_to_account_groups_mv.type ], stream key: [ party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src ] }
    └── StreamTableScan { table: party_to_account_groups_mv, columns: [party_id, account_group_id, parties.id, null:Varchar, $src, type] } { output: [ party_to_account_groups_mv.party_id, party_to_account_groups_mv.account_group_id, party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src, party_to_account_groups_mv.type ], stream key: [ party_to_account_groups_mv.parties.id, party_to_account_groups_mv.null:Varchar, party_to_account_groups_mv.$src ] }
        ├── Upstream { output: [ party_id, account_group_id, parties.id, null:Varchar, $src, type ], stream key: [] }
        └── BatchPlanNode { output: [ party_id, account_group_id, parties.id, null:Varchar, $src, type ], stream key: [] }

Fragment 24679 (Actor 116969,116970)
StreamProject { exprs: [position_snapshot_mv.account_group_id, position_snapshot_mv.currency_code, position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag] } { output: [ position_snapshot_mv.account_group_id, position_snapshot_mv.currency_code, position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag ], stream key: [ position_snapshot_mv.account_group_id, position_snapshot_mv.currency_code, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag ] }
└── StreamFilter { predicate: (position_snapshot_mv.position_type = 'POSITION':Varchar) } { output: [ position_snapshot_mv.account_group_id, position_snapshot_mv.currency_code, position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, position_snapshot_mv.position_type ], stream key: [ position_snapshot_mv.account_group_id, position_snapshot_mv.currency_code, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag ] }
    └── StreamTableScan { table: position_snapshot_mv, columns: [account_group_id, currency_code, market_value, market_value_system_currency, holding_values_latest_mv_next.type_expanded, flag, position_type] } { output: [ position_snapshot_mv.account_group_id, position_snapshot_mv.currency_code, position_snapshot_mv.market_value, position_snapshot_mv.market_value_system_currency, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag, position_snapshot_mv.position_type ], stream key: [ position_snapshot_mv.account_group_id, position_snapshot_mv.currency_code, position_snapshot_mv.holding_values_latest_mv_next.type_expanded, position_snapshot_mv.flag ] }
        ├── Upstream { output: [ account_group_id, currency_code, market_value, market_value_system_currency, holding_values_latest_mv_next.type_expanded, flag, position_type ], stream key: [] }
        └── BatchPlanNode { output: [ account_group_id, currency_code, market_value, market_value_system_currency, holding_values_latest_mv_next.type_expanded, flag, position_type ], stream key: [] }

Fragment 24680 (Actor 116972,116971)
StreamFilter { predicate: (pnl_snapshot_mv_next.position_type = 'POSITION':Varchar) } { output: [ pnl_snapshot_mv_next.account_group_id, pnl_snapshot_mv_next.currency_code, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, pnl_snapshot_mv_next.position_type ], stream key: [ pnl_snapshot_mv_next.account_group_id, pnl_snapshot_mv_next.position_type, pnl_snapshot_mv_next.currency_code ] }
└── StreamTableScan { table: pnl_snapshot_mv_next, columns: [account_group_id, currency_code, unrealized_gain_loss, total_average_cost, position_type] } { output: [ pnl_snapshot_mv_next.account_group_id, pnl_snapshot_mv_next.currency_code, pnl_snapshot_mv_next.unrealized_gain_loss, pnl_snapshot_mv_next.total_average_cost, pnl_snapshot_mv_next.position_type ], stream key: [ pnl_snapshot_mv_next.account_group_id, pnl_snapshot_mv_next.position_type, pnl_snapshot_mv_next.currency_code ] }
    ├── Upstream { output: [ account_group_id, currency_code, unrealized_gain_loss, total_average_cost, position_type ], stream key: [] }
    └── BatchPlanNode { output: [ account_group_id, currency_code, unrealized_gain_loss, total_average_cost, position_type ], stream key: [] }

Fragment 24681 (Actor 116974,116973)
StreamFilter { predicate: (intraday_position_summary_mv_next.position_type = 'POSITION':Varchar) } { output: [ intraday_position_summary_mv_next.account_group_id, intraday_position_summary_mv_next.currency_code, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, intraday_position_summary_mv_next.position_type ], stream key: [ intraday_position_summary_mv_next.account_group_id, intraday_position_summary_mv_next.currency_code, intraday_position_summary_mv_next.position_type ] }
└── StreamTableScan { table: intraday_position_summary_mv_next, columns: [account_group_id, currency_code, market_value, total_average_cost, market_value_system_currency, position_type] } { output: [ intraday_position_summary_mv_next.account_group_id, intraday_position_summary_mv_next.currency_code, intraday_position_summary_mv_next.market_value, intraday_position_summary_mv_next.total_average_cost, intraday_position_summary_mv_next.market_value_system_currency, intraday_position_summary_mv_next.position_type ], stream key: [ intraday_position_summary_mv_next.account_group_id, intraday_position_summary_mv_next.currency_code, intraday_position_summary_mv_next.position_type ] }
    ├── Upstream { output: [ account_group_id, currency_code, market_value, total_average_cost, market_value_system_currency, position_type ], stream key: [] }
    └── BatchPlanNode { output: [ account_group_id, currency_code, market_value, total_average_cost, market_value_system_currency, position_type ], stream key: [] }

Fragment 24682 (Actor 116976,116975)
StreamTableScan { table: party_portfolios_mv_next, columns: [party_id, portfolios] } { output: [ party_portfolios_mv_next.party_id, party_portfolios_mv_next.portfolios ], stream key: [ party_portfolios_mv_next.party_id ] }
├── Upstream { output: [ party_id, portfolios ], stream key: [] }
└── BatchPlanNode { output: [ party_id, portfolios ], stream key: [] }

Fragment 24683 (Actor 116978,116977)
StreamTableScan { table: party_cash_tiles_mv_next, columns: [party_id, cash_tiles] } { output: [ party_cash_tiles_mv_next.party_id, party_cash_tiles_mv_next.cash_tiles ], stream key: [ party_cash_tiles_mv_next.party_id ] }
├── Upstream { output: [ party_id, cash_tiles ], stream key: [] }
└── BatchPlanNode { output: [ party_id, cash_tiles ], stream key: [] }

Fragment 24684 (Actor 116980,116979)
StreamFilter { predicate: (party_top_allocations_mv_next.account_group_type = 'all':Varchar) } { output: [ party_top_allocations_mv_next.party_id, party_top_allocations_mv_next.top_allocations, party_top_allocations_mv_next.account_group_type ], stream key: [ party_top_allocations_mv_next.party_id, party_top_allocations_mv_next.account_group_type ] }
└── StreamTableScan { table: party_top_allocations_mv_next, columns: [party_id, top_allocations, account_group_type] } { output: [ party_top_allocations_mv_next.party_id, party_top_allocations_mv_next.top_allocations, party_top_allocations_mv_next.account_group_type ], stream key: [ party_top_allocations_mv_next.party_id, party_top_allocations_mv_next.account_group_type ] }
    ├── Upstream { output: [ party_id, top_allocations, account_group_type ], stream key: [] }
    └── BatchPlanNode { output: [ party_id, top_allocations, account_group_type ], stream key: [] }

Fragment 24685 (Actor 116982,116981)
StreamFilter { predicate: (party_top_allocations_by_asset_type_mv_next.account_group_type = 'all':Varchar) } { output: [ party_top_allocations_by_asset_type_mv_next.party_id, party_top_allocations_by_asset_type_mv_next.top_allocations_asset_type, party_top_allocations_by_asset_type_mv_next.account_group_type ], stream key: [ party_top_allocations_by_asset_type_mv_next.party_id, party_top_allocations_by_asset_type_mv_next.account_group_type ] }
└── StreamTableScan { table: party_top_allocations_by_asset_type_mv_next, columns: [party_id, top_allocations_asset_type, account_group_type] } { output: [ party_top_allocations_by_asset_type_mv_next.party_id, party_top_allocations_by_asset_type_mv_next.top_allocations_asset_type, party_top_allocations_by_asset_type_mv_next.account_group_type ], stream key: [ party_top_allocations_by_asset_type_mv_next.party_id, party_top_allocations_by_asset_type_mv_next.account_group_type ] }
    ├── Upstream { output: [ party_id, top_allocations_asset_type, account_group_type ], stream key: [] }
    └── BatchPlanNode { output: [ party_id, top_allocations_asset_type, account_group_type ], stream key: [] }

Fragment 24686 (Actor 116984,116983)
StreamFilter { predicate: (party_top_allocations_by_sector_mv_next.account_group_type = 'all':Varchar) } { output: [ party_top_allocations_by_sector_mv_next.party_id, party_top_allocations_by_sector_mv_next.top_allocations_sector, party_top_allocations_by_sector_mv_next.account_group_type ], stream key: [ party_top_allocations_by_sector_mv_next.party_id, party_top_allocations_by_sector_mv_next.account_group_type ] }
└── StreamTableScan { table: party_top_allocations_by_sector_mv_next, columns: [party_id, top_allocations_sector, account_group_type] } { output: [ party_top_allocations_by_sector_mv_next.party_id, party_top_allocations_by_sector_mv_next.top_allocations_sector, party_top_allocations_by_sector_mv_next.account_group_type ], stream key: [ party_top_allocations_by_sector_mv_next.party_id, party_top_allocations_by_sector_mv_next.account_group_type ] }
    ├── Upstream { output: [ party_id, top_allocations_sector, account_group_type ], stream key: [] }
    └── BatchPlanNode { output: [ party_id, top_allocations_sector, account_group_type ], stream key: [] }