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

v2.13.3 reports OutOfSync object with empty diff #21434

Open
sherif-fanous opened this issue Jan 9, 2025 · 8 comments
Open

v2.13.3 reports OutOfSync object with empty diff #21434

sherif-fanous opened this issue Jan 9, 2025 · 8 comments
Labels
bug Something isn't working component:core Syncing, diffing, cluster state cache version:2.13 Latest confirmed affected version is 2.13

Comments

@sherif-fanous
Copy link

Describe the bug

Upgrading the Argo CD Helm chart from v7.7.12 to v7.7.13 upgrades Argo CD from v2.13.2 to v2.13.3. Following this upgrade a single object is constantly reported as OutOfSync however when inspecting the object the diff reported by Argo CD is empty.

Reverting back to Helm chart v7.7.12 and Argo CD v.2.13.2 the object is then back to being Synced

To Reproduce

The only object this is happening with is the kubernetes-dashboard-csrf Secret from the Kubernetes Dashboard application.

Expected behavior

An object with an empty diff should not be OutOfSync

Screenshots

image

Version

{
    "Version": "v2.13.3+a25c8a0",
    "BuildDate": "2025-01-03T18:44:26Z",
    "GitCommit": "a25c8a0eef7830be0c2c9074c92dbea8ff23a962",
    "GitTreeState": "clean",
    "GoVersion": "go1.23.1",
    "Compiler": "gc",
    "Platform": "linux/amd64",
    "KustomizeVersion": "v5.4.3 2024-07-19T16:40:33Z",
    "HelmVersion": "v3.15.4+gfa9efb0",
    "KubectlVersion": "v0.31.0",
    "JsonnetVersion": "v0.20.0"
}
@sherif-fanous sherif-fanous added the bug Something isn't working label Jan 9, 2025
@rumstead rumstead added the version:2.13 Latest confirmed affected version is 2.13 label Jan 9, 2025
@agaudreault agaudreault added the component:core Syncing, diffing, cluster state cache label Jan 15, 2025
@agaudreault
Copy link
Member

@sherif-fanous do you have Server-side diff enabled? If so, do you have the same issue when disabling it?

@sherif-fanous
Copy link
Author

@sherif-fanous do you have Server-side diff enabled? If so, do you have the same issue when disabling it?

Yes, I'm using server-side diff. I'll try to find an env where I can disable it.

@crenshaw-dev
Copy link
Member

@sherif-fanous you can disable it for a single application: https://argo-cd.readthedocs.io/en/stable/user-guide/diff-strategies/#enabling-it

@sherif-fanous
Copy link
Author

@agaudreault Upgraded back to v2.13.3 and disabled server side diff for the application and it is no longer out of sync.

@crenshaw-dev
Copy link
Member

Strangely, none of the changes in 2.13.3 looks remotely relevant: v2.13.2...v2.13.3

@sherif-fanous
Copy link
Author

At the risk of looking like a fool since I know nothing about the codebase but there is a change in server/application/application.go introduced by 030a7be#diff-18d6bf6e8588f888e23c671094d44b6bba958c624dccb0f734f40cfe91b2f1f0R372 that seems to be making a change to how specs are determined to be equal.

Image

@crenshaw-dev
Copy link
Member

I'd be very surprised if that were it, but I don't have a better theory. Do you have time to revert that commit on v2.13.3 and run a custom image?

@sherif-fanous
Copy link
Author

I'd be very surprised if that were it, but I don't have a better theory. Do you have time to revert that commit on v2.13.3 and run a custom image?

Sure. I have an env I can run this on

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working component:core Syncing, diffing, cluster state cache version:2.13 Latest confirmed affected version is 2.13
Projects
None yet
Development

No branches or pull requests

4 participants