go to post Robert Cemper · May 13 it's best described in docs %DeleteExtent() classmethod %DeleteExtent(concurrency As %Integer = -1, ByRef deletecount, ByRef instancecount, pInitializeExtent As %Integer = 1, Output errorLog As %Status) as %Status Delete all instances of this class from its extent. On exit instancecount contains the original number of instances while deletecount contains the number of instances actually deleted. Internally, %DeleteExtent() iterates over the set of instances in the collection and invokes the %Delete() method.Refer to Object Concurrency Options for more details on the optional concurrency argument.The option pInitializeExtent argument allows the user to override the default behavior of calling %KillExtent() when all instances are successfully deleted. %KillExtent() is called by default when the extent is empty so that empty globals can be killed. If %KillExtent() is not called then some empty globals can remain as well as the ID counter if it exists. The default value for pInitializeExtent is 1. Unless the caller specifies a false value for pInitializeExtent the globals used by the extent will be killed. If the process' GlobalKillDisabled flag is enabled and not the default of false the process' GlobalKillDisabled flag will be changed temporarily to false to allow the operation to complete without a possible error. In some cases, the globals used by the extent are not used exclusively by the extent. In those cases it is possible that some globals will still be defined even when pInitializeExtent is true. By default this call to %KillExtent() will not delete default stream storage global, but if you pass '2' in pInitializeExtent and if the entire extent was deleted we will call %KillExtent passing the 'killstreams' flag to ask it to remove kill the default storage global. Returns a %Status value indicating success or failure. %KillExtent() classmethod %KillExtent(pDirect As %Integer = 1, killstreams As %Boolean = 0) as %Status %KillExtent performs a physical kill of the extent. No constraints are enforced. This method should not be used in place of %DeleteExtent. Only physical storage occupied by this extent will be killed. If this extent is a subextent of another class then no data is killed. Indexes that originate with this extent will be killed. %KillExtent will be called on any subextents and on any child extents (the extent of the type class of a relationship whose cardinality = children is a 'child' extent) of this extent.This method is not meant for production applications. It is meant to be a development utility to quickly clear extent physical data. Also this will not remove stream data associated with these instances.If killstreams is true (default is false) it will also kill the default stream storage global.
go to post Robert Cemper · May 13 LOAD DATA requires activation of JavaGateway. >> active in docker community version by default
go to post Robert Cemper · May 11 You run [IRIS for UNIX (Ubuntu Server LTS for x86-64 Containers) 2024.1 (Build 262U) when 2024.1 was fresh I had problems because of a processor mismatch and no explicit message related. I bought a new processor to escape this trap.you may try to checkcontainers.intersystems.com/intersystems/iris-community:2023.3that didn't have that problem.just guessing
go to post Robert Cemper · May 9 You started webserver here04/29/24-15:09:00:014 (14882) 0 [Utility.Event] Private webserver started on 52773 BUT then you ran a Shutdown 04/29/24-15:09:33:048 (15564) 0 [Utility.Event] Shutdown complete05/08/24-01:34:34:288 (406) 0 [Generic.Event] Global buffer setting requires attention. Auto-selected 25% of total memory.and Webserver was NOT started again 9 days laterin fact the whole startup is incomplete. You may take a look to this old article on a similar caseOR see doku: Restart WebserverStart/Stop of the container might be the last to try
go to post Robert Cemper · May 9 some decade+ back there was a decision that SQL should be identicwhether embedded, in SMP, ODBC, SQL Shell, or SQL.Statement.
go to post Robert Cemper · May 9 your CASE statement is wrong in multiple ways:and doesn't work in ENSEMBLE /Caché either double quotes " mark column names, strings require single quotes ' !="" is an Objectscript construct 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
go to post Robert Cemper · May 8 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.
go to post Robert Cemper · May 8 #1 iris runs in /usr/irissys/#2 iris view shows the actual status#3 check messages ./mgr/message.log for detailed reasons
go to post Robert Cemper · Apr 29 And here is the real documentation on $VECTOR in ObejctScript.And also well hidden: $VectorOperations
go to post Robert Cemper · Apr 29 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: schemaString containing the default SQL schema name. If schema is "" or not defined, the default schema will be set to SQLUser.oldvalPassed By Reference. Contains the previous value of the setting.NamespaceBoolean 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.
go to post Robert Cemper · Apr 27 I found the correct use of host variables in embedded SQL: UPDATE: TO_VECTOR(:myvec,INT,2) set myvec="1314,-7979" Nothing special: Just a plain String with comma separated valuesIt seems I couldn't believe that simple approach.My apologizes to ISC Engineering.
go to post Robert Cemper · Apr 27 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>
go to post Robert Cemper · Apr 24 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 (?):
go to post Robert Cemper · Apr 24 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 OKBUT: 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 betweenWIN as Docker host and a Container (Ubuntu) causing a lot of confusion until detected.
go to post Robert Cemper · Apr 23 System Utility %ETN.int takes a snapshot with all actual variables somehow similar to WRITE commandDescription: Using %ETNIt may give you some feeling how to analyze a running process.ATTENTION: reading requires some experience in ObjectScriptyou might get lost
go to post Robert Cemper · Apr 19 Functional Background (since decades) - simple ; (semicolon) is passed down into the final .INT code (and generated .OBJ)useful it working with $TEXT() functionwhile- #; in CLS or MAC is skipped while compiling .INTso it is smaller saves spacemainly useful for larger comment blocks kept for documentation