Hello,
I have problem to get working my web application in IIS. On apache just works fine.
I had an app in wwwroot called test, there is index.html file where is tag
InterSystems IRIS is a Complete Data Platform
InterSystems IRIS gives you everything you need to capture, share, understand, and act upon your organization’s most valuable asset – your data.
As a complete platform, InterSystems IRIS eliminates the need to integrate multiple development technologies. Applications require less code, fewer system resources, and less maintenance.
Hello,
I have problem to get working my web application in IIS. On apache just works fine.
I had an app in wwwroot called test, there is index.html file where is tag
There are nfs disk commands (including nfsiostat) included with SystemPerformance, but disabled by default. Enable them by running:
$$Enablenfs^SystemPerformance()
Doing so will add the following nfs commands, for example, on Linux:
/usr/sbin/nfsstat -cn/usr/sbin/nfsiostat [interval] [count]Ensure the commands are installed and runnable from the OS :)
This can be subsequently disabled via $$Disablenfs^SystemPerformance()
Adding an arbitrary OS tool creates a "user" command under ^IRIS.
SQL injection remains one of the most critical vulnerabilities in database-driven applications, allowing attackers to manipulate queries and potentially access or compromise sensitive data. In InterSystems IRIS, developers have access to both Dynamic SQL and Embedded SQL, each with distinct characteristics. Understanding how to use them securely is essential for preventing SQL injection.
Dynamic SQL constructs queries as strings at runtime. While this offers flexibility, it also creates a vulnerability if user input is not handled correctly.
| Alert Id | Product & Versions Affected | Risk Category & Score | Explicit Requirements |
| DP-448888 |
Products: Versions: |
Operational: High Risk | ≥ 2 TB of database cache is used |
In the versions specified above, an instance may fail to start or may hang during operation if the database cache is greater than or equal to 2,097,152 MB (2 TB).
Hi Community,
We're super excited to share that we’ve just launched a new free, interactive tutorial designed especially for those who are new to InterSystems IRIS and looking for a clear, practical introduction to its core concepts.
🧑🏫 Data Models of InterSystems IRIS 🧑💻

