I'm about to do the final 2.5 release, but it feels bad to me that push via
HTTP is broken. I agree that it's probably to late to do a big analysis and
bug-fixing, but I would like to propose another solution. Commit
c545c0901241314190cac02a24aa95f831dd0572 [1] which seems to have
broken push over HTTP seems to be relevant for Shawn only. Reverting
this commit fixes the problem. Since Shawn is anyway not running 2.5
but master, I think it should be ok to revert this commit in stable-2.5 [2], but
keeping it in master. Until 2.6 we have then enough time to come up with a
fix in master. What do you think?
[1]
https://gerrit-review.googlesource.com/37061[2]
https://gerrit-review.googlesource.com/39090
For the record, here is the stacktrace:
[2012-10-31 13:56:21,457] ERROR com.google.gerrit.server.git.ReceiveCommits : Can't insert changes for myProject
com.google.gwtorm.server.OrmException: Error updating database
at com.google.gerrit.server.git.ReceiveCommits$1.apply(ReceiveCommits.java:226)
at com.google.gerrit.server.git.ReceiveCommits$1.apply(ReceiveCommits.java:220)
at com.google.common.util.concurrent.Futures$MappingCheckedFuture.mapException(Futures.java:1215)
at com.google.common.util.concurrent.AbstractCheckedFuture.checkedGet(AbstractCheckedFuture.java:85)
at com.google.gerrit.server.git.ReceiveCommits.insertChangesAndPatchSets(ReceiveCommits.java:675)
at com.google.gerrit.server.git.ReceiveCommits.processCommands(ReceiveCommits.java:521)
at com.google.gerrit.server.git.AsyncReceiveCommits$Worker.run(AsyncReceiveCommits.java:90)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at com.google.gerrit.server.util.RequestScopePropagator$5.call(RequestScopePropagator.java:196)
at com.google.gerrit.server.util.RequestScopePropagator$4.call(RequestScopePropagator.java:174)
at com.google.inject.servlet.ServletScopes$3.call(ServletScopes.java:194)
at com.google.gerrit.server.util.RequestScopePropagator$1.call(RequestScopePropagator.java:81)
at com.google.gerrit.server.util.RequestScopePropagator$2.run(RequestScopePropagator.java:113)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
at com.google.gerrit.server.git.WorkQueue$Task.run(WorkQueue.java:337)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Cannot continue request in the same thread as a HTTP request!
at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
at java.util.concurrent.FutureTask.get(Unknown Source)
at com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:63)
at com.google.common.util.concurrent.AbstractCheckedFuture.checkedGet(AbstractCheckedFuture.java:78)
... 18 more
Caused by: java.lang.IllegalStateException: Cannot continue request in the same thread as a HTTP request!
at com.google.inject.internal.util.$Preconditions.checkState(Preconditions.java:142)
at com.google.inject.servlet.ServletScopes$3.call(ServletScopes.java:187)
at com.google.gerrit.server.util.RequestScopePropagator$1.call(RequestScopePropagator.java:81)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:253)
at com.google.common.util.concurrent.AbstractListeningExecutorService.submit(AbstractListeningExecutorService.java:56)
at com.google.gerrit.server.git.ReceiveCommits$CreateRequest.insertChange(ReceiveCommits.java:1291)
at com.google.gerrit.server.git.ReceiveCommits.insertChangesAndPatchSets(ReceiveCommits.java:671)
... 17 more