foundationdb icon indicating copy to clipboard operation
foundationdb copied to clipboard

Fix circular recursion in Snapshot.Option

Open BMerliot opened this issue 7 months ago • 7 comments

I found this circular recursion in Snapshot, fixing it by copying the code from Transaction : https://github.com/apple/foundationdb/blob/2257b4ed8be2a7239ed23f0569aa69c20a827488/bindings/go/src/fdb/transaction.go#L581-L585

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)

BMerliot avatar May 16 '25 15:05 BMerliot

Result of foundationdb-pr-clang-arm on Linux CentOS 7

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:04:46
  • Result: :x: FAILED
  • Error: Error while executing command: if [[ $(git diff --shortstat 2> /dev/null | tail -n1) == "" ]]; then echo "CODE FORMAT CLEAN"; else echo "CODE FORMAT NOT CLEAN"; echo; echo "THE FOLLOWING FILES NEED TO BE FORMATTED"; echo; git ls-files -m; echo; if [[ $FDB_VERSION =~ 7\.\3. ]]; then echo skip; else exit 1; fi; fi. Reason: exit status 1
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)

foundationdb-ci avatar May 16 '25 17:05 foundationdb-ci

Result of foundationdb-pr on Linux RHEL 9

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:05:03
  • Result: :x: FAILED
  • Error: Error while executing command: if [[ $(git diff --shortstat 2> /dev/null | tail -n1) == "" ]]; then echo "CODE FORMAT CLEAN"; else echo "CODE FORMAT NOT CLEAN"; echo; echo "THE FOLLOWING FILES NEED TO BE FORMATTED"; echo; git ls-files -m; echo; if [[ $FDB_VERSION =~ 7\.\3. ]]; then echo skip; else exit 1; fi; fi. Reason: exit status 1
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)

foundationdb-ci avatar May 16 '25 17:05 foundationdb-ci

Result of foundationdb-pr-clang-ide on Linux RHEL 9

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:05:03
  • Result: :x: FAILED
  • Error: Error while executing command: if [[ $(git diff --shortstat 2> /dev/null | tail -n1) == "" ]]; then echo "CODE FORMAT CLEAN"; else echo "CODE FORMAT NOT CLEAN"; echo; echo "THE FOLLOWING FILES NEED TO BE FORMATTED"; echo; git ls-files -m; echo; if [[ $FDB_VERSION =~ 7\.\3. ]]; then echo skip; else exit 1; fi; fi. Reason: exit status 1
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)

foundationdb-ci avatar May 16 '25 17:05 foundationdb-ci

Result of foundationdb-pr-clang on Linux RHEL 9

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:05:03
  • Result: :x: FAILED
  • Error: Error while executing command: if [[ $(git diff --shortstat 2> /dev/null | tail -n1) == "" ]]; then echo "CODE FORMAT CLEAN"; else echo "CODE FORMAT NOT CLEAN"; echo; echo "THE FOLLOWING FILES NEED TO BE FORMATTED"; echo; git ls-files -m; echo; if [[ $FDB_VERSION =~ 7\.\3. ]]; then echo skip; else exit 1; fi; fi. Reason: exit status 1
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)

foundationdb-ci avatar May 16 '25 17:05 foundationdb-ci

Result of foundationdb-pr-cluster-tests on Linux RHEL 9

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:05:04
  • Result: :x: FAILED
  • Error: Error while executing command: if [[ $(git diff --shortstat 2> /dev/null | tail -n1) == "" ]]; then echo "CODE FORMAT CLEAN"; else echo "CODE FORMAT NOT CLEAN"; echo; echo "THE FOLLOWING FILES NEED TO BE FORMATTED"; echo; git ls-files -m; echo; if [[ $FDB_VERSION =~ 7\.\3. ]]; then echo skip; else exit 1; fi; fi. Reason: exit status 1
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)
  • Cluster Test Logs zip file of the test logs (available for 30 days)

foundationdb-ci avatar May 16 '25 17:05 foundationdb-ci

Result of foundationdb-pr-macos-m1 on macOS Ventura 13.x

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:38:52
  • Result: :white_check_mark: SUCCEEDED
  • Error: N/A
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)

foundationdb-ci avatar May 16 '25 18:05 foundationdb-ci

Result of foundationdb-pr-macos on macOS Ventura 13.x

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:59:27
  • Result: :white_check_mark: SUCCEEDED
  • Error: N/A
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)

foundationdb-ci avatar May 16 '25 18:05 foundationdb-ci

Result of foundationdb-pr-clang-arm on Linux CentOS 7

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:04:03
  • Result: :x: FAILED
  • Error: Error while executing command: if [[ $(git diff --shortstat 2> /dev/null | tail -n1) == "" ]]; then echo "CODE FORMAT CLEAN"; else echo "CODE FORMAT NOT CLEAN"; echo; echo "THE FOLLOWING FILES NEED TO BE FORMATTED"; echo; git ls-files -m; echo; if [[ $FDB_VERSION =~ 7\.\3. ]]; then echo skip; else exit 1; fi; fi. Reason: exit status 1
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)

