jira增加字段选项出错

需求:

在CustomField内建立一个新的Option。


错误信息:

com.atlassian.jira.exception.DataAccessException: org.ofbiz.core.entity.GenericEntityException: while inserting: [GenericEntity:CustomFieldOption][id,12137]

错误分析:

此错误是由于创建此选项时,系统自动分配的id已经给其他的选项占用,为什么会被占用?

是由于上次cmdb内的大批CustomFieldOption 通过外部程序同步到jira上,此操作不会更新SEQUENCE_VALUE_ITEM表内CustomFieldOption的SEQ_ID值,只有在jira系统内建立才会更新。

而在jira系统上去创建一个CustomFieldOption时系统默认会从SEQ_ID值12220里面去分配一个,比如12137,因为被使用所以会报上面错误。

下面语句为如何查询CustomFieldOption的SEQ_ID值和CustomFieldOption表内所有使用的ID

mysql> select * from SEQUENCE_VALUE_ITEM where SEQ_NAME like ‘%CustomFiel%‘;
+-------------------+--------+
| SEQ_NAME | SEQ_ID |
+-------------------+--------+
| CustomField | 12330 |
| CustomFieldOption | 12220 |
| CustomFieldValue | 548797 |
+-------------------+--------+
3 rows in set (0.00 sec)

select* from CustomFieldOption ;

| 12311 | 12038 | 12239 | 12202 | 0 | 内存25G,磁盘100G | NULL | N |
| 12312 | 12038 | 12239 | 12202 | 1 | 内存30G,磁盘100G | NULL | N |
| 12313 | 12038 | 12239 | 12202 | 2 | 内存45G,磁盘100G | NULL | N |
| 12314 | 12038 | 12239 | 12202 | 3 | 内存15G,磁盘100G | NULL | N |
| 12315 | 12038 | 12239 | 12202 | 4 | 内存12G,磁盘100G | NULL | N |
| 12316 | 12038 | 12239 | 12202 | 5 | 内存6G,磁盘100G | NULL | N |
| 12317 | 12038 | 12239 | 12202 | 6 | 内存9G,磁盘100G | NULL | N |
| 12318 | 12038 | 12239 | 12202 | 7 | 内存20G,磁盘100G | NULL | N |
| 12319 | 12038 | 12239 | NULL | 0 | supor_idc | NULL | Y |
| 12320 | 12143 | 12343 | NULL | 0 | OpsService_运维基础服务 | NULL | N

解决方法:

方法一、手动把SEQUENCE_VALUE_ITEM表内CustomFieldOption的SEQ_ID值改成超过12320,改变后需重启jira才能生效。

方法二、到jira系统内不断新建CustomFieldOption字段以达到CustomFieldOption表内的ID超过12320

考虑到jira重启会造成短暂无法使用,故使用第二种方法,不断新建后达到SEQUENCE_VALUE_ITEM表内CustomFieldOption的SEQ_ID值变成了12420

mysql> select * from SEQUENCE_VALUE_ITEM where SEQ_NAME like ‘%CustomFiel%‘;
+-------------------+--------+
| SEQ_NAME | SEQ_ID |
+-------------------+--------+
| CustomField | 12330 |
| CustomFieldOption | 12420 |
| CustomFieldValue | 548897 |
+-------------------+--------+
3 rows in set (0.00 sec)

时间: 2024-08-01 22:46:08

jira增加字段选项出错的相关文章

SqlServer 禁止架构更改的复制中手动修复使在发布和订阅中分别增加字段同步

