A wrapper that merges data from a single upstream fragment and applies projection expressions.
Each SinkHandlerInput represents one upstream fragment with its own merge executor and projection logic.
UpstreamSinkUnionExecutor merges data from multiple upstream fragments, where each fragment
has its own merge logic and projection expressions. This executor is specifically designed for
sink operations that need to union data from different upstream sources.