your CASE statement  is wrong in multiple ways:
and doesn't work in ENSEMBLE /Caché either

  1. double quotes " mark column names, strings require single quotes '
  2. !=""  is an Objectscript construct
  3. you have to write NOT IS NULL instead 
select CASE WHEN StarterKitName NOT IS NULL THEN ....

See also example in ENS/Caché  docu :
https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=RSQL_case 

I reproduced it on my machine

* Not so much surprise:
* Your messages.log is missing at least 50 lines of startup (after the -------- mark)

05/08/24-13:40:53:035 (455) 0 [Utility.Event] Using OpenSSL 3.0.2 15 Mar 2022
05/08/24-13:40:53:149 (455) 0 [Database.MountedRW] Mounted database /usr/irissys/mgr/iristemp/ (SFN 3) read-write.
05/08/24-13:40:53:155 (455) 0 [Utility.Event] /usr/irissys/mgr/iristemp/ initialized as IRISTEMP
05/08/24-13:40:53:156 (455) 0 [Utility.Event] Switching to default %SYS Namespace
-----------------------------------------------------------------------------------------------------------
05/08/24-13:40:53:186 (456) 0 [Utility.Event] Log Monitor Started
05/08/24-13:40:53:300 (457) 0 [Utility.Event] Clean Daemon Started
05/08/24-13:40:53:311 (455) 0 [Utility.Event] No archives configured
05/08/24-13:40:53:321 (455) 0 [Utility.Event] Performing Journal Recovery
05/08/24-13:40:53:322 (455) 0 [Utility.Event] Graceful system shutdown, journal restore not required
05/08/24-13:40:53:322 (455) 0 [Utility.Event] Graceful system shutdown, transaction rollback not required
05/08/24-13:40:53:338 (455) 0 [Utility.Event] START: /usr/irissys/mgr/journal/20240508.001
05/08/24-13:40:53:368 (455) 0 [Generic.Event] INTERSYSTEMS IRIS JOURNALING SYSTEM MESSAGE
Journaling started to: /usr/irissys/mgr/journal/20240508.001
05/08/24-13:40:53:368 (455) 0 [Utility.Event] Journaling to /usr/irissys/mgr/journal/20240508.001 started.
05/08/24-13:40:53:368 (455) 0 [Utility.Event] Processing WorkQueues section
05/08/24-13:40:53:371 (455) 0 [Utility.Event] Processing Startup section
05/08/24-13:40:53:387 (458) 0 [Utility.Event] Purging old application errors
05/08/24-13:40:53:387 (455) 0 [Utility.Event] Processing config section
05/08/24-13:40:53:399 (459) 0 [Utility.Event] LMF Info:  Licensed for 8 users.
05/08/24-13:40:53:412 (455) 0 [Utility.Event] Initializing Security system
05/08/24-13:40:53:432 (455) 0 [Utility.Event] Processing Network section
05/08/24-13:40:53:435 (455) 0 [Utility.Event] Activating Network
05/08/24-13:40:53:439 (455) 0 [Utility.Event] Processing Databases section
05/08/24-13:40:53:545 (455) 0 [Database.MountedRW] Mounted database /usr/irissys/mgr/irisaudit/ (SFN 4) read-write.
05/08/24-13:40:53:549 (455) 0 [Utility.Event] Processing Namespaces section
05/08/24-13:40:53:549 (455) 0 [Utility.Event] Namespaces are up to date
05/08/24-13:40:53:549 (455) 0 [Utility.Event] Activating namespaces
05/08/24-13:40:53:551 (455) 0 [Utility.Event] Activating new namespace map
05/08/24-13:40:53:563 (455) 0 [Utility.Event] Namespace changes have been activated
05/08/24-13:40:53:572 (462) 0 [Utility.Event] Starting superserver on port 1972
05/08/24-13:40:53:572 (455) 0 [Utility.Event] Network Lock Upload Phase Starting
05/08/24-13:40:53:572 (455) 0 [Utility.Event] Lock Upload Phase Complete
05/08/24-13:40:53:572 (455) 0 [Utility.Event] Processing Miscellaneous section
05/08/24-13:40:53:596 (465) 0 [Utility.Event] Starting Servers
05/08/24-13:40:53:597 (455) 0 [Utility.Event] Processing Devices section
05/08/24-13:40:53:601 (455) 0 [Utility.Event] Processing DeviceSubTypes section
05/08/24-13:40:53:606 (455) 0 [Utility.Event] Processing MagTape section
05/08/24-13:40:53:608 (455) 0 [Utility.Event] Processing IO section
05/08/24-13:40:53:610 (455) 0 [Utility.Event] Processing SQL section
05/08/24-13:40:53:612 (455) 0 [Utility.Event] Processing Macro Pre-Processor (MPP) section
05/08/24-13:40:53:613 (455) 0 [Utility.Event] Processing OS Package Requirements section
05/08/24-13:40:53:680 (455) 0 [Generic.Event] Auditing to /usr/irissys/mgr/irisaudit/
05/08/24-13:40:53:705 (455) 0 [Utility.Event] Executing ^ZSTU routine
05/08/24-13:40:53:706 (455) 0 [Utility.Event] Executing ^%ZSTART routine
05/08/24-13:40:53:707 (455) 0 [Utility.Event] Enabling logons
05/08/24-13:40:53:711 (465) 0 [Utility.Event] Private webserver started on 52773
05/08/24-13:40:53:711 (465) 0 [Utility.Event] Processing Shadows section (this system as shadow)
05/08/24-13:40:53:714 (465) 0 [Utility.Event] Processing Monitor section
05/08/24-13:40:53:724 (616) 0 [Utility.Event] Starting TASKMGR
05/08/24-13:40:53:797 (455) 0 [Database.MountedRW] Mounted database /usr/irissys/mgr/user/ (SFN 5) read-write.
05/08/24-13:40:53:801 (617) 0 [Utility.Event] [SYSTEM MONITOR] System Monitor started in %SYS
05/08/24-13:40:53:815 (619) 0 [Utility.Event] WorkQueue: Starting work queue daemon parent=465
05/08/24-13:40:53:815 (465) 0 [Utility.Event] Shard license: 0
05/08/24-13:40:55:158 (455) 0 [Database.MountedRO] Mounted database /usr/irissys/mgr/enslib/ (SFN 6) read-only. Database label is marked read-only. 
05/08/24-13:40:55:161 (455) 0 [Utility.Event] Initializing Interoperability during system startup
05/08/24-13:42:40:619 (653) 0 [Utility.Event] %SYS.Task.FeatureTracker transferred data to ats.intersystems.com

