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

Invalid symmetric difference expression #4890

Closed
2 of 7 tasks
SpudDogg opened this issue Nov 22, 2017 · 16 comments
Closed
2 of 7 tasks

Invalid symmetric difference expression #4890

SpudDogg opened this issue Nov 22, 2017 · 16 comments
Labels
💊 bug Something isn't working status: needs feedback Tell me more about it

Comments

@SpudDogg
Copy link

  • Gogs version (or commit ref): 0.11.33.1119
  • Git version: 2.1.4
  • Operating system: Debian
  • Database (use [x]):
    • PostgreSQL
    • MySQL
    • MSSQL
    • SQLite
  • Can you reproduce the bug at https://try.gogs.io:
    • Yes (provide example URL)
    • No
    • Not relevant
  • Log gist (usually found in log/gogs.log):
fatal: Invalid symmetric difference expression dd76f78ac9dbd547e0145fa906d4aae6d1f03b18...741e4b90e6a0f216aee057fbeb7fb9ba11390c00

Description

After updating to the latest version, pull requests can no longer be merged in. The web interface gives a 500 and this error:

"An error has occurred : exit status 128 - fatal: Invalid symmetric difference expression dd76f78ac9dbd547e0145fa906d4aae6d1f03b18...741e4b90e6a0f216aee057fbeb7fb9ba11390c00"

From the command line, a manual git diff shows the same:

# git diff dd76f78ac9dbd547e0145fa906d4aae6d1f03b18...741e4b90e6a0f216aee057fbeb7fb9ba11390c00
fatal: Invalid symmetric difference expression dd76f78ac9dbd547e0145fa906d4aae6d1f03b18...741e4b90e6a0f216aee057fbeb7fb9ba11390c00
@unknwon unknwon added the 💊 bug Something isn't working label Nov 22, 2017
@unknwon
Copy link
Member

unknwon commented Nov 22, 2017

Hi, in which way you merge? "Create a merge commit" or "Rebase before merging"?

@unknwon unknwon added the status: needs feedback Tell me more about it label Nov 22, 2017
@ah-edg
Copy link

ah-edg commented Nov 22, 2017

copying my comment from #4883:

We also have a problem on pull requests with the new release.
Also on 0.11.33, but with gogs in a custom docker container based on debian jessie.
The data is stored in MySQL.

Gogs showed an 500-error on pull request merges in multiple repositories - but not from one repo to itself.
A rollback to 0.11.29 helped.

Maybe relevant: on the merge site, only the first radio button was shown. I understand it should look like this:
new merge GUI

Logs:

2017/11/21 21:24:48 [ERROR] [...g/context/context.go:171 ServerError()] Repo.GitRepo.CommitsCountBetween: exit status 128 - fatal: Invalid symme
tric difference expression 709f3ff102dd3945e8e7bb80b1d31e3f31dfdbb4...68af527862a00b0e08324a5700889cf9877fba27
2017/11/21 21:24:48 [TRACE] Template: status/500

@ah-edg
Copy link

ah-edg commented Nov 22, 2017

"Create a merge commit", the other radio button was not shown

@unknwon
Copy link
Member

unknwon commented Nov 22, 2017

@ah-edg you don't see another radio button because you didn't allow in the repository setting, that's not part of this problem..

@ah-edg
Copy link

ah-edg commented Nov 22, 2017

Oh, ok - I didn't see it has to be explicitly activated, sorry.
Still the merge commit.

@unknwon
Copy link
Member

unknwon commented Nov 22, 2017

@ah-edg I don't have enough info, can you tell me if the pull request is merged successfully or remain unmerged?

@ah-edg
Copy link

ah-edg commented Nov 22, 2017

We're back in the old version and I cannot easily roll forward, so from memory:

It was not merged. Pulling or fetching it produced the old version, looking at the PR in the web gui led to 500.

@ah-edg
Copy link

ah-edg commented Nov 22, 2017

but it was confirmed as sucessfully merged.

@unknwon
Copy link
Member

unknwon commented Nov 22, 2017

@ah-edg are you pull request between two repositories?

@unknwon
Copy link
Member

unknwon commented Nov 22, 2017

Yes, I reproduced!

@unknwon
Copy link
Member

unknwon commented Nov 22, 2017

OK it is a regression, fix has been pushed to master.

Just a note:

For PRs between different repositories, the changes were NOT pushed to base repository, also, changes were NOT lost, your data is safe! Those changes just merged to the base branch of original repository (fork repository).

For example, if a PR is between user1/branch1 and user2/branch2, the changes were made to user2/branch1.

Since this problem is critical, I'll made a quick release today.

@unknwon unknwon added this to the 0.12 milestone Nov 22, 2017
@unknwon
Copy link
Member

unknwon commented Nov 22, 2017

Thanks for the feedback, should be fixed now :D

New release is building...

@unknwon unknwon closed this as completed Nov 22, 2017
@athoik
Copy link
Contributor

athoik commented Nov 23, 2017

Thank you @unknwon! I was about to create a ticket for that issue, but the great community of gogs already did!

Well done!

@KevinJue
Copy link

@unknwon
It seem we reproduce the problem.
using "Rebase before merging" the pull request look like correctly done in interface but any modification is done on Branch.
The PR is closed and the modification are not apply.

I try to watch log, but nothing strange appear in gogs.log, serv.log ...

any idea ?

@unknwon
Copy link
Member

unknwon commented Mar 20, 2018

@KevinJue I don't think the issue you encounter relates to the OP. I remember there is an issue already reported this issue, that rebase succeed but no commits merged to base branch.

@KevinJue
Copy link

@unknwon
I search a little bit more an issue that can match with the problem and it seem to be #5051.
Sorry for disturbing this one

@unknwon unknwon removed this from the 0.13 milestone Nov 26, 2019
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 22, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
💊 bug Something isn't working status: needs feedback Tell me more about it
Projects
None yet
Development

No branches or pull requests

5 participants