How to change the customfield ID?

I have two JIRA instances, and I need to make both JIRA have the same CF, screen, workflow and so on so that I can use a tool to make synchronization with them.

But I am facing a big problem.

JIRA's CF ID was generated in a strange way. The next new CF ID may be 10801 or 10900, so I can hardly make them be the same.
Than I tried to modify it by SQL server.

I change the table  [JIRA].[jira_schema].[customfield]'s ID. Them the CF's "Available Context(s)" will be null, then I have to create a new "Configuration Scheme" to make the CF can be seem by everyone.

Then I found some other table was associated with this table. Just like [JIRA].[jira_schema].[fieldconfiguration], JIRA].[jira_schema].[fieldconfigscheme]. If I change the CF ID, I have to change this two tables too. Then I have to modify the [JIRA].[jira_schema].[customfieldoption] to make sure the select list CF have the same option ID.

If I change too much, the JIRA will crash when Indexing. It's really terrible.

Is there a good way to change the customfield ID? Or is there a good way to make both JIRA have the same CF, screen?

Thanks very much!

3 answers

1 accepted

1 vote

It's a lot more complex than what you've found here.  Changing the ID of a custom field in the database is a recipe for a disaster - you have to know exactly where it might be used and check and change all those places.  You've found three, I can rattle off 11 and I know I'm missing some more. 

General advice - if you ever think "I'll change the database" is a solution to an issue you have with JIRA, you are almost certainly wrong.  Don't do it.

Step back from this approach and explain what you mean by "synchronise" and what you are trying to achieve and we can try to guide you through better options than botching ids.

Thanks, I konw it's really not a good way to change the DB directly. Some elements seemed can be changed with no sideeffects, just like the [JIRA].[jira_schema].[customfieldoption], I added some values and it works. The synchronise tools need both JIRA have the same CF ID, CF optiopn ID ([CUSTOMFIELDCONFIG]) , same workflow transiton ID and the same screen ID. If the CF ID is different, the tools can not work (use ID to locate the CF is the right way). Or I have to use the different ID mapping, but this will be more complicated fot the plugin development and hard to use for another JIRA instance. That's the situation I am facing, how can I do that?

You seriously need to stop trying to synchronise the ids. Even your comment "changed with no side effects" is probably wrong - I can think of two things that could break spectacularly as a result of that change unless you've also made matching changes in other places. Using the ID to match options is absolutely the wrong way to attempt this. Please, stop now before you destroy your JIRA.

I agree with the comments above.  For our similar situation we have used is to use a plugin as a solution called Configuration Manager, since it is essential to keep the Field ID's the same across the instances.  We snapshot the one instance (or projects) from our "DEV" or test environment, then move the changes to our second and third instances.  Once we have a "final" project we can "refresh" it back to the "DEV" environment for testing, further development and still maintain consistency.  Each environment is reindexed as needed. This may help you as a possible alternative as you research a solution.

Wow it's a good plugin which can keep the CF ID's the same. But it is not a cheap plugin. Did you know other plugin or some other way can keep the ID the same? Thanks for answering!

Hi Xinan, I'm not aware of anything else quite like it in Marketplace at this time. There are a couple will move projects, but I'm not sure if you will retain the ID like this one does. It does include a integrity check function which will tell you if there are issues with the fields and ID's mismatching.

Hi Chris,

How do you keep the Field IDs the same across instances using the Configuration Manager? What are the steps that you follow?

Thanks!

1 vote

Your sync tool will need to get the two sets of field ids and pair them up. Don't assume you can make the field ids match

Suggest an answer

Log in or Join to answer
Community showcase
Sarah Schuster
Posted Jan 29, 2018 in Jira

What are common themes you've seen across successful & failed Jira Software implementations?

Hey everyone! My name is Sarah Schuster, and I'm a Customer Success Manager in Atlassian specializing in Jira Software Cloud. Over the next few weeks I will be posting discussion topics (8 total) to ...

3,264 views 14 20
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot