Skip to Main Content

SQLcl: MCP Server & SQL Prompt

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

SQLcl project stage add-custom null error when not connected

Moritz I.Jul 1 2025 — edited Jul 1 2025

Hello!

in SQLcl 25.1 I ran into an interesting bug when trying to add a custom-changeset:

SQL> project stage add-custom -file-name d_ergebnis_typ-data.sql
Prozess erfolgreich abgeschlossen
SQL> project stage add-custom -file-name d_datum-data.sql
ERROR: Bei der Verarbeitung Ihrer Anforderung ist ein Fehler aufgetreten:
null

So the first add works fine, the second runs into a null-pointer (custom-file is created but not included in stage-changelog), here the debug output of another try:

"add custom"-Befehl für Datei d_fse_fall_pruefung-data.sql wird ausgeführt...
Aktuelle Verzweigung: feature/baseline
Erstellte Datei:  dist\releases\next\changes\featurebaseline\_custom\d_fse_fall_pruefung-data.sql
Aktualisierte Änderung:dist\releases\next\changes\featurebaseline\_custom\d_fse_fall_pruefung-data.sql
/* Query ALL_DEPENDENCIES: */
select * from (SELECT OWNER          ,
NAME                       ,
TYPE                       ,
REFERENCED_OWNER           ,
REFERENCED_NAME            ,
REFERENCED_TYPE            ,
REFERENCED_LINK_NAME       ,
DEPENDENCY_TYPE            ,
'ALL_DEPENDENCIES' EXPORT_TYPE from sys.all_dependencies) all_dependencies     where 1=1
--- filters ---
    and (owner in ('MY_SCHEMA')) --<--  object owners


ERROR: Bei der Verarbeitung Ihrer Anforderung ist ein Fehler aufgetreten:
null
java.lang.NullPointerException
        at oracle.dbtools.extension.project.commands.export.DbObj.order(DbObj.java:98)
        at oracle.dbtools.extension.project.commands.stage.utils.interfaces.AbstractChangeLogSorter.sort(AbstractChangeLogSorter.java:38)
        at oracle.dbtools.extension.project.commands.stage.utils.StageUtils.saveAllChangeLogs(StageUtils.java:554)
        at oracle.dbtools.extension.project.commands.stage.utils.StageUtils.createCustomFile(StageUtils.java:1042)
        at oracle.dbtools.extension.project.commands.stage.subcommands.AddCustomCommand.run(AddCustomCommand.java:61)
        at oracle.dbtools.extension.project.commands.handler.CommandHandler.AddCustomCommand(CommandHandler.java:69)
        at oracle.dbtools.extension.project.commands.handler.ProjectCommand.handleEvent(ProjectCommand.java:79)
        at oracle.dbtools.raptor.newscriptrunner.util.command.ParsedCommandListener.handleEvent(ParsedCommandListener.java:62)
        at oracle.dbtools.raptor.newscriptrunner.CommandRegistry.fireListeners(CommandRegistry.java:448)
        at oracle.dbtools.raptor.newscriptrunner.ScriptRunner.lambda$run$0(ScriptRunner.java:241)
        at oracle.dbtools.raptor.newscriptrunner.ScriptRunnerContext.runWithStoredContext(ScriptRunnerContext.java:835)
        at oracle.dbtools.raptor.newscriptrunner.ScriptRunner.run(ScriptRunner.java:124)
        at oracle.dbtools.raptor.newscriptrunner.ScriptExecutor.run(ScriptExecutor.java:364)
        at oracle.dbtools.raptor.newscriptrunner.ScriptExecutor.run(ScriptExecutor.java:245)
        at oracle.dbtools.raptor.scriptrunner.cmdline.SqlCli.processLine(SqlCli.java:1413)
        at oracle.dbtools.raptor.scriptrunner.cmdline.SqlCli.runSqlcl(SqlCli.java:1637)
        at oracle.dbtools.raptor.scriptrunner.cmdline.SqlCli.main(SqlCli.java:403)

So for weird reasons a query examining dependencies gets triggered from the 2nd file onwards. After that i tried another one but with connection to my dev-schema: all fine.

So the question is: why is this query run when adding a custom file?

Comments
Post Details
Added on Jul 1 2025
0 comments
47 views