Question Norman W. Freeman · Feb 1 Is there a simple way to check if a given class need to be recompiled ? A class (and routine) definition can sometimes differ from it's compiled state.When such a thing occurs, a "+" sign will be shown in the tab of the file opened in Studio. I would like to do the same check programmatically. For routines, it's very simple : #InterSystems IRIS 0 4 0 104
Question Norman W. Freeman · Oct 30, 2023 Is it possible to call a superclass method outside the method with same name ? The following code call the method of the same name as defined in the nearest superclass: #InterSystems IRIS 0 8 0 202
Question Norman W. Freeman · Aug 31, 2023 Is there a parameter to configure whether the web gateway should maintain connections with the super server? I have notified the following : #Web Gateway #InterSystems IRIS 0 5 0 181
Question Norman W. Freeman · Aug 4, 2023 How to create a global node, without knowing the number of keys in advance ? Hello,I would like to do the following : #Databases #InterSystems IRIS 0 6 0 196
Question Norman W. Freeman · Jul 27, 2023 Is it possible to get a list all active open TCP/IP connections made by IRIS ? There is several classes that allow to create TCP/IP connections (eg: to connect to a service). Example : %Net.FtpSession (port 21), %Net.HttpRequest (usually port 80 or 443) AFAIK connection will stay open unless closed explicitly or if variable that hold the instance is garbage collected. Is there a way to get a list of all active (open) TCP/IP connections IRIS is maintaining so far ? #Performance #InterSystems IRIS 0 6 0 262
Question Norman W. Freeman · Jul 18, 2023 Some questions about garbage collector Hello, I am looking for information about garbage collector. I already looked at documentation but I could not find anything about it.Here is some questions : #InterSystems IRIS 0 3 0 239
Question Norman W. Freeman · Jul 10, 2023 Is there a way to view/mount journals from another system on a local instance ? I have several 1GB journals from a LIVE server that I would like to inspect (eg: check which globals have been updated over the time). Is there a simple way to view those journals using another IRIS instance ? (eg: local installation). I have been tempted to put those files directly into the journal folder of my local installation and restart the system, however I am concerned that the transactions they contains will be restored and will corrupt the local database. #Databases #Journaling #InterSystems IRIS 0 10 1 238
Question Norman W. Freeman · Jun 9, 2023 Is there a way to retrieve a list of all globals that have been read/written in a given context (eg: CSP request) or time period ? Hello, I would like to get a list of all globals that have been read or written during a given context. In Portal, there are counters in dashboard that give the number of read/write to globals in general. What I am looking for : - some handler (eg: like $ZTRAP) that will be called everytime something is read/written to a global. - to activate a "global log mode" in Portal that will dump some information to a file (like ^ISCSOAP for SOAP requests). #Globals #Performance #InterSystems IRIS 1 2 0 204
Question Norman W. Freeman · May 7, 2023 Is there a limit to the number of processes IRIS can create to process concurrent requests ? I did some experiments on my local machine and found out that IRIS seems to associate each request (eg: CSP request) to a dedicated process named IrisDB.exe This process has 3 threads, and one of them seems to be the main working thread (that will the handle request). If I spawn many concurrent requests, the number of IrisDB processes on my local machine will grow (to make sure each request can be handled in parallel). It seems there is a limit : it will create no more than 64 processes to handle requests (eg: even if 100 concurrent requests are send to IRIS). #InterSystems IRIS 1 3 0 313
Question Norman W. Freeman · Apr 4, 2023 Why loading X509 credentials fails when called under context of a CSP request ? I use the following code to grab 509 certificate and show private key : #CSP #InterSystems IRIS 0 5 0 319
Question Norman W. Freeman · Mar 9, 2023 How to get a list of all classes of a given namespace ? I use the following query to get a list of all classes : #InterSystems IRIS 0 1 1 413
Question Norman W. Freeman · Feb 15, 2023 What is "~pointer" in globals, is there a way to see what is behind ? Out of curiosity, I was looking in ^ROUTINE global to see how routines are stored internally. I found out that lot of nodes are displaying "~pointer" as associated value (eg: instead of a string). What are those pointers ? My guess is that it references some cache internal structure (eg: some nodes inside a B-Tree). Is there a easily way to see what is behind ? Are pointers useful for user globals or is this something purely internal to Cache database ? #Databases #Globals #Caché #InterSystems IRIS 0 1 0 208
Question Norman W. Freeman · Feb 8, 2023 Why are "Exclusive_e->Delock" needed when saving persistent objects in a transaction ? (and can they be avoided) I use the following code (which is a simplified version of what happen on a server) : #Database Transaction Processing #InterSystems IRIS 0 6 0 205
Question Norman W. Freeman · Jan 19, 2023 Why is node ordering different between two environments ? I have noticed that the way the nodes are ordered is different between 2 different environments. If I create the following global : #Globals #Caché #InterSystems IRIS 0 5 0 198
Question Norman W. Freeman · Nov 29, 2022 Is there a way to modify %SYS classes for debugging purposes ? I got an error that occurs inside %CSP.Broker. That class is located inside %SYS namespace. I tried lot of things (including checking system logs) but ultimately what would really help would be to be able to modify that class to add my own logs into it. If I try to modify it, I got this error message: Item '%CSP.Broker' is mapped from a database that you do no have write permissions on. #InterSystems IRIS 0 5 0 407
Question Norman W. Freeman · Jul 29, 2022 Is there an equivalent to the Business Intelligence (BI) classes in IRIS ? I have migrated one project from CACHE to IRIS that contains lot of classes that inherit from BI (Business Intelligence). Usually it looks like this : #InterSystems IRIS 0 3 1 502
Question Norman W. Freeman · Jul 1, 2022 Is there a way to use IRIS from command line (eg: batch file), the same way as it can be done in CACHE ? We recently migrated to IRIS. Before, the CACHE.EXE executable could be invoked from a batch file directly : C:\InterSystems\Cache\bin\cache.exe -s C:\InterSystems\Cache\mgr -U %SYS This will display the following in console : Node: DESKTOP-8H4B321, Instance: CACHE USER> Additionally, the pipe instruction can be used to redirect some commands directly echo write 50 | C:\InterSystems\Cache\bin\cache.exe -s C:\InterSystems\Cache\mgr -U %SYS #InterSystems IRIS 0 5 0 398
Question Norman W. Freeman · Jun 28, 2022 Is it possible to call a method in a specific namespace without changing current namespace ? I want to call a method which is in %SYS namespace : #Caché 0 4 0 482
Question Norman W. Freeman · Jan 26, 2022 How to get current date and time in YYYYMMDDHHMMSS format ? I would like to get current date and time in this format : YYYYMMDDHHMMSS (eg: 20220126155704) Simplest way to do that I found so far is this : $translate($zdatetime($horolog,8,1), " :", "") It works, but it's not that great (I would like to avoid string manipulation) Is there a better, cleaner way ? #Caché 0 9 0 1.8K
Question Norman W. Freeman · Jan 17, 2022 How to create a toolbar button in Cache Studio that trigger a custom command after click ? I would like to create a toolbar button in Cache Studio. After clicking on it, it would run a custom command (eg: to execute a routine that will clean a global). I took a look at dialog that is shown after right clicking on a toolbar in Studio, then choosing "Customize" but AFAIK there is nothing there that allow such a thing. I know it's possible to customize menu items by extending %Studio.SourceControl.Base class, is there something similar for toolbars ? Here is some base code example (based on Danny Wijnschenk answer) : #Studio #Caché 0 6 0 278