foundationdb icon indicating copy to clipboard operation
foundationdb copied to clipboard

Avoid `cluster_version_changed` errors on startup when using the MVC

Open sfc-gh-abeamon opened this issue 3 years ago • 14 comments

This is a proof-of-concept for an idea I had to avoid the cluster_version_changed error that happens on startup when connecting with the MVC. Rather than forcing you to re-run the transaction, this uses a new DisconnectedTransaction class to buffer up the intended operations and apply them when the connection is established.

It has not been tested in any way.

Code-Reviewer Section

The general pull request guidelines can be found here.

Please check each of the following things and check all boxes before accepting a PR.

  • [ ] The PR has a description, explaining both the problem and the solution.
  • [ ] The description mentions which forms of testing were done and the testing seems reasonable.
  • [ ] Every function/class/actor that was touched is reasonably well documented.

For Release-Branches

If this PR is made against a release-branch, please also check the following:

  • [ ] This change/bugfix is a cherry-pick from the next younger branch (younger release-branch or main if this is the youngest branch)
  • [ ] There is a good reason why this PR needs to go into a release branch and this reason is documented (either in the description above or in a linked GitHub issue)

sfc-gh-abeamon avatar Aug 19 '22 00:08 sfc-gh-abeamon

Result of foundationdb-pr-cluster-tests on Linux CentOS 7

  • Commit ID: 8ae219e5688babef7edcfae540d7e3b1b6d284bf
  • Duration 0:14:45
  • Result: :x: FAILED
  • Error: Error while executing command: ninja -v -C build_output -j ${NPROC} all packages strip_targets. Reason: exit status 1
  • Build Logs (available for 30 days)
  • Build Artifact (available for 30 days)

foundationdb-ci avatar Aug 19 '22 00:08 foundationdb-ci

Result of foundationdb-pr on Linux CentOS 7

  • Commit ID: 8ae219e5688babef7edcfae540d7e3b1b6d284bf
  • Duration 0:14:49
  • Result: :x: FAILED
  • Error: Error while executing command: ninja -v -C build_output -j ${NPROC} all packages strip_targets. Reason: exit status 1
  • Build Logs (available for 30 days)
  • Build Artifact (available for 30 days)

foundationdb-ci avatar Aug 19 '22 00:08 foundationdb-ci

Doxense CI Report for Windows 10

  • Commit ID: 8ae219e5688babef7edcfae540d7e3b1b6d284bf
  • Result: :heavy_check_mark: SUCCEEDED
  • Build Logs (available for 30 days)

fdb-windows-ci avatar Aug 19 '22 01:08 fdb-windows-ci

Result of foundationdb-pr-macos on macOS BigSur 11.5.2

  • Commit ID: 8ae219e5688babef7edcfae540d7e3b1b6d284bf
  • Duration 0:43:10
  • Result: :white_check_mark: SUCCEEDED
  • Error: N/A
  • Build Logs (available for 30 days)
  • Build Artifact (available for 30 days)

foundationdb-ci avatar Aug 19 '22 01:08 foundationdb-ci

Result of foundationdb-pr-cluster-tests on Linux CentOS 7

  • Commit ID: 883780387dcc064bc295dc6e75d06995e56cc7d4
  • Duration 0:14:18
  • Result: :x: FAILED
  • Error: Error while executing command: ninja -v -C build_output -j ${NPROC} all packages strip_targets. Reason: exit status 1
  • Build Logs (available for 30 days)
  • Build Artifact (available for 30 days)

foundationdb-ci avatar Aug 19 '22 02:08 foundationdb-ci

Result of foundationdb-pr on Linux CentOS 7

  • Commit ID: 883780387dcc064bc295dc6e75d06995e56cc7d4
  • Duration 0:14:57
  • Result: :x: FAILED
  • Error: Error while executing command: ninja -v -C build_output -j ${NPROC} all packages strip_targets. Reason: exit status 1
  • Build Logs (available for 30 days)
  • Build Artifact (available for 30 days)

foundationdb-ci avatar Aug 19 '22 02:08 foundationdb-ci

Doxense CI Report for Windows 10

  • Commit ID: 883780387dcc064bc295dc6e75d06995e56cc7d4
  • Result: :heavy_check_mark: SUCCEEDED
  • Build Logs (available for 30 days)

fdb-windows-ci avatar Aug 19 '22 02:08 fdb-windows-ci

Result of foundationdb-pr-macos on macOS BigSur 11.5.2

  • Commit ID: 883780387dcc064bc295dc6e75d06995e56cc7d4
  • Duration 0:42:59
  • Result: :white_check_mark: SUCCEEDED
  • Error: N/A
  • Build Logs (available for 30 days)
  • Build Artifact (available for 30 days)

foundationdb-ci avatar Aug 19 '22 02:08 foundationdb-ci

Result of foundationdb-pr on Linux CentOS 7

  • Commit ID: b527e0cb89ca9ac93a1cd25181bad12d9e529d70
  • Duration 0:47:55
  • Result: :x: FAILED
  • Error: Error while executing command: ctest -j ${NPROC} --no-compress-output -T test --output-on-failure. Reason: exit status 8
  • Build Logs (available for 30 days)
  • Build Artifact (available for 30 days)

foundationdb-ci avatar Aug 19 '22 18:08 foundationdb-ci

Doxense CI Report for Windows 10

  • Commit ID: b527e0cb89ca9ac93a1cd25181bad12d9e529d70
  • Result: :heavy_check_mark: SUCCEEDED
  • Build Logs (available for 30 days)

fdb-windows-ci avatar Aug 19 '22 18:08 fdb-windows-ci

Doxense CI Report for Windows 10

  • Commit ID: 4ba94adc64869161cb350dbf190c73006eec550c
  • Result: :heavy_check_mark: SUCCEEDED
  • Build Logs (available for 30 days)

fdb-windows-ci avatar Aug 19 '22 19:08 fdb-windows-ci

Result of foundationdb-pr on Linux CentOS 7

  • Commit ID: 4ba94adc64869161cb350dbf190c73006eec550c
  • Duration 0:47:54
  • Result: :x: FAILED
  • Error: Error while executing command: ctest -j ${NPROC} --no-compress-output -T test --output-on-failure. Reason: exit status 8
  • Build Logs (available for 30 days)
  • Build Artifact (available for 30 days)

foundationdb-ci avatar Aug 19 '22 19:08 foundationdb-ci

Result of foundationdb-pr-cluster-tests on Linux CentOS 7

  • Commit ID: b527e0cb89ca9ac93a1cd25181bad12d9e529d70
  • Duration 4:02:10
  • Result: :x: FAILED
  • Error: Error while executing command: if $(grep -q -- "--- FAIL:" ${CODEBUILD_SRC_DIR}/fdb-kubernetes-tests/logs/*.log); then echo "TESTS FAILED SEE THESE LOGS:"; echo ; grep -l -- "--- FAIL:" ${CODEBUILD_SRC_DIR}/fdb-kubernetes-tests/logs/*.log; exit 1; fi. Reason: exit status 1
  • Build Logs (available for 30 days)
  • Build Artifact (available for 30 days)

foundationdb-ci avatar Aug 19 '22 21:08 foundationdb-ci

Result of foundationdb-pr-cluster-tests on Linux CentOS 7

  • Commit ID: 4ba94adc64869161cb350dbf190c73006eec550c
  • Duration 3:40:19
  • Result: :white_check_mark: SUCCEEDED
  • Error: N/A
  • Build Logs (available for 30 days)
  • Build Artifact (available for 30 days)

foundationdb-ci avatar Aug 19 '22 22:08 foundationdb-ci