My favorites | Sign in
Project Home Downloads Wiki Issues Source
New issue   Search
for
  Advanced search   Search tips   Subscriptions
Issue 2523: Exceptions after upgrading to 2.8.1
1 person starred this issue and may be notified of changes. Back to list
Status:  Submitted
Owner:  ----
Closed:  Mar 2014


Sign in to add a comment
 
Reported by duft.mar...@gmail.com, Mar 7, 2014
Affected Version: 2.8.1

What steps will reproduce the problem?
1. Just run it as usual - we use gerrit trigger plugin also to do CI builds. Gerrit trigger plugin is up to date also.

What is the expected output? What do you see instead?
No output in error_log. instead we see all kinds of those, roughly every ~20-30 minutes):

[2014-03-07 09:59:30,154] ERROR com.google.gerrit.sshd.commands.ReviewCommand : internal error while approving 28252,3
com.google.gwtorm.server.OrmException: insert failure on patch_set_approvals
        at com.google.gwtorm.schema.sql.SqlDialect.convertError(SqlDialect.java:152)
        at com.google.gwtorm.schema.sql.DialectH2.convertError(DialectH2.java:45)
        at com.google.gwtorm.jdbc.JdbcAccess.convertError(JdbcAccess.java:448)
        at com.google.gwtorm.jdbc.JdbcAccess.insert(JdbcAccess.java:160)
        at com.google.gerrit.server.change.PostReview.updateLabels(PostReview.java:467)
        at com.google.gerrit.server.change.PostReview.apply(PostReview.java:180)
        at com.google.gerrit.sshd.commands.ReviewCommand.applyReview(ReviewCommand.java:217)
        at com.google.gerrit.sshd.commands.ReviewCommand.approveOne(ReviewCommand.java:276)
        at com.google.gerrit.sshd.commands.ReviewCommand.run(ReviewCommand.java:194)
        at com.google.gerrit.sshd.SshCommand$1.run(SshCommand.java:35)
        at com.google.gerrit.sshd.BaseCommand$TaskThunk.run(BaseCommand.java:442)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
        at java.util.concurrent.FutureTask.run(FutureTask.java:166)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292)
        at com.google.gerrit.server.git.WorkQueue$Task.run(WorkQueue.java:360)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:724)
Caused by: org.h2.jdbc.JdbcBatchUpdateException: Unique index or primary key violation: "PRIMARY_KEY_6AD ON PUBLIC.PATCH_SET_APPROVALS(CHANGE_ID, PATCH_SET_ID, ACCOUNT_ID, CATEGORY_ID) VALUES ( /* key:356720 */ null, null, null, null, 28252, 3, 1000007, 'Verified')"; SQL statement:
INSERT INTO patch_set_approvals(change_open,change_sort_key,granted,value,account_id,category_id,change_id,patch_set_id)VALUES(?,?,?,?,?,?,?,?) [23505-173]
        at org.h2.jdbc.JdbcPreparedStatement.executeBatch(JdbcPreparedStatement.java:1167)
        at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
        at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
        at com.google.gwtorm.schema.sql.SqlDialect.executeBatch(SqlDialect.java:390)
        at com.google.gwtorm.jdbc.JdbcAccess.execute(JdbcAccess.java:438)
        at com.google.gwtorm.jdbc.JdbcAccess.insertAsBatch(JdbcAccess.java:202)
        at com.google.gwtorm.jdbc.JdbcAccess.insert(JdbcAccess.java:155)
        ... 16 more
Caused by: org.h2.jdbc.JdbcSQLException: Unique index or primary key violation: "PRIMARY_KEY_6AD ON PUBLIC.PATCH_SET_APPROVALS(CHANGE_ID, PATCH_SET_ID, ACCOUNT_ID, CATEGORY_ID) VALUES ( /* key:356720 */ null, null, null, null, 28252, 3, 1000007, 'Verified')"; SQL statement:
INSERT INTO patch_set_approvals(change_open,change_sort_key,granted,value,account_id,category_id,change_id,patch_set_id)VALUES(?,?,?,?,?,?,?,?) [23505-173]
        at org.h2.message.DbException.getJdbcSQLException(DbException.java:331)
        at org.h2.message.DbException.get(DbException.java:171)
        at org.h2.message.DbException.get(DbException.java:148)
        at org.h2.index.BaseIndex.getDuplicateKeyException(BaseIndex.java:101)
        at org.h2.index.PageBtree.find(PageBtree.java:121)
        at org.h2.index.PageBtreeLeaf.addRow(PageBtreeLeaf.java:148)
        at org.h2.index.PageBtreeLeaf.addRowTry(PageBtreeLeaf.java:101)
        at org.h2.index.PageBtreeNode.addRowTry(PageBtreeNode.java:201)
        at org.h2.index.PageBtreeNode.addRowTry(PageBtreeNode.java:201)
        at org.h2.index.PageBtreeIndex.addRow(PageBtreeIndex.java:95)
        at org.h2.index.PageBtreeIndex.add(PageBtreeIndex.java:86)
        at org.h2.table.RegularTable.addRow(RegularTable.java:125)
        at org.h2.command.dml.Insert.insertRows(Insert.java:127)
        at org.h2.command.dml.Insert.update(Insert.java:86)
        at org.h2.command.CommandContainer.update(CommandContainer.java:79)
        at org.h2.command.Command.executeUpdate(Command.java:235)
        at org.h2.jdbc.JdbcPreparedStatement.executeUpdateInternal(JdbcPreparedStatement.java:154)
        at org.h2.jdbc.JdbcPreparedStatement.executeBatch(JdbcPreparedStatement.java:1152)
        ... 22 more

Mar 7, 2014
#1 dborowitz@google.com
Should be fixed in 2.8.2 by https://gerrit-review.googlesource.com/54878
Status: Submitted
Mar 10, 2014
#2 duft.mar...@gmail.com
but we don't use rebase if necessary at all... does this matter?
Mar 10, 2014
#3 dborowitz@google.com
You're right, I wasn't paying close enough attention tot he stack trace.  This was fixed in master by https://gerrit-review.googlesource.com/54360 but that should be cherry-picked to stable-2.8.
Sign in to add a comment

Powered by Google Project Hosting