New issue
Advanced search Search tips
Starred by 19 users
Status: Released
Owner: ----
Closed: Aug 2016



Sign in to add a comment
Gerrit reports "no new changes" when changes have been made to any but the bottom CL in a series
Reported by wdg@chromium.org, Apr 15 2013 Back to list
With Gerrit 2.5.1, I noticed that I was unable to upload new changes to a CL, even if I added new files. Further investigation revealed that the reason why this was happening was because one of the CLs on which I depended had no changes. This seems like a bug in Gerrit, since I should be able to upload changes to a CL even if I depend on CLs that have no changes.

This bug only occurs if the first CL in your series is identical to the one in Gerrit, but has a different SHA1 (e.g. due to a different time of commit). If you rebase your CL against the version you had uploaded previously, it works around the problem.

Here is a log of my commands typed into the shell that shows the problem:

$ ssh gerrit.chromium.org -p 29418 gerrit version
gerrit version 2.5.1

$ repo upload . --cbr -d
Upload project src/platform/shill/ to remote branch refs/heads/master:
  branch rebuilt-for-review-2 ( 1 commit, Mon Apr 15 09:24:13 2013 -0700):
         9b486099 shill: Adds capability to supply custom parser for netlink attributes.
to gerrit.chromium.org/gerrit (y/N)? y
Uncommitted changes in chromiumos/platform/shill (did you forget to amend?). Continue uploading? (y/N) y
Counting objects: 9, done.
Delta compression using up to 32 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 1.14 KiB, done.
Total 5 (delta 4), reused 0 (delta 0)
remote: Resolving deltas: 100% (4/4)
remote: Processing changes: refs: 1, done    
To ssh://wdg@gerrit.chromium.org:29418/chromiumos/platform/shill
 ! [remote rejected] rebuilt-for-review-2 -> refs/drafts/master (no changes made)
error: failed to push some refs to 'ssh://wdg@gerrit.chromium.org:29418/chromiumos/platform/shill'

$ repo upload . --cbr -d
Upload project src/platform/shill/ to remote branch refs/heads/master:
  branch rebuilt-for-review-2 ( 1 commit, Mon Apr 15 09:26:24 2013 -0700):
         7b7ca3dc shill: Adds capability to supply custom parser for netlink attributes.
to gerrit.chromium.org/gerrit (y/N)? y
Uncommitted changes in chromiumos/platform/shill (did you forget to amend?). Continue uploading? (y/N) y
Counting objects: 9, done.
Delta compression using up to 32 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 1.14 KiB, done.
Total 5 (delta 4), reused 0 (delta 0)
remote: Resolving deltas: 100% (4/4)
remote: Processing changes: refs: 1, done    
To ssh://wdg@gerrit.chromium.org:29418/chromiumos/platform/shill
 ! [remote rejected] rebuilt-for-review-2 -> refs/drafts/master (no changes made)
error: failed to push some refs to 'ssh://wdg@gerrit.chromium.org:29418/chromiumos/platform/shill'

----------------------------------------------------------------------
[FAILED] src/platform/shill/ rebuilt-for-review-2 (Upload failed)

$ repo upload . --cbr -d
Upload project src/platform/shill/ to remote branch refs/heads/master:
  branch rebuilt-for-review-2 ( 2 commits, Mon Apr 15 09:29:24 2013 -0700):
         7b7ca3dc shill: Adds capability to supply custom parser for netlink attributes.
         00e74a68 shill: Adds BSS nl80211 attribute.
to gerrit.chromium.org/gerrit (y/N)? y
Uncommitted changes in chromiumos/platform/shill (did you forget to amend?). Continue uploading? (y/N) y
Counting objects: 15, done.
Delta compression using up to 32 threads.
Compressing objects: 100% (10/10), done.
Writing objects: 100% (10/10), 3.61 KiB, done.
Total 10 (delta 8), reused 0 (delta 0)
remote: Resolving deltas: 100% (8/8)
remote: Processing changes: refs: 1, done    
To ssh://wdg@gerrit.chromium.org:29418/chromiumos/platform/shill
 ! [remote rejected] rebuilt-for-review-2 -> refs/drafts/master (no changes made)
error: failed to push some refs to 'ssh://wdg@gerrit.chromium.org:29418/chromiumos/platform/shill'

----------------------------------------------------------------------
[FAILED] src/platform/shill/ rebuilt-for-review-2 (Upload failed)


$ touch foo.cc

$ git add foo.cc

$ git commit --amend -a
[rebuilt-for-review-2 0f1d957] shill: Adds BSS nl80211 attribute.
 4 files changed, 169 insertions(+)
 create mode 100644 foo.cc

$ repo upload . --cbr -d
Upload project src/platform/shill/ to remote branch refs/heads/master:
  branch rebuilt-for-review-2 ( 2 commits, Mon Apr 15 09:30:02 2013 -0700):
         7b7ca3dc shill: Adds capability to supply custom parser for netlink attributes.
         0f1d957d shill: Adds BSS nl80211 attribute.
to gerrit.chromium.org/gerrit (y/N)? y
Uncommitted changes in chromiumos/platform/shill (did you forget to amend?). Continue uploading? (y/N) y
Counting objects: 16, done.
Delta compression using up to 32 threads.
Compressing objects: 100% (10/10), done.
Writing objects: 100% (11/11), 3.65 KiB, done.
Total 11 (delta 8), reused 1 (delta 0)
remote: Resolving deltas: 100% (8/8)
remote: Processing changes: refs: 1, done    
To ssh://wdg@gerrit.chromium.org:29418/chromiumos/platform/shill
 ! [remote rejected] rebuilt-for-review-2 -> refs/drafts/master (no changes made)
error: failed to push some refs to 'ssh://wdg@gerrit.chromium.org:29418/chromiumos/platform/shill'

----------------------------------------------------------------------
[FAILED] src/platform/shill/ rebuilt-for-review-2 (Upload failed)


You can see from the log above that changing the second CL in the series does not allow me to upload changes. Note that if I change the first CL in the series, it will then allow me to make changes to the second CL. But I shouldn't have to do that...




 
 Issue 2008  has been merged into this issue.
Comment 2 by rha...@adap.tv, Feb 3 2014
This requires me to Abandon a change, re-create it, and reset all dependencies.
Comment 3 by gusl...@gmail.com, Aug 21 2014
I think this is a differently-described duplicate of Issue 1920
Project Member Comment 4 by nas...@grainawi.org, Aug 22 2015
Status: WontFix
This isn't a bug. If you do something to change the SHA, you've changed the commit. Your second change would be in submittable if only it was allowed to be pushed. If you allow the 1st change to also be updated, you risk many spurious updates when folks accidentally rebase their changes.
Would a better warning or message at least be possible? Suggestion for how
to remedy?
Project Member Comment 6 by dborowitz@google.com, Feb 9 2016
Status: Accepted
Project Member Comment 8 by huga...@gmail.com, Aug 9 2016
Labels: FixedIn-2.13
Status: Submitted
Project Member Comment 9 by huga...@gmail.com, Sep 22 2016
Status: Released
Sign in to add a comment