Issue 2282: gerrit server 'remote reject'
Status:  New
Owner: ----
Reported by saly...@google.com, Nov 26, 2013
************************************************************
***** NOTE: THIS BUG TRACKER IS FOR GERRIT CODE REVIEW *****
***** DO NOT SUBMIT BUGS FOR CHROME, ANDROID, INTERNAL *****
***** ISSUES WITH YOUR COMPANY'S GERRIT SETUP, ETC.    *****
***** THOSE ISSUE BELONG IN DIFFERENT ISSUE TRACKERS!  *****
************************************************************

Affected Version: 1.8b3

What steps will reproduce the problem?
1. git log on personal branch system/core, rebased:

commit 63694565d17690365ac0b0cd9e8131fbcb4c6328
Author: Mark Salyzyn <salyzyn@google.com>
Date:   Fri Nov 22 12:39:43 2013 -0800

    liblog: Add liblog test suite
    
    Change-Id: Ia6d6821e8546e0eccacab812d39d529ea0372c6a

commit 76a494521d5a1fd026e870d31c98162b68f1ef9d
Author: Mark Salyzyn <salyzyn@google.com>
Date:   Fri Nov 22 10:55:48 2013 -0800

    logcat: Incorporate liblog reading API
    
    Change-Id: I1e1a55d13ac55350e8d54bfe92b392de07f26a5d

commit 7305af1e2bfe56fbf9f503fd0891028b3c25e8d6
Author: Mark Salyzyn <salyzyn@google.com>
Date:   Fri Nov 22 10:53:34 2013 -0800

    debuggerd: Incorporate liblog reading API
    
    Change-Id: Ic26e9dba3b45c827d122b03e34cc4a5bd48f7deb

commit e23db74fc10ae30e3a5268b13ab6a9241a804fcb
Author: Mark Salyzyn <salyzyn@google.com>
Date:   Fri Nov 22 10:52:58 2013 -0800

    adb: Incorporate liblog reading API
    
    Change-Id: Idfd17afaa06bfb597bff63e160882a2a21fe0725

commit d153288cfe8212950a92571301b0d923d3faa86a
Author: Mark Salyzyn <salyzyn@google.com>
Date:   Fri Nov 22 10:50:27 2013 -0800

    liblog: Interface to support abstracting log read
    
    Change-Id: Iedc55c1316029b4bb72f51cc656b53b0e3f90aee

commit 0c0c707192e090e00e1470e7cce7b661d665f587
Author: Mark Salyzyn <salyzyn@google.com>
Date:   Fri Nov 22 07:54:30 2013 -0800

    liblog: whitespace fixes
    
    - change cutils to liblog directory path
    - change tabs to spaces
        
    Change-Id: I7d9db1e2b817ba0ec9a224340c5c7535a2387fd5

commit bac4752dae1e4c87a0656603eb4e95d31bb0e663
Author: Mark Salyzyn <salyzyn@google.com>
Date:   Fri Nov 22 07:47:35 2013 -0800

    libsysutils: Get rid of acceptable warnings
    
    - UNUSED argument warnings
    - Remove LOG_NDEBUG define
    
    Change-Id: I48b0942adfdb7a46a7693e580bc6ed5a685b0d5b

commit 79b90711ff4fb9128df4546e943294f684de9622
Author: Mark Salyzyn <salyzyn@google.com>
Date:   Fri Nov 22 07:38:46 2013 -0800

    libcutils: bug str_parms.c::str_parms_get_float().
    
    str_parms_get_float did not return the output into
    *val. Only output if returning with no error. Audit
    shows no internal users of this library function
    
    Change-Id: I14a3f08a098072a159dd93f85ead36b3f445816f

commit 089a6eb1e3974ca2adf7f93091e716ab425262a3
Author: Mark Salyzyn <salyzyn@google.com>
Date:   Fri Nov 22 07:36:45 2013 -0800

    libcutils: acceptable UNUSED argument warnings
    
    Change-Id: Ie427d481298af8d911bb2b157ebba30954335354

commit 7d2db03ef7eb12fdf33562c37d47f803b32c12f1

2.
repo upload .
3.
Fails with remote rejected, not enough explanation.

What is the expected output? (no upload failure)

