You Zhou created SPARK-58309:
--------------------------------

             Summary: now() and current_timestamp() are not anchored to the 
batch timestamp in streaming queries
                 Key: SPARK-58309
                 URL: https://issues.apache.org/jira/browse/SPARK-58309
             Project: Spark
          Issue Type: Bug
          Components: Structured Streaming
    Affects Versions: 4.2.0
            Reporter: You Zhou


In micro-batch streaming, CURRENT_LIKE temporal expressions are rewritten to 
CurrentBatchTimestamp so their value is anchored to the batch timestamp 
(persisted in the offset log) and is reproducible across batch 
replays/restarts. The rewrite in MicroBatchExecution only matched 
CurrentTimestamp, missing now() (Now, a sibling under CurrentTimestampLike) and 
current_time() (CurrentTime, which also needs a TimeType branch in 
CurrentBatchTimestamp.toLiteral). As a result these fold to wall-clock time at 
plan-optimization time and produce non-deterministic values on replay.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to