转载:https://code.google.com/p/gerrit/issues/detail?id=3157

1. Migrated from 2.8.6.1 to 2.10
2. In UI go to settings >> preferences
3. change something and click "Save changes" 然后,页面报错,500 internal server error 后台日志error_log报错:
[-- ::,] ERROR com.google.gerrit.httpd.restapi.RestApiServlet : Error in POST /accounts/self/preferences
java.io.IOException: Keine Berechtigung
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:)
at java.io.File.createTempFile(File.java:)
at org.eclipse.jgit.internal.storage.file.ObjectDirectoryInserter.newTempFile(ObjectDirectoryInserter.java:)
at org.eclipse.jgit.internal.storage.file.ObjectDirectoryInserter.toTemp(ObjectDirectoryInserter.java:)
at org.eclipse.jgit.internal.storage.file.ObjectDirectoryInserter.insert(ObjectDirectoryInserter.java:)
at org.eclipse.jgit.lib.ObjectInserter.insert(ObjectInserter.java:)
at com.google.gerrit.server.git.VersionedMetaData.saveFile(VersionedMetaData.java:)
at com.google.gerrit.server.git.VersionedMetaData.saveUTF8(VersionedMetaData.java:)
at com.google.gerrit.server.git.VersionedMetaData.saveConfig(VersionedMetaData.java:)
at com.google.gerrit.server.account.VersionedAccountPreferences.onSave(VersionedAccountPreferences.java:)
at com.google.gerrit.server.git.VersionedMetaData$.doSave(VersionedMetaData.java:)
at com.google.gerrit.server.git.VersionedMetaData$.write(VersionedMetaData.java:)
at com.google.gerrit.server.git.VersionedMetaData$.write(VersionedMetaData.java:)
at com.google.gerrit.server.git.VersionedMetaData.commit(VersionedMetaData.java:)
at com.google.gerrit.server.account.SetPreferences.apply(SetPreferences.java:)
at com.google.gerrit.server.account.SetPreferences.apply(SetPreferences.java:)
at com.google.gerrit.httpd.restapi.RestApiServlet.service(RestApiServlet.java:)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:)
at com.google.inject.servlet.ServletDefinition.doServiceImpl(ServletDefinition.java:)
at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:)
at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:)
at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:)
at com.google.gerrit.pgm.http.jetty.GetUserFilter.doFilter(GetUserFilter.java:)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:)
at com.google.gwtexpui.server.CacheControlFilter.doFilter(CacheControlFilter.java:)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:)
at com.google.gerrit.httpd.RunAsFilter.doFilter(RunAsFilter.java:)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:)
at com.google.gerrit.httpd.AllRequestFilter$FilterProxy$.doFilter(AllRequestFilter.java:)
at com.google.gerrit.httpd.AllRequestFilter$FilterProxy.doFilter(AllRequestFilter.java:)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:)
at com.google.gerrit.httpd.RequestContextFilter.doFilter(RequestContextFilter.java:)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:)
at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:)
at com.google.inject.servlet.GuiceFilter$.call(GuiceFilter.java:)

根据博文的内容,出错原因主要是迁移后,git版本库存放目录下的All-Users.git目录的权限问题。

安装2.8.1时,使用的是root账户安装的;

安装2.10使用的gerrit账户安装的;

因此修改All-Users.git目录的权限,改为gerrit:gerrit,问题解决。

 

gerrit: Error in POST /accounts/self/preferences的更多相关文章

  1. gerrit error: unpack failed: error Permission denied

    gerrit服务器迁移后,clone和pull代码到本地,都没问题. 但是,push时,报错: 查看了下git版本库存储目录,发现git下版本库镜像文件owner都是root.因为之前安装的gerri ...

  2. gerrit 部署手册

    概述 gerrit是谷歌开发用于安卓系统的代码审查的系统,目前已经开源.gerrti使用简单并友好.这里记录了gerrti的部署方法以及其中可能存在的陷阱和问题. 创建专属系统用户 Gerrit co ...

  3. 【Gerrit】Gerrit与Jenkins/Hudson CI服务器搭建

    配置Git 很多系统(例如Linux)已经默认提供了Git,在Git主页也可以找到安装程序.对于Windows用户,最好的选择是MsysGit.请注意,如果你安装了Apple Developer To ...

  4. gerrit 调试smtp email

  5. 安卓编译 translate error Lint: How to ignore “<key> is not translated in <language>” errors?

    Add following at the header of your strings.xml file <resources xmlns:tools="http://schemas. ...

  6. ubuntu搭建Gerrit代码审核服务器

    谷歌的 Android 开源项目在 Git 的使用上有两个重要的创新,一个是为多版本库协同而引入的 repo,另外一个重要的创新就是 Gerrit —— 代码审核服务器.Gerrit 为 git 引入 ...

  7. metamask源码学习-metamask-controller.js

    The MetaMask Controller——The central metamask controller. Aggregates other controllers and exports a ...

  8. 解决 com.sun.*包导入错误

    解决 com.sun.*包导入错误 com.sun.image.codec.jpeg.*导入错误如何解决: com.sun.*是受限制访问的API,Eclipse 默认把受访问限制的API设成了ERR ...

  9. git push提示或错误

    当 git 和 gerrit 一起使用的时候,你创建了一个 tag,现在需要 push 到远程仓库,当你没有权限的时候,会出现如下提示: $ git push origin v20150203 Tot ...

随机推荐

  1. MYSQL 基于GTID的复制

    1.概述 从MYSQL5.6 开始,mysql开始支持GTID复制. 基于日志点复制的缺点: 从那个二进制日志的偏移量进行增量同步,如果指定错误会造成遗漏或者重复,导致数据不一致. 基于GTID复制: ...

  2. SQL SERVER CURSOR游标的使用(转载)

    一:认识游标 游标(Cursor)它使用户可逐行访问由SQL Server返回的结果集. 使用游标(cursor)的一个主要的原因就是把集合操作转换成单个记录处理方式. 用SQL语言从数据库中检索数据 ...

  3. imx6q uboot启动流程牛人的图片(转)

  4. Qt之WebKit学习之绘图

    void Serial::on_pushButton_clicked() { //scroll(4,0); flag_btn = true; // this->update(); //绘图绘在窗 ...

  5. The data is said to include information from networks

    The data is said to include information from networks as well as from individual computers and smart ...

  6. tomcat简单文服

    1.修改tomcat配置文件 web.xml 将listings的value值改为true. DefaultServlet在Tomcat中主要是做目录列表(Directory Listing)用. 2 ...

  7. QUICK START GUIDE

    QUICK START GUIDE This page is a guide aimed at helping anyone set up a cheap radio scanner based on ...

  8. php大力力 [040节] 买了一天域名,整了一天后台,新网后台不懂啊

    php大力力 [040节] 买了一天域名,整了一天后台,新网后台不懂啊]]] 还有万网那些域名要备案,备案,备案中...................wqnmlgb 今天摩托车的前后轮被扎了,tnn ...

  9. React Native使用AsyncStorage本地持久化

    AsyncStorage AsyncStorage是一个简单的,未加密的,异步的,持久化,关键值存储系统,是全局的.类似于iOS中的NSUserDefault. 存值: import { AppReg ...

  10. Activity 属性设置大全

    activity属性设置大全 android:allowTaskReparenting=["true"|"false"] 是否允许activity更换从属的任务 ...