USER>do $System.Python.Shell()
ERROR #5002: ObjectScript-Error: <OBJECT DISPATCH>Shell+16^%SYS.Python.1
*Failed to Load Python: Check documentation and messages.log,
Check CPF parameters:[PythonRuntimeLibrary,PythonRuntimeLibraryVersion],
Check sys.path setup in: $INSTANCE/lib/python/iris_site.py
02/03/25-18:27:39:497 (13156) 1 [Generic.Event] CPF settings (PythonRuntimeLibraryVersion) do not specify python correctly - Python can not be loaded 02/03/25-18:27:39:498 (13156) 1 [Generic.
Hi all.
I have a rather strange problem.
I've created a method in Python to create a vector for a vector search. So far, so good.
If I call this method from the terminal, it works correctly:
But if I make this same call from a code block in a Business Process, it gets stuck, doesn't respond, and throws the following error:

Does anyone know what's happening and how to fix it?
Thank you in advance
Hi community,
I've been working on a side project that I'd love to get some eyes on: a ground-up rebuild of the classic IRIS Production Monitor using a modern web stack. The existing ZEN/CSP-based portal does the job, but I wanted to explore what a contemporary, real-time version of it could look like.
A standalone Angular web application that connects to any Interoperability-enabled IRIS namespace and gives you a live view of your production — services, processes, operations, queues, event log, and message traffic — all in one screen.
Earlier this year, I set about creating kit to introduce young techy folk at a Health Tech hackathon to using InterSystems IRIS for health, particularly focusing on using FHIR and vector search.
I wanted to publish this to the developer community because the tutorials included in the kit make a great introduction to using FHIR and to building a basic RAG system in IRIS.
As part of the new Interoperability UI wave (see what was new in 2025.1, and 2025.3 by @Aya Heshmat), v2026.1 which is available already as a Developer Preview, and this could be a reason for you to give it a ride - will be shipping the new UI for the Message viewing and searching, including Visual Trace (and other UI goodies).
He's a quick teaser:

As part of the new Interoperability UI wave (see what was new in 2025.1, and 2025.3 by @Aya Heshmat), v2026.1 which is available already as a Developer Preview, and this could be a reason for you to give it a ride - will be shipping the new UI for the BPL editor (and other UI goodies).
He's a quick teaser:

I may have mentioned this before: I believe the Visual Traces, these sequence diagrams with full content of each step, are a fantastic feature of the IRIS Data platform! Detailed information about how the API works internally, as a visual trace, can be very useful for projects on the IRIS platform. Of course, this applies when we are not developing a high-load solution, in which case we simply don't have time for saving/reading messages. For all other cases, welcome to this tutorial!
In this article I'll show you how to set up in your laptop, very quickly, a cluster of IRIS nodes in sharding. It's not the goal of this article neither to talk about sharding in detail nor define a deployment of a production ready architecture, but to show how to set up quickly, in your own machine, a cluster of IRIS instances configured as shard nodes, with which you'll able to play and test this functionality. If you're insterested in knowing more about sharding in IRIS, take a look at the documentation clicking here.
First and foremost, I want to remark that IRIS sharding will allow us 2 things:
So, as I said, we let for other article playing with shard or federated tables, and just focus now in the previous step, that is, setting up the cluster of shard nodes.
We are trying to track down significant growth within our Namespaces, one big culprit is Ens.AppData (EnsLib.SQL.Snapshot).
Within many of our BPL's we use EnsLib.SQL.Snapshot to return Results from External SQL Stored Procedures or Query's. The same EnsLib.SQL.Snapshot context variable is used for many of these calls within a BPL.
Is there something we should be doing at the end of the BPL to ensure that EnsLib.SQL.Snapshot gets cleaned up and purged from Ens.AppData?
How can I create a Task that tells a Ens.BusinessService to execute its SQL query using the EnsLib.SQL.InboundAdapter?
So far I have come up with
Class OSU.Workday.TerminationsTask Extends %SYS.Task.Definition
{
Parameter TaskName As STRING = "OSU - Workday Termination Update";
Method OnTask() As %Status
{
try{
// Call BusinessService
set tSC = ##class(Ens.Director).CreateBusinessService("OSU.DataSource.Workday.TermService",.tService)
if $IsObject(tService){
set inputMessage = ##class(Ens.StringContainer).How to execute a stored procedure in a remote DB2 database?
Hi Everyone,
I want to access a stored procedure in a remote DB2 database. The stored procedure in question is linked and receives a numeric value, returning a cursor with N number of rows. Sometimes the number of rows reaches hundreds of thousands, so I need to apply pagination.
I've been reading about the %ScrollableResultSet library, but it doesn't allow me to call a stored procedure.
Here's part of the code:
Set pValor=12345678
Set callSql="CALL Paquete.ClaseSpRemoto(?)"
Set rs=##class(%ScrollableResultSet).
IPM version 0.10.6 was released on February 24th, 2026. This version is mostly bug fixes, but does add the -export-python-deps flag to the package and publish commands to include Python dependencies with the IPM module itself. As usual, you can check it out on the GitHub page or through the Community Registry.
Here's the complete changelog:
Added
- #1024: Added flag -export-python-deps to publish command
Fixed
- #996: Ensure COS commands execute in exec under a dedicated, isolated context
- #1002: When listing configured repositories, only show the TokenAuthMethod when a token is defined.
Hi, Community!
Working with large volumes of data? See how streams can help:
Hi Community,
Enjoy the new video on InterSystems Developers YouTube:
I had configured the environment as follows:
OS: Redhat Linux 9.4
IRIS 2025.2 installed on local directory
IRIS Database: One LVM is created with 20 Storage luns and the LVM is mounted on a mount point. IRIS database is created on that
Primary and Alternate Journal: One LVM is created with 5 Storage luns and the LVM is mounted on a mount point. IRIS database is created on that.
WIJ: One LVM is created with 5 Storage luns and the LVM is mounted on a mount point. IRIS database is created on that.
So Data, WIJ and Journal is mounted on 3 separate mount point.
Hi everyone,
I am currently setting up InterSystems API Manager (IAM) 3.4.3.11 using Docker. The installation is successful, the license is active, and I can access the Manager (port 8002).
I am now trying to secure the Administration Portal using basic-auth. I've found some documentation stating that I should:
KONG_ENFORCE_RBAC and KONG_ADMIN_GUI_AUTH in the docker-compose.yml.I am currently managing environments running InterSystems IRIS and Caché on Windows servers.
I’m reviewing storage optimization best practices and I have a question regarding a specific Windows drive setting: "Allow files on this drive to have contents indexed in addition to file properties."
Based on my research, everything indicates that it is better to disable this option, especially on drives used by databases. However, I couldn't find a specific "official" stance in the documentation explicitly mentioning this checkbox.
InterSystems continues to push AI capabilities forward natively in IRIS — vector search, MCP support, and Agentic AI capabilities. That roadmap is important, and there is no intention of stepping back from it.
But the AI landscape is also evolving in a way that makes ecosystem integration increasingly essential. Tools like Dify — an open-source, production-grade LLM orchestration platform — have become a serious part of enterprise AI stacks.
I have installed IRIS community edition on a local directory in Redhat Linux 9.4.
Created a 10G database on a separate mount point directory which comes out of a storage volume of 50G.
Also placed Journal and WIJ on 2 separate mount point directories which comes out of two different storage volume of 50G each.
I want to take a snapshot and recover the snapshot on a secondary host and check the consistency of the database.
As Storage snapshot will be taken, only Data, Journal and WIJ file placed on Storage volumes will be snapshotted.
Is there any Cache setting that needs to be checked while configuring IRIS Community Edition 2025.2 and does it impact WIJ recovery.
Also I have kept Database, WIJ and JOURNAL on the same snapshot group with Consistency . Is it the recommended settings? Am I getting the WIJ mismatch error due to this setting?
What is Unstructured Data?
Unstructured data refers to information lacking a predefined data model or organization. In contrast to structured data found in databases with clear structures (e.g., tables and fields), unstructured data lacks a fixed schema. This type of data includes text, images, videos, audio files, social media posts, emails, and more.
Why Are Insights from Unstructured Data Important?
According to an IDC (International Data Corporation) report, 80% of worldwide data is projected to be unstructured by 2025, posing a significant concern for 95% of businesses.
Configuration differences between environments are not always mistakes, but they should always be intentional and governed.
We're excited to announce that version 3.6 of JediSoft IRISsync® is now available, bringing enhancements designed to give teams more control and visibility when managing configuration settings across multiple IRIS instances.
What's new in IRISsync 3.6:
I have a global with multiple nodes :
^A("ABC") = ""
^A("DEF") = ""
^A(123) = ""How to create a new single node in that global, in a way it's always at the end of the global (eg: this will be the very last node being enumerated)
I end up with this code but maybe there is a cleaner and simpler approach :
set ^A($char(65535)) = "" //should be bigger than any character inserted
set ^A($char(255)) = "" //some systems does not seems to support >255 characters, this might be saferI only need to write it once, this code is not intended to be used in a loop or something, just to add something at the end (like a footer).
I am stuck at a crossroad and was wondering if I could get a second pair of eyes to help with a query that I am sending from a Task to a Service to process some data.
I have a Linked Table (view) that points back to a MS SQL View that I am trying to query. However, my execution keeps either failing or not returning any rows. When I take the SQL Query and execute it within the Management Portal I get results, however Cache is not seeing it when trying to execute this code.
When connecting to the database using a client-server architecture, for example using language binding, the machine name of the client can be obtained using the following code:
set client=##CLASS(%SYS.ProcessQuery).Open("P"_$j).ClientNodeName