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

fix: revert to go1.22 windows filesystem stdlib behavior #2692

Merged
merged 1 commit into from
Dec 7, 2024

Conversation

andyzhangx
Copy link
Member

@andyzhangx andyzhangx commented Dec 5, 2024

What type of PR is this?

/kind bug

What this PR does / why we need it:

Revert to go 1.22 windows filesystem behavior building with go 1.23 until use of Stat/Lstat/EvalSymlinks adjusts to go1.23 behavior

  • golang 1.23.1 building with godebug winreadlinkvolume=0
C:\>dir C:\var\lib\kubelet\plugins\kubernetes.io\csi\disk.csi.azure.com\72bb2b07b6028371cea50fb631344dc9113f0846681814572edb765f698195da
 Volume in drive C is Windows
 Volume Serial Number is 663A-A45B

 Directory of C:\var\lib\kubelet\plugins\kubernetes.io\csi\disk.csi.azure.com\72bb2b07b6028371cea50fb631344dc9113f0846681814572edb765f698195da

09/11/2024  03:33 AM    <DIR>          .
12/05/2024  08:21 AM    <DIR>          ..
09/11/2024  03:33 AM    <JUNCTION>     globalmount [\??\Volume{99cc61ac-6fec-11ef-bbb1-cd4785e79c6b}\]
09/11/2024  03:34 AM               230 vol_data.json
               1 File(s)            230 bytes
               3 Dir(s)  80,665,006,080 bytes free

C:\>osreadlink.exe C:\var\lib\kubelet\plugins\kubernetes.io\csi\disk.csi.azure.com\72bb2b07b6028371cea50fb631344dc9113f0846681814572edb765f698195da\globalmount
Symlink target: F:\
  • golang 1.23.1 building with godebug winreadlinkvolume=1 keeps the original behavior (os.ReadLink should return \\?\Volume{99cc61ac-6fec-11ef-bbb1-cd4785e79c6b}\)
C:\>dir C:\var\lib\kubelet\plugins\kubernetes.io\csi\disk.csi.azure.com\72bb2b07b6028371cea50fb631344dc9113f0846681814572edb765f698195da\
 Volume in drive C is Windows
 Volume Serial Number is 663A-A45B

 Directory of C:\var\lib\kubelet\plugins\kubernetes.io\csi\disk.csi.azure.com\72bb2b07b6028371cea50fb631344dc9113f0846681814572edb765f698195da

09/11/2024  03:33 AM    <DIR>          .
12/05/2024  08:21 AM    <DIR>          ..
09/11/2024  03:33 AM    <JUNCTION>     globalmount [\??\Volume{99cc61ac-6fec-11ef-bbb1-cd4785e79c6b}\]
09/11/2024  03:34 AM               230 vol_data.json
               1 File(s)            230 bytes
               3 Dir(s)  80,661,196,800 bytes free

C:\>osreadlink.exe C:\var\lib\kubelet\plugins\kubernetes.io\csi\disk.csi.azure.com\72bb2b07b6028371cea50fb631344dc9113f0846681814572edb765f698195da\globalmount
Symlink target: \\?\Volume{99cc61ac-6fec-11ef-bbb1-cd4785e79c6b}\

for more details, refer to kubernetes/kubernetes#129080

Which issue(s) this PR fixes:

Fixes #

Special notes for your reviewer:

Does this PR introduce a user-facing change?

fix: revert to go1.22 windows filesystem stdlib behavior building with go 1.23

Additional documentation e.g., KEPs (Kubernetes Enhancement Proposals), usage docs, etc.:

fix: revert to go1.22 windows filesystem stdlib behavior building with go 1.23

@k8s-ci-robot k8s-ci-robot added kind/bug Categorizes issue or PR as related to a bug. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Dec 5, 2024
@k8s-ci-robot k8s-ci-robot requested a review from cvvz December 5, 2024 03:07
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: andyzhangx

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:

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

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Dec 5, 2024
@andyzhangx
Copy link
Member Author

/retest

4 similar comments
@andyzhangx
Copy link
Member Author

/retest

@andyzhangx
Copy link
Member Author

/retest

@andyzhangx
Copy link
Member Author

/retest

@andyzhangx
Copy link
Member Author

/retest

@liggitt
Copy link

liggitt commented Dec 6, 2024

  • golang 1.23.1 building with godebug winreadlinkvolume=1 keeps the original behavior

Do you mean original behavior of go 1.22? If so, I'm super confused, as that is the opposite of the go documentation and what I see in the Go source where winreadlinkvolume is used 😕

chore: remove godebug winreadlinkvolume=0
@andyzhangx andyzhangx merged commit 4a823a4 into kubernetes-sigs:master Dec 7, 2024
22 of 23 checks passed
@andyzhangx
Copy link
Member Author

/cherrypick release-1.31

@andyzhangx
Copy link
Member Author

/cherrypick release-1.30

@andyzhangx
Copy link
Member Author

/cherrypick release-1.29

@k8s-infra-cherrypick-robot

@andyzhangx: new pull request created: #2700

In response to this:

/cherrypick release-1.31

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@k8s-infra-cherrypick-robot

@andyzhangx: new pull request created: #2701

In response to this:

/cherrypick release-1.30

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@k8s-infra-cherrypick-robot

@andyzhangx: new pull request created: #2702

In response to this:

/cherrypick release-1.29

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/bug Categorizes issue or PR as related to a bug. 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.

4 participants