Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

branch-3.0: [fix](job)Fix millisecond offset issue in time window scheduling trigger time calculation #45176 #45352

Merged
merged 1 commit into from
Dec 20, 2024

Conversation

github-actions[bot]
Copy link
Contributor

Cherry-picked from #45176

…ger time calculation (#45176)

### Abstract:
In the current time window scheduling logic, the calculation of trigger
times was not strictly aligned to the second level, which could lead to
millisecond offsets. This offset caused issues such as consecutive
trigger times at 14:56:59 and 14:57:00, disrupting the correctness of
the scheduling.

This PR optimizes the calculation of trigger times to ensure that time
points are strictly aligned to the second level, preventing the
accumulation of millisecond errors.

### Issue Description:

Under a specified window (e.g., 14:50:00 to 14:59:00) and a fixed
interval (e.g., every minute), the scheduler generated erroneous trigger
times such as:

```
| 2024-12-04 14:56:59 |
| 2024-12-04 14:57:00 |
| 2024-12-04 14:57:59 |
| 2024-12-04 14:58:00 |
```
#### Cause:
The current firstTriggerTime and the loop calculation did not strictly
align trigger times to the second level, resulting in erroneous trigger
points due to floating-point or millisecond offset accumulation. The end
condition for the time window was not aligned to the second level, which
could lead to additional trigger times being included.

### Fix:
Modification 1: Strictly align the trigger time to the second level.
@hello-stephen
Copy link
Contributor

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.

Please clearly describe your PR:

  1. What problem was fixed (it's best to include specific error reporting information). How it was fixed.
  2. Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
  3. What features were added. Why was this function added?
  4. Which code was refactored and why was this part of the code refactored?
  5. Which functions were optimized and what is the difference before and after the optimization?

@dataroaring dataroaring reopened this Dec 12, 2024
@hello-stephen
Copy link
Contributor

run buildall

@morningman morningman merged commit d8aac1c into branch-3.0 Dec 20, 2024
23 of 24 checks passed
@github-actions github-actions bot deleted the auto-pick-45176-branch-3.0 branch December 20, 2024 01:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants