AnsweredAssumed Answered

Clustered Wildfly node fails to initialise - INSERT statement disallowed on virtual columns

Question asked by Alex Grant on Dec 3, 2019

Hi folks,

 

I'm performing an installation of IGL 7.1.1 on a clustered Wildfly 10 environment using the virtual application bundle. I'm working on the domain controller node first and I've managed to get up until the initialisation of IGL. However, when it attempts to INSERT what I assume is the default Aveksa ADC into the T_APPLICATIONS table, I get the following output:

 

Caused by: Error : 54013, Position : 1192, Sql = insert into T_APPLICATIONS (
etc...
"CAU1_NAME", "CAU2_NAME", "CAU3_NAME", "CAU4_NAME", "CAU5_NAME", "ID"
etc...
)
VALUES (
etc...
)
Error Msg = ORA-54013: INSERT operation disallowed on virtual columns

 

Looking at AVUSER.T_APPLICATIONS, I can see that the columns are indeed defined as virtual columns:

 "CAU1_NAME" VARCHAR2(4000 BYTE) GENERATED ALWAYS AS ("AVUSER"."FN_GET_MEUID_NAME"("CAU1")) VIRTUAL , 
"CAU2_NAME" VARCHAR2(4000 BYTE) GENERATED ALWAYS AS ("AVUSER"."FN_GET_MEUID_NAME"("CAU2")) VIRTUAL ,
"CAU3_NAME" VARCHAR2(4000 BYTE) GENERATED ALWAYS AS ("AVUSER"."FN_GET_MEUID_NAME"("CAU3")) VIRTUAL ,
"CAU4_NAME" VARCHAR2(4000 BYTE) GENERATED ALWAYS AS ("AVUSER"."FN_GET_MEUID_NAME"("CAU4")) VIRTUAL ,
"CAU5_NAME" VARCHAR2(4000 BYTE) GENERATED ALWAYS AS ("AVUSER"."FN_GET_MEUID_NAME"("CAU5")) VIRTUAL ,
"BUSINESS_OWNER_NAME" VARCHAR2(4000 BYTE) GENERATED ALWAYS AS ("AVUSER"."FN_GET_MEUID_NAME"("BUSINESS_OWNER")) VIRTUAL ,
"TECHNICAL_OWNER_NAME" VARCHAR2(4000 BYTE) GENERATED ALWAYS AS ("AVUSER"."FN_GET_MEUID_NAME"("TECHNICAL_OWNER")) VIRTUAL ,
"EXCEPTION_MANAGER_NAME" VARCHAR2(4000 BYTE) GENERATED ALWAYS AS ("AVUSER"."FN_GET_MEUID_NAME"("EXCEPTION_MANAGER")) VIRTUAL...

 

This is reflected in our development installation of the same - these columns are virtual. Why is the initialisation attempting to INSERT into the virtual columns and is there any way to work around it (e.g. can I perform an INSERT of an Aveksa application from our development installation?).

 

Edit: Manually inserting the Aveksa application record from a good environment did allow the initialisation to complete. This also required a valid relational record to be inserted into T_APPLICATION_VERSIONS.

 

Cheers,

Alex.

Outcomes