Especially the red marked step wasn't executed.
So no listener on 52773:
Hard to guess the reasons, Docker may run out of resources.( memory ?)
You IRIS is definitely OK. 
  
 

As you now explained what you really are looking for:   $System.SQL.Schema.SetDefault()

From Docu:

classmethod SetDefault(schema As %Library.String = "", ByRef oldval As %Library.String, Namespace As %Library.Boolean = 0) as %Library.Status

Sets the default schema used by SQL.
This configuration setting provides the ability to define a default schema name other than SQLUser, the default. When an unqualified table name is encountered in an SQL statement (and there is no #import statement specified), the default schema will be used. This setting has nothing to do with the mappings between SQL schema names and the class package name, it only specifies the default schema. Parameter:

schema
String containing the default SQL schema name. If schema is "" or not defined, the default schema will be set to SQLUser.
oldval
Passed By Reference. Contains the previous value of the setting.
Namespace
Boolean 1/0 flag. If TRUE, set the default schema for the current namespace only. The default for Namespace is FALSE

Returns:

Status Code

NOTES:

- You must have the "USE" permission on the %Admin Manage Resource in order to change this configuration setting.
- Changing this configuration setting will affect all processes immediately.

I just discovered in class code a different way to get Vector Values from object

USER>set obj=##class(AG.GEO).%OpenId(13)
USER>write obj.VBASE
8EB052EF186E024A8AAC58ED708EB114@$vector
USER>zwrite obj.VBASE
{"type":"integer", "count":2, "length":2, "vector":[4812,-1622]}  ; <VECTOR>
;
;;; THIS  is from the generated code
USER>set vec=obj.VBASELogicalToOdbc(obj.VBASE)
USER>zw
obj=<OBJECT REFERENCE>[17@AG.GEO]
vec="4812,-1622"
USER>

From Terminal in namespace %SYS you can run

  • DO ^JOBEXAM
  • select your job by list of PID
  •  Job# NSpace  Routine        Commands   Globals State PID      Current device
       23 USER    shell               425        64 READ  17060    |TRM|:|17060
    Namespace:          USER                     SessionID:
    Routine:            shell
    Open Devices:       |TRM|:|17060*
    Mem Lim/Peak/Curr:  256M/154K/116K           In Trans:      No
    Priority:           8                        Info:
    User Name:          UnknownUser
    Roles/EscalatedRoles:%All/None
    OS User Name:       cemper                   EXE Name:
    Client Node Name:   TRM:                     IP Address:    127.0.0.1
    Location:                                    PrivGblBlks:   3
    Last reference:     ||RCC(5)
     
    Current line:
     
    Entry Process     X#   S# Flg Item Locked
    
    (V)ariable, (L)ocks, (S)tack, (P)rocess Private Globals, (Q)uit =>  P
  • and can see  PPG
    Process Private Global (?): RCC
    ^||RCC(1)=1
    ^||RCC(2)=2
    ^||RCC(3)=3
    ^||RCC(4)=4
    ^||RCC(5)=5
     
    Process Private Global (?):
     

Hi @Michael Davidovich !
you hit exactly what I addressed in in my recent article
  The bewitched line terminator

As long as you get (text-) files from your own OS the default is OK
BUT: if you work cross OS platforms - rather likely for CSP pages -
the approach of  
%CSP.BinaryStream is the best for import.

For output stream you have to decide based on the expected target OS.

My personal trigger to that subject was file transfer between
WIN as Docker host and a Container (Ubuntu) causing a lot of  confusion until detected.