首页 > 代码库 > gerrit 数据库查找change_id

gerrit 数据库查找change_id

##############################################################
remote: Resolving deltas: 100% (2/2)
error: unpack failed: error Missing unknown 613fd2557fba30aff2dbd51c3807cc57561bab08
fatal: Unpack error, check server log
To ssh://newptone@review.ustack.com:29418/neutron.git
 ! [remote rejected] HEAD -> refs/publish/datong (n/a (unpacker error))
error: failed to push some refs to ssh://newptone@review.ustack.com:29418/neutron.git‘
#####################################################################

出现类似到错误是因为删除原先的旧有代码,而gerrit上相关的代码旧提交未处理导致到。存在数据库中的neutron.git库patch_set找不到对应的object。

解决方法:登录到gerrit server 进入数据库我这边用到是H2数据库
java -jar bin/gerrit.war gsql
\d
select * from PATCH_SETS ;
查找到613fd2557fba30aff2dbd51c3807cc57561bab08对应到ID

 CREATED_ON              | DRAFT | REVISION                                 | UPLOADER_ACCOUNT_ID | CHANGE_ID | PATCH_SET_ID
 ------------------------+-------+------------------------------------------+---------------------+-----------+-------------
 2015-01-04 15:57:08.423 | N     | 613fd2557fba30aff2dbd51c3807cc57561bab08 | 1000002             | 1         | 1

然后update changes set open=‘N‘,status=‘A‘ where change_id=1;
status=A (Abandon)
回网页看提交已经没有了


gerrit 数据库查找change_id