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

Try to fix unstable unittests. #8344

Merged
merged 3 commits into from
Nov 9, 2023
Merged

Try to fix unstable unittests. #8344

merged 3 commits into from
Nov 9, 2023

Conversation

JinheLin
Copy link
Contributor

@JinheLin JinheLin commented Nov 9, 2023

What problem does this PR solve?

Issue Number: ref #6233

Problem Summary:

Unittests TestDateTimeDayMonthYear.dayMonthYearTest is unstable, due to "std::exception. Code: 1001, type: std::__1::system_error, e.what() = random_device failed to open /dev/urandom: Operation not permitted".

image

What is changed and how it works?

  • Replace std::random_device with std::chrono::system_clock here to avoid exceptions like 'random_device failed to open /dev/urandom: Operation not permitted'.
  • The reason of exceptions is unknown, but the probability of its occurrence in unittests TestDateTimeDayMonthYear.dayMonthYearTest is not low.
  • Since this function is just used for testing, using current timestamp as a random seed is not a problem.

Check List

Tests

  • Unit test
  • Integration test
  • Manual test (add detailed scripts or steps below)
  • No code

Side effects

  • Performance regression: Consumes more CPU
  • Performance regression: Consumes more Memory
  • Breaking backward compatibility

Documentation

  • Affects user behaviors
  • Contains syntax changes
  • Contains variable changes
  • Contains experimental features
  • Changes MySQL compatibility

Release note

None

@ti-chi-bot ti-chi-bot bot added release-note-none Denotes a PR that doesn't merit a release note. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Nov 9, 2023
@JinheLin
Copy link
Contributor Author

JinheLin commented Nov 9, 2023

/run-unit-test

@JinheLin
Copy link
Contributor Author

JinheLin commented Nov 9, 2023

/run-unit-test

@ti-chi-bot ti-chi-bot bot added needs-1-more-lgtm Indicates a PR needs 1 more LGTM. approved labels Nov 9, 2023
Copy link
Contributor

ti-chi-bot bot commented Nov 9, 2023

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: JaySon-Huang, Lloyd-Pottiger

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:
  • OWNERS [JaySon-Huang,Lloyd-Pottiger]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@ti-chi-bot ti-chi-bot bot added lgtm and removed needs-1-more-lgtm Indicates a PR needs 1 more LGTM. labels Nov 9, 2023
Copy link
Contributor

ti-chi-bot bot commented Nov 9, 2023

[LGTM Timeline notifier]

Timeline:

  • 2023-11-09 08:13:42.594073667 +0000 UTC m=+3718420.181183801: ☑️ agreed by Lloyd-Pottiger.
  • 2023-11-09 08:43:28.895104666 +0000 UTC m=+3720206.482214796: ☑️ agreed by JaySon-Huang.

@JaySon-Huang
Copy link
Contributor

/run-all-tests

@JinheLin
Copy link
Contributor Author

JinheLin commented Nov 9, 2023

/run-integration-test

1 similar comment
@JinheLin
Copy link
Contributor Author

JinheLin commented Nov 9, 2023

/run-integration-test

@ti-chi-bot ti-chi-bot bot merged commit b092db0 into pingcap:master Nov 9, 2023
JaySon-Huang pushed a commit to ti-chi-bot/tiflash that referenced this pull request Nov 9, 2023
JaySon-Huang pushed a commit to ti-chi-bot/tiflash that referenced this pull request Nov 9, 2023
JaySon-Huang pushed a commit to ti-chi-bot/tiflash that referenced this pull request Nov 13, 2023
@JaySon-Huang
Copy link
Contributor

cherry-pick to release-7.5 in #8363

@JaySon-Huang
Copy link
Contributor

cherry-pick to release-7.1 in #8346

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved lgtm release-note-none Denotes a PR that doesn't merit a release note. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants