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_next.account_id = trans…
2 actors
HashJoin · Inner · party_current_account_membership_mv_next.account_id = trans… 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_next
0% idle 2 actors
BatchPlan
2 actors
Merge
2 actors
Heat = the operator's output-buffer backpressure over the sampling window. Click a node to fold its subtree.
Materialize · 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_next.account_id = trans… SyncLogStore Inner · party_current_a… — · 2 actors HashJoin · Inner · party_current_account_membership_mv_next.account_id = trans… 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_next 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 63086 (Actor 745274,745275)
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_next.party_id, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type ]
└── StreamProject { exprs: [party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type ]
    └── StreamHashAgg { group_key: [party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type ]
        └── StreamLocalityProvider { locality_columns: [party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.account_group_type] }
            ├── output:
            │   ┌── party_current_account_membership_mv_next.party_id
            │   ├── party_current_account_membership_mv_next.account_group_type
            │   ├── fee_transactions_dm.fee_type
            │   ├── $expr1
            │   ├── $expr2
            │   ├── transactions_dm.currency_code
            │   ├── transactions_dm.transaction_valuation_date
            │   ├── party_current_account_membership_mv_next.party_currency
            │   ├── party_current_account_membership_mv_next.account_id
            │   ├── party_current_account_membership_mv_next.customer_relationship_id
            │   ├── party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id
            │   ├── party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id
            │   ├── party_current_account_membership_mv_next.party_involvements_dm.entity_id
            │   ├── party_current_account_membership_mv_next.open_accounts_mv.is_restricted
            │   ├── party_current_account_membership_mv_next.$src
            │   ├── party_current_account_membership_mv_next.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_next.party_id
            │   ├── party_current_account_membership_mv_next.account_group_type
            │   ├── transactions_dm.currency_code
            │   ├── transactions_dm.transaction_valuation_date
            │   ├── party_current_account_membership_mv_next.party_currency
            │   ├── party_current_account_membership_mv_next.account_id
            │   ├── party_current_account_membership_mv_next.customer_relationship_id
            │   ├── party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id
            │   ├── party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id
            │   ├── party_current_account_membership_mv_next.party_involvements_dm.entity_id
            │   ├── party_current_account_membership_mv_next.open_accounts_mv.is_restricted
            │   ├── party_current_account_membership_mv_next.$src
            │   ├── party_current_account_membership_mv_next.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_next.party_id
                │   ├── party_current_account_membership_mv_next.account_group_type
                │   ├── fee_transactions_dm.fee_type
                │   ├── $expr1
                │   ├── $expr2
                │   ├── transactions_dm.currency_code
                │   ├── transactions_dm.transaction_valuation_date
                │   ├── party_current_account_membership_mv_next.party_currency
                │   ├── party_current_account_membership_mv_next.account_id
                │   ├── party_current_account_membership_mv_next.customer_relationship_id
                │   ├── party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id
                │   ├── party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id
                │   ├── party_current_account_membership_mv_next.party_involvements_dm.entity_id
                │   ├── party_current_account_membership_mv_next.open_accounts_mv.is_restricted
                │   ├── party_current_account_membership_mv_next.$src
                │   ├── party_current_account_membership_mv_next.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_next.party_currency
                    ├── party_current_account_membership_mv_next.account_id
                    ├── party_current_account_membership_mv_next.party_id
                    ├── party_current_account_membership_mv_next.customer_relationship_id
                    ├── party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id
                    ├── party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id
                    ├── party_current_account_membership_mv_next.party_involvements_dm.entity_id
                    ├── party_current_account_membership_mv_next.open_accounts_mv.is_restricted
                    ├── party_current_account_membership_mv_next.$src
                    ├── party_current_account_membership_mv_next.lifecycle_profiles.id
                    ├── fee_transactions_dm.transaction_id
                    ├── transaction_types_dm.transaction_type_id
                    └── foreign_exchange_rates_eod_ft.target_currency_code

Fragment 63087 (Actor 745276,745277)
StreamProject { exprs: [party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.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_next.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_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type, fee_transactions_dm.fee_type, $expr1, $expr2, transactions_dm.currency_code, transactions_dm.transaction_valuation_date, party_current_account_membership_mv_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.rate, transactions_dm.transaction_valuation_date, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id, foreign_exchange_rates_eod_ft.target_currency_code ]

Fragment 63088 (Actor 745279,745278)
StreamSyncLogStore
├── output: [ transactions_dm.currency_code, transactions_dm.net_value, fee_transactions_dm.fee_type, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.rate, transactions_dm.transaction_valuation_date, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, foreign_exchange_rates_eod_ft.rate, foreign_exchange_rates_eod_ft.rate, transactions_dm.transaction_valuation_date, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, foreign_exchange_rates_eod_ft.rate, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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 63089 (Actor 745384,745385)
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_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, foreign_exchange_rates_eod_ft.rate, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, foreign_exchange_rates_eod_ft.rate, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_currency, transactions_dm.transaction_valuation_date, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]

Fragment 63090 (Actor 745386,745387)
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_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, foreign_exchange_rates_eod_ft.rate, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_currency, transactions_dm.transaction_valuation_date, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, foreign_exchange_rates_eod_ft.rate, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_currency, transactions_dm.transaction_valuation_date, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_currency, transactions_dm.transaction_valuation_date, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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 63091 (Actor 745389,745388)
StreamLocalityProvider { locality_columns: [transactions_dm.currency_code, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_currency, transactions_dm.transaction_valuation_date, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]

Fragment 63092 (Actor 745390,745391)
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_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
└── StreamHashJoin { type: Inner, predicate: party_current_account_membership_mv_next.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_next.party_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.lifecycle_profiles.id, fee_transactions_dm.transaction_id, transaction_types_dm.transaction_type_id ]
    ├── MergeExecutor
    │   ├── output: [ party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.lifecycle_profiles.id ]
    │   └── stream key: [ party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.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 63093 (Actor 745392,745393)
StreamLocalityProvider { locality_columns: [party_current_account_membership_mv_next.account_id] }
├── output: [ party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.lifecycle_profiles.id ]
├── stream key: [ party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.lifecycle_profiles.id ]
└── MergeExecutor { output: [ party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.lifecycle_profiles.id ], stream key: [ party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.lifecycle_profiles.id ] }

Fragment 63094 (Actor 745379,745378)
StreamTableScan { table: party_current_account_membership_mv_next, columns: [party_id, account_id, account_group_type, party_currency, customer_relationship_id, party_active_customer_relationships_mv_next.party_id, party_active_customer_relationships_mv_next.customer_relationship_id, party_involvements_dm.entity_id, open_accounts_mv.is_restricted, $src, lifecycle_profiles.id] }
├── output: [ party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.account_id, party_current_account_membership_mv_next.account_group_type, party_current_account_membership_mv_next.party_currency, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.lifecycle_profiles.id ]
├── stream key: [ party_current_account_membership_mv_next.party_id, party_current_account_membership_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.party_id, party_current_account_membership_mv_next.party_active_customer_relationships_mv_next.customer_relationship_id, party_current_account_membership_mv_next.party_involvements_dm.entity_id, party_current_account_membership_mv_next.open_accounts_mv.is_restricted, party_current_account_membership_mv_next.$src, party_current_account_membership_mv_next.lifecycle_profiles.id ]
├── Upstream { output: [ party_id, account_id, account_group_type, party_currency, customer_relationship_id, party_active_customer_relationships_mv_next.party_id, party_active_customer_relationships_mv_next.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_next.party_id, party_active_customer_relationships_mv_next.customer_relationship_id, party_involvements_dm.entity_id, open_accounts_mv.is_restricted, $src, lifecycle_profiles.id ], stream key: [] }

Fragment 63095 (Actor 745394,745395)
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 63096 (Actor 745396,745397)
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 63097 (Actor 745381,745380)
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 63098 (Actor 745398,745399)
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 63099 (Actor 745405,745404)
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 63100 (Actor 745382,745383)
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 63101 (Actor 745406,745407)
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 63102 (Actor 745432,745431)
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 63103 (Actor 745435,745436)
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 63104 (Actor 745415,745414)
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 63105 (Actor 745438,745437)
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: [] }