Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

ActiveObjects problem with multiple schemas.

Bartłomiej Jańczak _SoftwarePlant_ January 19, 2020

It is well known that ActiveObjects technology does not play well with multiple schemas in database.

Atlassian advice is to have separate database for each JIRA instance:

https://confluence.atlassian.com/jirakb/action-in-jira-server-fails-with-could-not-find-column-in-previously-parsed-query-error-in-log-315326688.html

 

There are also similar problem with Bitbucket:

https://community.developer.atlassian.com/t/critical-issue-with-active-objects-postrgresql-and-multiple-data-schema-migrations/24888

 

Recently we have started to use ActiveObjects technology for database model migrations on cloud environments where the library deals with thousands of schemas of PostgreSQL >9.6 database.

 

We were faced with improving the library to handle multiple schemas. It turned out to be pretty simple for PostgreSQL. In DatabaseMetaDataReaderImpl.java class getFields method jdbc driver DatabaseMetadata.getColumns method had passed null as schema name. Funny, because several lines further DatabaseMetadata.getPrimaryKeys method passed schema name as result of databaseProvider.getSchema(). 

 

Improving getting columns data by passing databaseProvider.getSchema() as schema name resolved the problem.

 

Why this improvement was not implemented by Atlassian? Does it conflict some database type/version?

2 comments

Comment

Log in or Sign up to comment
Jeff Turner
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 6, 2023

Yes, it's quite annoying that Jira breaks when using schemas to (in my case) allow cross-Jira-database queries with postgres_fdw. It is a one line fix as you say.

I raised a bug report at https://ecosystem.atlassian.net/browse/AO-3694

@Vincent Thoulé - FYI - I see you tried once on AO-562. 

Vincent Thoulé _Alkaes_ April 6, 2023

Hi @Jeff Turner ,

As we said in French "L'eau a coulé sous les ponts" ...

After 3132 tickets in https://ecosystem.atlassian.net/browse/AO and almost 9 years, the ticket was considered Obsolete.
Apparently, even if we raise a bug and provide a possible solution, the correction is not initiated.

Hopping that as ex-Atlassian employee, your voice will be heard.

Vincent

TAGS
AUG Leaders

Atlassian Community Events