Hello everyone,
I’m facing an issue while deploying an Oracle APEX application to the production (PRD) environment. The same deployment process worked fine on TST and ACC environments, but on PRD, I get the following error:
Error starting at line : 2 File @ /var/lib/jenkins_swarm/workspace/.../app/apex/application/end_environment.sql
In command -
begin
wwv_flow_imp.import_end(p_auto_install_sup_obj => nvl(wwv_flow_application_install.get_auto_install_sup_obj, false));
commit;
end;
Error report -
ORA-24381: error(s) in array DML
ORA-06512: at "APEX_230100.WWV_FLOW_IMP_PAGE", line 831
ORA-06512: at "APEX_230100.WWV_FLOW_IMP_PAGE", line 928
ORA-06512: at "APEX_230100.WWV_FLOW_IMP", line 1164
ORA-06512: at "APEX_230100.WWV_FLOW_IMP", line 1270
ORA-06512: at "APEX_230100.WWV_FLOW_IMP", line 1308
ORA-06512: at line 2
24381. 00000 - "error(s) in array DML"
*Cause: One or more rows failed in the DML.
*Action: Refer to the error stack in the error handle.
Disconnected from Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
The script that causes the issue (end_environment.sql
) contains the following:
prompt --application/end_environment
begin
wwv_flow_imp.import_end(p_auto_install_sup_obj => nvl(wwv_flow_application_install.get_auto_install_sup_obj, false));
commit;
end;
/
set verify on feedback on define on
prompt ...done
I compared this file with the same script from other applications, and it looks identical.
While reviewing the logs, I also noticed an issue related to SQLcl failing to load a native library (jansi-2.4.0
):
Failed to load native library: jansi-2.4.0-b60bbb8215c394bf-libjansi.so.
The native library file at /tmp/jansi-2.4.0-b60bbb8215c394bf-libjansi.so is not executable.
Make sure that the directory is mounted on a partition without the noexec flag,
or set the jansi.tmpdir system property to point to a proper location.
Temporary Workaround:
To proceed with the deployment, I modified **end_environment.sql**
by replacing this block:
wwv_flow_imp.import_end(p_auto_install_sup_obj => nvl(wwv_flow_application_install.get_auto_install_sup_obj, false));
commit;
with:
null;
This allowed the application to deploy successfully on PRD, but it’s obviously not an ideal solution.
What I Have Checked So Far:
- The same deployment works fine on TST and ACC.
- The application schema on PRD is the same as in other environments.
- The issue could be related to SQLcl, as
/tmp
might be mounted with the **noexec**
flag, preventing execution of required libraries.
Questions:
- Could the SQLcl issue (
jansi
library error) be causing the deployment failure?
- Has anyone encountered ORA-24381 during APEX application deployment before?
- What could be the root cause of this issue?
- Any suggestions on debugging or fixing this properly?
Any help or guidance would be greatly appreciated!
Thanks in advance. 🚀