foundationdb-ci avatar Aug 19 '25 04:08 foundationdb-ci

Result of foundationdb-pr-clang-ide on Linux RHEL 9

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:04:15
  • Result: :x: FAILED
  • Error: Error while executing command: if [[ $(git diff --shortstat 2> /dev/null | tail -n1) == "" ]]; then echo "CODE FORMAT CLEAN"; else echo "CODE FORMAT NOT CLEAN"; echo; echo "THE FOLLOWING FILES NEED TO BE FORMATTED"; echo; git ls-files -m; echo; if [[ $FDB_VERSION =~ 7\.\3. ]]; then echo skip; else exit 1; fi; fi. Reason: exit status 1
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)

foundationdb-ci avatar Aug 19 '25 04:08 foundationdb-ci

Result of foundationdb-pr on Linux RHEL 9

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:04:19
  • Result: :x: FAILED
  • Error: Error while executing command: if [[ $(git diff --shortstat 2> /dev/null | tail -n1) == "" ]]; then echo "CODE FORMAT CLEAN"; else echo "CODE FORMAT NOT CLEAN"; echo; echo "THE FOLLOWING FILES NEED TO BE FORMATTED"; echo; git ls-files -m; echo; if [[ $FDB_VERSION =~ 7\.\3. ]]; then echo skip; else exit 1; fi; fi. Reason: exit status 1
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)

foundationdb-ci avatar Aug 19 '25 04:08 foundationdb-ci

Result of foundationdb-pr-clang on Linux RHEL 9

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:04:21
  • Result: :x: FAILED
  • Error: Error while executing command: if [[ $(git diff --shortstat 2> /dev/null | tail -n1) == "" ]]; then echo "CODE FORMAT CLEAN"; else echo "CODE FORMAT NOT CLEAN"; echo; echo "THE FOLLOWING FILES NEED TO BE FORMATTED"; echo; git ls-files -m; echo; if [[ $FDB_VERSION =~ 7\.\3. ]]; then echo skip; else exit 1; fi; fi. Reason: exit status 1
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)

foundationdb-ci avatar Aug 19 '25 04:08 foundationdb-ci

Result of foundationdb-pr-cluster-tests on Linux RHEL 9

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:04:48
  • Result: :x: FAILED
  • Error: Error while executing command: if [[ $(git diff --shortstat 2> /dev/null | tail -n1) == "" ]]; then echo "CODE FORMAT CLEAN"; else echo "CODE FORMAT NOT CLEAN"; echo; echo "THE FOLLOWING FILES NEED TO BE FORMATTED"; echo; git ls-files -m; echo; if [[ $FDB_VERSION =~ 7\.\3. ]]; then echo skip; else exit 1; fi; fi. Reason: exit status 1
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)
  • Cluster Test Logs zip file of the test logs (available for 30 days)

foundationdb-ci avatar Aug 19 '25 04:08 foundationdb-ci

Result of foundationdb-pr-macos-m1 on macOS Ventura 13.x

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 0:39:39
  • Result: :white_check_mark: SUCCEEDED
  • Error: N/A
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)

foundationdb-ci avatar Aug 19 '25 05:08 foundationdb-ci

Result of foundationdb-pr-macos on macOS Ventura 13.x

  • Commit ID: 1aeada1006591d9c2f9341aa3539bec223a7c20f
  • Duration 1:02:30
  • Result: :white_check_mark: SUCCEEDED
  • Error: N/A
  • Build Log terminal output (available for 30 days)
  • Build Workspace zip file of the working directory (available for 30 days)

foundationdb-ci avatar Aug 19 '25 05:08 foundationdb-ci

@BMerliot The PR looks good. Can you rebase on origin/main to fix the build ? I tried to push to this branch but don't have permission. Thanks.

saintstack avatar Aug 19 '25 15:08 saintstack

I think I don't either from console with git... Should all branches be based on a pined version rather than main or some rule I don't comply with?

BMerliot avatar Aug 20 '25 13:08 BMerliot

@BMerliot I was hoping you'd rebase on main and then these CI complaints would go away (This is a one-liner afterall). I tried pushing to your branch to try rebasing myself but (understandbly) access is shutdown. Thank you.

saintstack avatar Aug 20 '25 16:08 saintstack

I mean I don't have access myself to this branch with git, I have no idea how that happens

BMerliot avatar Aug 20 '25 16:08 BMerliot

And I tried recreating a brand new branch, got denied as well

BMerliot avatar Aug 20 '25 16:08 BMerliot

And I tried recreating a brand new branch, got denied as well @BMerliot

Say more? If you don't have access anymore, we could close this PR and make a new one?

saintstack avatar Aug 20 '25 16:08 saintstack

Replacing this issue w/ https://github.com/apple/foundationdb/pull/12318 because we've lost access. FYI @BMerliot

saintstack avatar Aug 21 '25 03:08 saintstack

Thanks a lot 🙇

BMerliot avatar Aug 21 '25 06:08 BMerliot