My favorites | Sign in
Project Home Downloads Wiki Issues Source
New issue   Search
for
  Advanced search   Search tips   Subscriptions
Issue 192: Crash when trying to submit a patch set that depends on an abandoned patch set
  Back to list
Status:  Released
Owner:  code-rev...@gtempaccount.com
Closed:  Oct 2012


Sign in to add a comment
 
Reported by code-rev...@gtempaccount.com, Sep 24, 2009
Reported by Cedric Beust <cbeust@google.com> on Tue May 26 11:37:45 PDT 2009
Source: JIRA GERRIT-192

java.lang.NullPointerException
	at org.spearce.jgit.revwalk.RevWalk.markStart(RevWalk.java:237)
	at com.google.gerrit.git.MergeOp.markCleanMerges(MergeOp.java:427)
	at com.google.gerrit.git.MergeOp.mergeImpl(MergeOp.java:154)
	at com.google.gerrit.git.MergeOp.merge(MergeOp.java:130)
	at com.google.gerrit.git.MergeQueue.mergeImpl(MergeQueue.java:112)
	at com.google.gerrit.git.MergeQueue.access$1(MergeQueue.java:110)
	at com.google.gerrit.git.MergeQueue$1.run(MergeQueue.java:96)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access
$301(ScheduledThreadPoolExecutor.java:98)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run
(ScheduledThreadPoolExecutor.java:207)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask
(ThreadPoolExecutor.java:885)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:
907)
	at java.lang.Thread.run(Thread.java:619)
Sep 24, 2009
#1 code-rev...@gtempaccount.com
Comment by Shawn Pearce <sop@google.com> on Tue May 26 11:41:20 PDT 2009

This happens because the destination branch doesn't exist yet, and the submit
queue wound up empty because the one change being submitted depends upon a
commit whose change has been abandoned.  When we are done, mergeTip is still
null, because the branch doesn't exist (so mergeTip was initialized to null)
and nothing was submitted to it, as we had a missing dependency.

The markCleanMerges method needs to handle this case of mergeTip == null, and
just punt out, as there's nothing merged.
Sep 24, 2009
#2 code-rev...@gtempaccount.com
Comment by Shawn Pearce <sop@google.com> on Wed May 27 12:10:06 PDT 2009

Fixed by https://review.source.android.com/10072
Sep 24, 2009
#3 code-rev...@gtempaccount.com
Update by Shawn Pearce <sop@google.com> on Wed May 27 12:10:06 PDT 2009

Fixed in version 2.0.13.
Status: Fixed
Sep 25, 2009
#4 code-rev...@gtempaccount.com
(No comment was entered for this change.)
Labels: FixedIn-2.0.13
Oct 25, 2012
#5 sop@google.com
(No comment was entered for this change.)
Status: Released
Sign in to add a comment

Powered by Google Project Hosting