I'm one of the arch linux AUR maintainers of oracle xe package. I'm currently port the rpm package to a PKGBUILD
file. However, when I run the following command to create the database (the same command used in the oracle-xe-21c
script):
su -s /bin/bash oracle -c '/opt/oracle/product/21c/dbhomeXE/bin/dbca -silent \
-createDatabase -templateName XE_Database.dbc -characterSet AL32UTF8 \
-createAsContainerDatabase true -numberOfPDBs 1 -sid XE -pdbName XEPDB1 \
-emConfiguration DBEXPRESS -emExpressPort 5500 \
-J-Doracle.assistants.dbca.validate.DBCredentials=false -ignorePrereqs \
-J-Doracle.assistants.skipAvailableSharedMemoryCheck=true \
-skipDatapatch true -emExpressPortAsGlobalPort true \
-customScripts /opt/oracle/product/21c/dbhomeXE/assistants/dbca/postdb_creation.sql -gdbName XE'
It fails with the error message:
[WARNING] [INS-08109] Unexpected error occurred while validating inputs at state 'ConfigurationParams'.
CAUSE: No additional information available.
ACTION: Contact Oracle Support Services or refer to the software manual.
From the trace log, there seems a stack overflow exception (See the attached file for the full log):
Refer associated stacktrace #oracle.install.commons.util.exception.AbstractErrorAdvisor:39403
[main] [ 2021-11-05 00:33:43.719 CST ] [AssistantLogHandler.publish:484] ---# Begin Stacktrace #---------------------------
ID: oracle.install.commons.util.exception.AbstractErrorAdvisor:39403
oracle.install.commons.flow.FlowException: [INS-08109] Unexpected error occurred while validating inputs at state 'ConfigurationParams'.
at oracle.install.commons.flow.AbstractFlowExecutor.validate(AbstractFlowExecutor.java:544)
at oracle.install.commons.flow.AbstractFlowExecutor.leaveVertex(AbstractFlowExecutor.java:835)
at oracle.install.commons.flow.AbstractFlowExecutor.transition(AbstractFlowExecutor.java:434)
at oracle.install.commons.flow.AbstractFlowExecutor.nextState(AbstractFlowExecutor.java:360)
at oracle.install.commons.flow.SilentFlowExecutor.execute(SilentFlowExecutor.java:67)
at oracle.install.commons.flow.AbstractFlowExecutor.execute(AbstractFlowExecutor.java:300)
at oracle.install.commons.flow.FlowApplication.executeFlow(FlowApplication.java:161)
at oracle.assistants.common.base.driver.AssistantApplication.executeFlow(AssistantApplication.java:180)
at oracle.install.commons.flow.FlowApplication.run(FlowApplication.java:167)
at oracle.assistants.common.base.driver.AssistantApplication.run(AssistantApplication.java:283)
at oracle.install.commons.util.Application.startup(Application.java:1131)
at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:181)
at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:198)
at oracle.assistants.common.base.driver.AssistantApplication.startup(AssistantApplication.java:340)
at oracle.assistants.dbca.driver.DBConfigurator.startup(DBConfigurator.java:421)
at oracle.assistants.dbca.driver.DBConfigurator.main(DBConfigurator.java:556)
Caused by: java.lang.StackOverflowError
at java.io.OutputStream.<init>(OutputStream.java:46)
at java.io.FileOutputStream.<init>(FileOutputStream.java:239)
at java.lang.UNIXProcess$ProcessPipeOutputStream.<init>(UNIXProcess.java:557)
at java.lang.UNIXProcess.initStreams(UNIXProcess.java:276)
at java.lang.UNIXProcess.lambda$new$2(UNIXProcess.java:258)
at java.security.AccessController.doPrivileged(Native Method)
at java.lang.UNIXProcess.<init>(UNIXProcess.java:257)
at java.lang.ProcessImpl.start(ProcessImpl.java:134)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
at java.lang.Runtime.exec(Runtime.java:621)
at java.lang.Runtime.exec(Runtime.java:486)
at oracle.ops.mgmt.nativesystem.RuntimeExec.runCommand(RuntimeExec.java:232)
at oracle.ops.verification.framework.util.sVerificationUtil.getUniqueDistributionID(sVerificationUtil.java:575)
at oracle.ops.verification.framework.util.sVerificationUtil.resolve(sVerificationUtil.java:1386)
at oracle.ops.verification.framework.util.CVUVariables.resolveValueForVariable(CVUVariables.java:1890)
at oracle.ops.verification.framework.util.CVUVariables.resolve(CVUVariables.java:993)
at oracle.ops.verification.framework.util.CVUVariables.getValue(CVUVariables.java:664)
at oracle.ops.verification.framework.util.sVerificationUtil.getUniqueDistributionID(sVerificationUtil.java:609)
at oracle.ops.verification.framework.util.sVerificationUtil.resolve(sVerificationUtil.java:1386)
at oracle.ops.verification.framework.util.CVUVariables.resolveValueForVariable(CVUVariables.java:1890)
at oracle.ops.verification.framework.util.CVUVariables.resolve(CVUVariables.java:993)
at oracle.ops.verification.framework.util.CVUVariables.getValue(CVUVariables.java:664)
(The above five lines repeat a lot of times)
So, what might be the issue?