What do you see instead?
salyzyn@virago:/ssd/liblog-test/system/core$ repo upload .
Upload project system/core/ to remote branch master:
  branch liblog-test ( 9 commits, Tue Nov 26 17:14:09 2013 -0800):
         089a6eb1 libcutils: acceptable UNUSED argument warnings
         79b90711 libcutils: bug str_parms.c::str_parms_get_float().
         bac4752d libsysutils: Get rid of acceptable warnings
         0c0c7071 liblog: whitespace fixes
         d153288c liblog: Interface to support abstracting log read
         e23db74f adb: Incorporate liblog reading API
         7305af1e debuggerd: Incorporate liblog reading API
         76a49452 logcat: Incorporate liblog reading API
         63694565 liblog: Add liblog test suite
to https://googleplex-android-review.googlesource.com/ (y/N)? y
ATTENTION: You are uploading an unusually high number of commits.
YOU PROBABLY DO NOT MEAN TO DO THIS. (Did you rebase across branches?)
If you are sure you intend to do this, type 'yes': yes
Counting objects: 81, done.
Delta compression using up to 32 threads.
Compressing objects: 100% (57/57), done.
Writing objects: 100% (57/57), 19.45 KiB | 0 bytes/s, done.
Total 57 (delta 39), reused 0 (delta 0)
remote: Resolving deltas: 100% (39/39)
remote: Processing changes: refs: 1, done    
remote: (W) 0c0c707: no files changed, was rebased
remote: (W) No changes between prior commit f7f36a4 and new commit 089a6eb
remote: 
remote: Updated Changes:
remote:   https://googleplex-android-review.git.corp.google.com/391999
remote:   https://googleplex-android-review.git.corp.google.com/391998
remote:   https://googleplex-android-review.git.corp.google.com/392010
remote:   https://googleplex-android-review.git.corp.google.com/391997
remote:   https://googleplex-android-review.git.corp.google.com/392011
remote:   https://googleplex-android-review.git.corp.google.com/392012
remote:   https://googleplex-android-review.git.corp.google.com/391995
remote:   https://googleplex-android-review.git.corp.google.com/392013
remote:   https://googleplex-android-review.git.corp.google.com/393047
remote: 
To persistent-https://googleplex-android-review.git.corp.google.com/p/platform/system/core
 ! [remote rejected] liblog-test -> refs/for/master (no changes made)
error: failed to push some refs to 'persistent-https://googleplex-android-review.git.corp.google.com/p/platform/system/core'

----------------------------------------------------------------------
[FAILED] system/core/    liblog-test     (Upload failed)

salyzyn@virago:/ssd/liblog-test/system/core$ 


Please provide any additional information below.

Believe I14a3f08a098072a159dd93f85ead36b3f445816f is the cause because problems started with that one after a rebase and reported the first upload error. In an effort to bypass I abandoned the 'old one' and made a new one with (this) new Change-Id.
Nov 27, 2013
Project Member #1 david.pu...@sonymobile.com
If only the commit time of 089a6eb1 is changed, i.e. it has the same parent(s) and same author, Gerrit will not accept it as a new patch set.  This is the expected behaviour as described in the documentation [1].

[1] https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/error-no-changes-made.html

Nov 27, 2013
#2 saly...@google.com
Thanks, that clears it up. Dropped a ':' to change the comment and voila!

If this is an enforced policy, then ignore the following comment. If the code is changed (rebase to incorporate an adjustment as a result of a review comment) one would expect Gerrit to detect this and either interactively request the user to be sure, or to take the content.
Nov 27, 2013
#3 saly...@google.com
I managed to recollect better the procedure to reproduce this:

1) upload content
2) rebase with new comment and new changeid (I believe I deleted the change id portion of the comment)
3) upload content
4) rebase with no comment change, but code fix, again with new changeid (oops again)
5) upload content
6) rebase with no comment change, but alter the changeid to the correct value (I am getting smarter every day :-) )
7) make changes elsewhere in other patches, rebase.
8) upload content, upload failed.

From this I can intuit that the comment change has the changeid stripped before making the comparison. The change request to Gerrit would be that it should also add the changeid into the list of adjustments it accepts; or is *this* a matter of policy?
Dec 9, 2015
#4 ghkdtkd...@gmail.com
In case the change is not chained such that there is no child commit, then this behaviour is impeccable. However, when the impacted change has a child or more, then it becomes problematic because the chained children commits are all blocked by this behaviour.
Dec 10, 2015
#5 oswald.b...@gmx.de
this is a duplicate of  Issue 1867  (and 1920, and 2008, and ...), no? i didn't read the all very closely.