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

← cluster alinma_bff objects party_fee_totals_mv explain
Overview Objects Graph History
materialized view · alinma_bff.party_fee_totals_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
83 operators
Materialize · alinma_bff.party_fee_totals_mv
0% idle 2 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
Project
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · LeftOuter · transactions_dm.currency_code = foreign_exchange_rates_eod_…
2 actors
HashJoin · LeftOuter · transactions_dm.currency_code = foreign_exchange_rates_eod_… 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
LocalityProvider
0% idle 2 actors
Merge
2 actors
Exchange
0% idle 0 actors
Filter · foreign_exchange_rates_eod_ft
0% idle 2 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
SyncLogStore · LeftOuter · transactions_dm.currency_code = foreign_exchange_rates_eod_…
2 actors
HashJoin · LeftOuter · transactions_dm.currency_code = foreign_exchange_rates_eod_… 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
SyncLogStore · Inner · party_current_account_membership_mv.account_id = transactio…
2 actors
HashJoin · Inner · party_current_account_membership_mv.account_id = transactio… 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
LocalityProvider
0% idle 2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · Inner · fee_transactions_dm.transaction_id = transactions_dm.transa…
2 actors
HashJoin · Inner · fee_transactions_dm.transaction_id = transactions_dm.transa… 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
LocalityProvider
0% idle 2 actors
Merge
2 actors
Exchange
0% idle 0 actors
SyncLogStore · Inner · transaction_types_dm.transaction_type_id = transactions_dm.…
2 actors
HashJoin · Inner · transaction_types_dm.transaction_type_id = transactions_dm.… 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
LocalityProvider
0% idle 2 actors
Merge
2 actors
Exchange
0% idle 0 actors
Project · transactions_dm
2 actors
Filter · transactions_dm
0% idle 2 actors
StreamScan · transactions_dm
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
Project · transaction_types_dm
2 actors
Filter · transaction_types_dm
0% idle 2 actors
StreamScan · transaction_types_dm
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Merge
2 actors
Exchange
0% idle 0 actors
StreamScan · fee_transactions_dm
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
StreamScan · party_current_account_membership_mv
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 · alinma_bff.party_fee_totals_mv Materialize alinma_bff.party_fee_to… idle · 2 actors Project Project — · 2 actors HashAgg HashAgg idle · 2 actors LocalityProvider LocalityProvider idle · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Project Project — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors SyncLogStore · LeftOuter · transactions_dm.currency_code = foreign_exchange_rates_eod_… SyncLogStore LeftOuter · transaction… — · 2 actors HashJoin · LeftOuter · transactions_dm.currency_code = foreign_exchange_rates_eod_… HashJoin LeftOuter · transaction… idle · 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 Filter · foreign_exchange_rates_eod_ft Filter foreign_exchange_rates_… idle · 2 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 SyncLogStore · LeftOuter · transactions_dm.currency_code = foreign_exchange_rates_eod_… SyncLogStore LeftOuter · transaction… — · 2 actors HashJoin · LeftOuter · transactions_dm.currency_code = foreign_exchange_rates_eod_… HashJoin LeftOuter · transaction… 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 SyncLogStore · Inner · party_current_account_membership_mv.account_id = transactio… SyncLogStore Inner · party_current_a… — · 2 actors HashJoin · Inner · party_current_account_membership_mv.account_id = transactio… HashJoin Inner · party_current_a… idle · 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 SyncLogStore · Inner · fee_transactions_dm.transaction_id = transactions_dm.transa… SyncLogStore Inner · fee_transaction… — · 2 actors HashJoin · Inner · fee_transactions_dm.transaction_id = transactions_dm.transa… HashJoin Inner · fee_transaction… idle · 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 SyncLogStore · Inner · transaction_types_dm.transaction_type_id = transactions_dm.… SyncLogStore Inner · transaction_typ… — · 2 actors HashJoin · Inner · transaction_types_dm.transaction_type_id = transactions_dm.… HashJoin Inner · transaction_typ… idle · 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 · transactions_dm Project transactions_dm — · 2 actors Filter · transactions_dm Filter transactions_dm idle · 2 actors StreamScan · transactions_dm StreamScan transactions_dm idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors Project · transaction_types_dm Project transaction_types_dm — · 2 actors Filter · transaction_types_dm Filter transaction_types_dm idle · 2 actors StreamScan · transaction_types_dm StreamScan transaction_types_dm idle · 2 actors BatchPlan BatchPlan — · 2 actors Merge Merge — · 2 actors Merge Merge — · 2 actors Exchange Exchange idle · 0 actors StreamScan · fee_transactions_dm StreamScan fee_transactions_dm 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 StreamScan · party_current_account_membership_mv StreamScan party_current_account_m… 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 52447 (Actor 737904,737903)
StreamMaterialize { columns: [party_id, account_group_type, total_fees, transactional_fees, non_transactional_fees, total_fees_system_currency, transactional_fees_system_currency, non_transactional_fees_system_currency], stream_key: [party_id, account_group_type], pk_columns: [party_id, account_group_type], pk_conflict: NoCheck }
├── output: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, sum($expr1), sum($expr1) filter((fee_transactions_dm.fee_type = 'TRANSACTIONAL':Varchar)), sum($expr1) filter((fee_transactions_dm.fee_type = 'NON_TRANSACTIONAL':Varchar)), sum($expr2), sum($expr2) filter((fee_transactions_dm.fee_type = 'TRANSACTIONAL':Varchar)), sum($expr2) filter((fee_transactions_dm.fee_type = 'NON_TRANSACTIONAL':Varchar)) ]
├── stream key: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type ]
└── StreamProject { exprs: [party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, sum($expr1), sum($expr1) filter((fee_transactions_dm.fee_type = 'TRANSACTIONAL':Varchar)), sum($expr1) filter((fee_transactions_dm.fee_type = 'NON_TRANSACTIONAL':Varchar)), sum($expr2), sum($expr2) filter((fee_transactions_dm.fee_type = 'TRANSACTIONAL':Varchar)), sum($expr2) filter((fee_transactions_dm.fee_type = 'NON_TRANSACTIONAL':Varchar))] }
    ├── output: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, sum($expr1), sum($expr1) filter((fee_transactions_dm.fee_type = 'TRANSACTIONAL':Varchar)), sum($expr1) filter((fee_transactions_dm.fee_type = 'NON_TRANSACTIONAL':Varchar)), sum($expr2), sum($expr2) filter((fee_transactions_dm.fee_type = 'TRANSACTIONAL':Varchar)), sum($expr2) filter((fee_transactions_dm.fee_type = 'NON_TRANSACTIONAL':Varchar)) ]
    ├── stream key: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type ]
    └── StreamHashAgg { group_key: [party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type], aggs: [sum($expr1), sum($expr1) filter((fee_transactions_dm.fee_type = 'TRANSACTIONAL':Varchar)), sum($expr1) filter((fee_transactions_dm.fee_type = 'NON_TRANSACTIONAL':Varchar)), sum($expr2), sum($expr2) filter((fee_transactions_dm.fee_type = 'TRANSACTIONAL':Varchar)), sum($expr2) filter((fee_transactions_dm.fee_type = 'NON_TRANSACTIONAL':Varchar)), count] }
        ├── output: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, sum($expr1), sum($expr1) filter((fee_transactions_dm.fee_type = 'TRANSACTIONAL':Varchar)), sum($expr1) filter((fee_transactions_dm.fee_type = 'NON_TRANSACTIONAL':Varchar)), sum($expr2), sum($expr2) filter((fee_transactions_dm.fee_type = 'TRANSACTIONAL':Varchar)), sum($expr2) filter((fee_transactions_dm.fee_type = 'NON_TRANSACTIONAL':Varchar)), count ]
        ├── stream key: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type ]
        └── StreamLocalityProvider { locality_columns: [party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type] }
            ├── output:
            │   ┌── party_current_account_membership_mv.party_id
            │   ├── party_current_account_membership_mv.account_group_type
            │   ├── fee_transactions_dm.fee_type
            │   ├── $expr1
            │   ├── $expr2
            │   ├── transactions_dm.currency_code
            │   ├── transactions_dm.transaction_valuation_date
            │   ├── party_current_account_membership_mv.party_currency
            │   ├── party_current_account_membership_mv.account_id
            │   ├── party_current_account_membership_mv.customer_relationship_id
            │   ├── party_current_account_membership_mv.party_active_customer_relationships_mv.party_id
            │   ├── party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id
            │   ├── party_current_account_membership_mv.party_involvements_dm.entity_id
            │   ├── party_current_account_membership_mv.open_accounts_mv.is_restricted
            │   ├── party_current_account_membership_mv.$src
            │   ├── party_current_account_membership_mv.lifecycle_profiles.id
            │   ├── fee_transactions_dm.transaction_id
            │   ├── transaction_types_dm.transaction_type_id
            │   └── foreign_exchange_rates_eod_ft.target_currency_code
            ├── stream key:
            │   ┌── party_current_account_membership_mv.party_id
            │   ├── party_current_account_membership_mv.account_group_type
            │   ├── transactions_dm.currency_code
            │   ├── transactions_dm.transaction_valuation_date
            │   ├── party_current_account_membership_mv.party_currency
            │   ├── party_current_account_membership_mv.account_id
            │   ├── party_current_account_membership_mv.customer_relationship_id
            │   ├── party_current_account_membership_mv.party_active_customer_relationships_mv.party_id
            │   ├── party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id
            │   ├── party_current_account_membership_mv.party_involvements_dm.entity_id
            │   ├── party_current_account_membership_mv.open_accounts_mv.is_restricted
            │   ├── party_current_account_membership_mv.$src
            │   ├── party_current_account_membership_mv.lifecycle_profiles.id
            │   ├── fee_transactions_dm.transaction_id
            │   ├── transaction_types_dm.transaction_type_id
            │   └── foreign_exchange_rates_eod_ft.target_currency_code
            └── MergeExecutor
                ├── output:
                │   ┌── party_current_account_membership_mv.party_id
                │   ├── party_current_account_membership_mv.account_group_type
                │   ├── fee_transactions_dm.fee_type
                │   ├── $expr1
                │   ├── $expr2
                │   ├── transactions_dm.currency_code
                │   ├── transactions_dm.transaction_valuation_date
                │   ├── party_current_account_membership_mv.party_currency
                │   ├── party_current_account_membership_mv.account_id
                │   ├── party_current_account_membership_mv.customer_relationship_id
                │   ├── party_current_account_membership_mv.party_active_customer_relationships_mv.party_id
                │   ├── party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id
                │   ├── party_current_account_membership_mv.party_involvements_dm.entity_id
                │   ├── party_current_account_membership_mv.open_accounts_mv.is_restricted
                │   ├── party_current_account_membership_mv.$src
                │   ├── party_current_account_membership_mv.lifecycle_profiles.id
                │   ├── fee_transactions_dm.transaction_id
                │   ├── transaction_types_dm.transaction_type_id
                │   └── foreign_exchange_rates_eod_ft.target_currency_code
                └── stream key:
                    ┌── transactions_dm.currency_code
                    ├── transactions_dm.transaction_valuation_date
                    ├── party_current_account_membership_mv.party_currency
                    ├── party_current_account_membership_mv.account_id
                    ├── party_current_account_membership_mv.party_id
                    ├── party_current_account_membership_mv.customer_relationship_id
                    ├── party_current_account_membership_mv.party_active_customer_relationships_mv.party_id
                    ├── party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id
                    ├── party_current_account_membership_mv.party_involvements_dm.entity_id
                    ├── party_current_account_membership_mv.open_accounts_mv.is_restricted
                    ├── party_current_account_membership_mv.$src
                    ├── party_current_account_membership_mv.lifecycle_profiles.id
                    ├── fee_transactions_dm.transaction_id
                    ├── transaction_types_dm.transaction_type_id
                    └── foreign_exchange_rates_eod_ft.target_currency_code