由于之前的需要,禁止了复制架构更改,以至在发布中添加一个字段,并不会同步到订阅中,而现在又在订阅中添加了一个同名字段,怎么使这发布和订阅的两个字段建立同步关系呢? 下面就测试更改:此次发布类型为事务复制的可更新订阅,其他类型的发布没有测试. 首先建立事务复制的可更新订阅,建立好之后. 在发布创建一张测试表: CREATE TABLE [dbo].[DemoTab]( [Guid] [uniqueidentifier] NOT NULL, [SID] [varbinary](85) NOT NUL

SQLServer 可更新订阅数据在线架构更改(增加字段)方案

之前一直查找冲突发布和订阅数据不一致的原因,后来发现多少数据库升级引起,因为一直以来都是在发布数据库增加字段,订阅也会自动同步.在此时如果订阅队列有数据,这些数据将丢失.参考上一篇说明:SQLServer 可更新订阅数据冲突的一个原因 .当在发布数据库增加一个字段时,系统同步存储过程和触发器都会重新生成,这会导致仍在队列中的数据无法正常同步.订阅队列中的命令将因"同步"后消失,代理有可能出错,但也会自动回复正常!~ 这周测试了一些方法,最终算是确定一个方案可行的,虽然麻烦和耗时. 首先

SQL语句增加字段、修改字段、修改类型、修改默认值

--一.修改字段默认值 alter table 表名 drop constraint 约束名字 ------说明:删除表的字段的原有约束 alter table 表名 add constraint 约束名字 DEFAULT 默认值 for 字段名称 -------说明:添加一个表的字段的约束并指定默认值 --二.修改字段名: alter table 表名 rename column A to B --三.修改字段类型: alter table 表名 alter column UnitPrice

实战-130W表增加字段耗时

工作需要对130W的表增加字段,因为是操作线上数据库,所以提前在本地调查下耗时. 首先建表: CREATE TABLE `alter_cloumn_test` ( `id` int(11) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 生成13W条数据: 1.生成13W条插入语句脚本:insert_column_sql.sh for ((i=0; i<1300000;i++)) do echo

JIRA的常用选项

常用的一些选项有: 问题类型  Bug 测试过程维护过程发现影响系统运行的缺陷   New Feature 对系统提出的新功能  Task 需要完成的任务  Improvement 对现有系统功能的改进  Requirement Change 需求变更 JIRA系统中用优先级来表示问题的严重级别,有以下几种级别: 优先级 block>critical>major>minor>trivial  block 阻碍程序运行的   critical 紧急的  major 主要的:重要的  

在cxf中使用配置避免增加字段导致客户端必须更新的问题

在cxf中使用配置避免增加字段导致客户端必须更新的问题 http://www.iflym.com/index.php/code/201307310001.html 在cxf中使用配置避免增加字段导致客户端必须更新的问题 2013/07/31 11:00:19 1 Comment Tags: cxf, webservice   Posted :java开发, 开源框架, 编程开发 在使用cxf实现webservice时,经常碰到的问题就是如果在服务端,修改了一个接口的签名实现,如增加一个字段,或者

ORACLE—001:Alter之增加字段,修改字段类型

--积累工作中用到的SQL 1.增加和删除一列 写法: --增加一列      alter table  表名 add  列名 类型;      --删除一列      alter table  表名 drop column 列名 ; 例如: --增加一列      alter table  TB_TEMP add  COL_ID  VARCHAR2(40);      --删除一列      alter table TB_TEMP  drop column COL_ID  ; 2.修改列的类型

oracle删除表字段和oracle表增加字段

这篇文章主要介绍了oracle表增加字段.删除表字段修改表字段的使用方法,大家参考使用吧 添加字段的语法:alter table tablename add (column datatype [default value][null/not null],….); 修改字段的语法:alter table tablename modify (column datatype [default value][null/not null],….); 删除字段的语法:alter table tablenam

sql 创建表、删除表 增加字段 删除字段操作

[转]sql 创建表.删除表 增加字段 删除字段操作 下面是Sql Server 和 Access 操作数据库结构的常用Sql,希望对你有所帮助. 新建表:create table [表名]([自动编号字段] int IDENTITY (1,1) PRIMARY KEY ,[字段1] nVarChar(50) default \'默认值\' null ,[字段2] ntext null ,[字段3] datetime,[字段4] money null ,[字段5] int default 0,[