Fragment 52448 (Actor 737913,737914)
StreamProject { exprs: [party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, fee_transactions_dm.fee_type, (transactions_dm.net_value * Coalesce(foreign_exchange_rates_eod_ft.rate, Case((transactions_dm.currency_code = party_current_account_membership_mv.party_currency), 1:Int32, null:Int32)::Decimal)) as $expr1, (transactions_dm.net_value * Coalesce(foreign_exchange_rates_eod_ft.rate, Case((transactions_dm.currency_code = 'SAR':Varchar), 1:Int32, null:Int32)::Decimal)) as $expr2, transactions_dm.currency_code, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.target_currency_code] }
├── output: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, fee_transactions_dm.fee_type, $expr1, $expr2, transactions_dm.currency_code, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.target_currency_code ]
├── stream key: [ transactions_dm.currency_code, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.target_currency_code ]
└── MergeExecutor
    ├── output: [ transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.rate, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.date, foreign_exchange_rates_eod_ft.target_currency_code ]
    └── stream key: [ transactions_dm.currency_code, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.target_currency_code ]

Fragment 52449 (Actor 737915,737916)
StreamSyncLogStore
├── output: [ transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.rate, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.date, foreign_exchange_rates_eod_ft.target_currency_code ]
├── stream key: [ transactions_dm.currency_code, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.target_currency_code ]
└── StreamHashJoin { type: LeftOuter, predicate: transactions_dm.currency_code = foreign_exchange_rates_eod_ft.source_currency_code AND transactions_dm.transaction_valuation_date = foreign_exchange_rates_eod_ft.date }
    ├── output: [ transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.rate, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.date, foreign_exchange_rates_eod_ft.target_currency_code ]
    ├── stream key: [ transactions_dm.currency_code, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.target_currency_code ]
    ├── MergeExecutor
    │   ├── output: [ transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, foreign_exchange_rates_eod_ft.rate, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date ]
    │   └── stream key: [ transactions_dm.currency_code, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
    └── MergeExecutor { output: [ foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.date, foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.target_currency_code ], stream key: [ foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.date, foreign_exchange_rates_eod_ft.target_currency_code ] }

Fragment 52450 (Actor 737918,737917)
StreamLocalityProvider { locality_columns: [transactions_dm.currency_code, transactions_dm.transaction_valuation_date] }
├── output: [ transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, foreign_exchange_rates_eod_ft.rate, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date ]
├── stream key: [ transactions_dm.currency_code, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
└── MergeExecutor
    ├── output: [ transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, foreign_exchange_rates_eod_ft.rate, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date ]
    └── stream key: [ transactions_dm.currency_code, party_current_account_membership_mv.party_currency, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]

Fragment 52451 (Actor 737919,737920)
StreamSyncLogStore
├── output: [ transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, foreign_exchange_rates_eod_ft.rate, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date ]
├── stream key: [ transactions_dm.currency_code, party_current_account_membership_mv.party_currency, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
└── StreamHashJoin { type: LeftOuter, predicate: transactions_dm.currency_code = foreign_exchange_rates_eod_ft.source_currency_code AND party_current_account_membership_mv.party_currency = foreign_exchange_rates_eod_ft.target_currency_code AND transactions_dm.transaction_valuation_date = foreign_exchange_rates_eod_ft.date }
    ├── output: [ transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, foreign_exchange_rates_eod_ft.rate, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date ]
    ├── stream key: [ transactions_dm.currency_code, party_current_account_membership_mv.party_currency, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
    ├── MergeExecutor
    │   ├── output: [ transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, transactions_dm.account_id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
    │   └── stream key: [ transactions_dm.currency_code, party_current_account_membership_mv.party_currency, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
    └── 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 52452 (Actor 737922,737921)
StreamLocalityProvider { locality_columns: [transactions_dm.currency_code, party_current_account_membership_mv.party_currency, transactions_dm.transaction_valuation_date] }
├── output: [ transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, transactions_dm.account_id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
├── stream key: [ transactions_dm.currency_code, party_current_account_membership_mv.party_currency, transactions_dm.transaction_valuation_date, party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
└── MergeExecutor
    ├── output: [ transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, transactions_dm.account_id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
    └── stream key: [ party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]

Fragment 52453 (Actor 737924,737923)
StreamSyncLogStore
├── output: [ transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, transactions_dm.account_id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
├── stream key: [ party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
└── StreamHashJoin { type: Inner, predicate: party_current_account_membership_mv.account_id = transactions_dm.account_id }
    ├── output: [ transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.account_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, transactions_dm.account_id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
    ├── stream key: [ party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
    ├── MergeExecutor { output: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id ], stream key: [ party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id ] }
    └── MergeExecutor { output: [ fee_transactions_dm.fee_type, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.transaction_id, transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ], stream key: [ transactions_dm.account_id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ] }

Fragment 52454 (Actor 737926,737925)
StreamLocalityProvider { locality_columns: [party_current_account_membership_mv.account_id] }
├── output: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id ]
├── stream key: [ party_current_account_membership_mv.account_id, party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id ]
└── MergeExecutor { output: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id ], stream key: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id ] }

Fragment 52455 (Actor 737886,737885)
StreamTableScan { table: party_current_account_membership_mv, columns: [party_id, account_id, account_group_type, party_currency, customer_relationship_id, party_active_customer_relationships_mv.party_id, party_active_customer_relationships_mv.customer_relationship_id, party_involvements_dm.entity_id, open_accounts_mv.is_restricted, $src, lifecycle_profiles.id] }
├── output: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.account_id, party_current_account_membership_mv.account_group_type, party_current_account_membership_mv.party_currency, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id ]
├── stream key: [ party_current_account_membership_mv.party_id, party_current_account_membership_mv.customer_relationship_id, party_current_account_membership_mv.party_active_customer_relationships_mv.party_id, party_current_account_membership_mv.party_active_customer_relationships_mv.customer_relationship_id, party_current_account_membership_mv.party_involvements_dm.entity_id, party_current_account_membership_mv.open_accounts_mv.is_restricted, party_current_account_membership_mv.$src, party_current_account_membership_mv.lifecycle_profiles.id ]
├── Upstream { output: [ party_id, account_id, account_group_type, party_currency, customer_relationship_id, party_active_customer_relationships_mv.party_id, party_active_customer_relationships_mv.customer_relationship_id, party_involvements_dm.entity_id, open_accounts_mv.is_restricted, $src, lifecycle_profiles.id ], stream key: [] }
└── BatchPlanNode { output: [ party_id, account_id, account_group_type, party_currency, customer_relationship_id, party_active_customer_relationships_mv.party_id, party_active_customer_relationships_mv.customer_relationship_id, party_involvements_dm.entity_id, open_accounts_mv.is_restricted, $src, lifecycle_profiles.id ], stream key: [] }

Fragment 52456 (Actor 737928,737927)
StreamLocalityProvider { locality_columns: [transactions_dm.account_id] } { output: [ fee_transactions_dm.fee_type, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.transaction_id, transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ], stream key: [ transactions_dm.account_id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ] }
└── MergeExecutor { output: [ fee_transactions_dm.fee_type, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.transaction_id, transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ], stream key: [ fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ] }

Fragment 52457 (Actor 737929,737930)
StreamSyncLogStore { output: [ fee_transactions_dm.fee_type, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.transaction_id, transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ], stream key: [ fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ] }
└── StreamHashJoin { type: Inner, predicate: fee_transactions_dm.transaction_id = transactions_dm.transaction_id } { output: [ fee_transactions_dm.fee_type, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.transaction_id, transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ], stream key: [ fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ] }
    ├── MergeExecutor { output: [ fee_transactions_dm.transaction_id, fee_transactions_dm.fee_type ], stream key: [ fee_transactions_dm.transaction_id ] }
    └── MergeExecutor { output: [ transactions_dm.transaction_id, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, transaction_types_dm.transaction_type_id, transactions_dm.transaction_type_id ], stream key: [ transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ] }

Fragment 52458 (Actor 737887,737888)
StreamTableScan { table: fee_transactions_dm, columns: [transaction_id, fee_type] } { output: [ fee_transactions_dm.transaction_id, fee_transactions_dm.fee_type ], stream key: [ fee_transactions_dm.transaction_id ] }
├── Upstream { output: [ transaction_id, fee_type ], stream key: [] }
└── BatchPlanNode { output: [ transaction_id, fee_type ], stream key: [] }

Fragment 52459 (Actor 737932,737931)
StreamLocalityProvider { locality_columns: [transactions_dm.transaction_id] } { output: [ transactions_dm.transaction_id, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, transaction_types_dm.transaction_type_id, transactions_dm.transaction_type_id ], stream key: [ transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ] }
└── MergeExecutor { output: [ transactions_dm.transaction_id, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, transaction_types_dm.transaction_type_id, transactions_dm.transaction_type_id ], stream key: [ transaction_types_dm.transaction_type_id, transactions_dm.transaction_id ] }

Fragment 52460 (Actor 737933,737934)
StreamSyncLogStore { output: [ transactions_dm.transaction_id, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, transaction_types_dm.transaction_type_id, transactions_dm.transaction_type_id ], stream key: [ transaction_types_dm.transaction_type_id, transactions_dm.transaction_id ] }
└── StreamHashJoin { type: Inner, predicate: transaction_types_dm.transaction_type_id = transactions_dm.transaction_type_id } { output: [ transactions_dm.transaction_id, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.currency_code, transactions_dm.net_value, transaction_types_dm.transaction_type_id, transactions_dm.transaction_type_id ], stream key: [ transaction_types_dm.transaction_type_id, transactions_dm.transaction_id ] }
    ├── MergeExecutor { output: [ transaction_types_dm.transaction_type_id ], stream key: [ transaction_types_dm.transaction_type_id ] }
    └── MergeExecutor { output: [ transactions_dm.transaction_id, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.transaction_type_id, transactions_dm.currency_code, transactions_dm.net_value ], stream key: [ transactions_dm.transaction_type_id, transactions_dm.transaction_id ] }

Fragment 52461 (Actor 737943,737944)
StreamProject { exprs: [transaction_types_dm.transaction_type_id] } { output: [ transaction_types_dm.transaction_type_id ], stream key: [ transaction_types_dm.transaction_type_id ] }
└── StreamFilter { predicate: (transaction_types_dm.type = 'FEE':Varchar) } { output: [ transaction_types_dm.transaction_type_id, transaction_types_dm.type ], stream key: [ transaction_types_dm.transaction_type_id ] }
    └── StreamTableScan { table: transaction_types_dm, columns: [transaction_type_id, type] } { output: [ transaction_types_dm.transaction_type_id, transaction_types_dm.type ], stream key: [ transaction_types_dm.transaction_type_id ] }
        ├── Upstream { output: [ transaction_type_id, type ], stream key: [] }
        └── BatchPlanNode { output: [ transaction_type_id, type ], stream key: [] }

Fragment 52462 (Actor 737935,737936)
StreamLocalityProvider { locality_columns: [transactions_dm.transaction_type_id] } { output: [ transactions_dm.transaction_id, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.transaction_type_id, transactions_dm.currency_code, transactions_dm.net_value ], stream key: [ transactions_dm.transaction_type_id, transactions_dm.transaction_id ] }
└── MergeExecutor { output: [ transactions_dm.transaction_id, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.transaction_type_id, transactions_dm.currency_code, transactions_dm.net_value ], stream key: [ transactions_dm.transaction_id ] }

Fragment 52463 (Actor 737941,737942)
StreamProject { exprs: [transactions_dm.transaction_id, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.transaction_type_id, transactions_dm.currency_code, transactions_dm.net_value] } { output: [ transactions_dm.transaction_id, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.transaction_type_id, transactions_dm.currency_code, transactions_dm.net_value ], stream key: [ transactions_dm.transaction_id ] }
└── StreamFilter { predicate: IsNull(transactions_dm.disabled_at) } { output: [ transactions_dm.transaction_id, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.transaction_type_id, transactions_dm.currency_code, transactions_dm.net_value, transactions_dm.disabled_at ], stream key: [ transactions_dm.transaction_id ] }
    └── StreamTableScan { table: transactions_dm, columns: [transaction_id, account_id, transaction_valuation_date, transaction_type_id, currency_code, net_value, disabled_at] } { output: [ transactions_dm.transaction_id, transactions_dm.account_id, transactions_dm.transaction_valuation_date, transactions_dm.transaction_type_id, transactions_dm.currency_code, transactions_dm.net_value, transactions_dm.disabled_at ], stream key: [ transactions_dm.transaction_id ] }
        ├── Upstream { output: [ transaction_id, account_id, transaction_valuation_date, transaction_type_id, currency_code, net_value, disabled_at ], stream key: [] }
        └── BatchPlanNode { output: [ transaction_id, account_id, transaction_valuation_date, transaction_type_id, currency_code, net_value, disabled_at ], stream key: [] }

Fragment 52464 (Actor 737945,737946)
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: [] }

Fragment 52465 (Actor 737940,737939)
StreamLocalityProvider { locality_columns: [foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.date] } { output: [ foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.date, foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.target_currency_code ], stream key: [ foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.date, foreign_exchange_rates_eod_ft.target_currency_code ] }
└── MergeExecutor { output: [ foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.date, foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.target_currency_code ], 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 52466 (Actor 737948,737947)
StreamFilter { predicate: (foreign_exchange_rates_eod_ft.target_currency_code = 'SAR':Varchar) } { output: [ foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.date, foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.target_currency_code ], stream key: [ foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.target_currency_code, foreign_exchange_rates_eod_ft.date ] }
└── StreamTableScan { table: foreign_exchange_rates_eod_ft, columns: [source_currency_code, date, rate, target_currency_code] } { output: [ foreign_exchange_rates_eod_ft.source_currency_code, foreign_exchange_rates_eod_ft.date, foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.target_currency_code ], 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, date, rate, target_currency_code ], stream key: [] }
    └── BatchPlanNode { output: [ source_currency_code, date, rate, target_currency_code ], stream key: [] }