#InterSystems IRIS

19 Followers · 5.7K Posts

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.

Article Beatrice Zorzoli · Sep 10, 2025 4m read

I joined InterSystems less than a year ago. Diving into ObjectScript and IRIS was exciting, but also full of small surprises that tripped me up at the beginning. In this article I collect the most common mistakes I, and many new colleagues, make, explain why they happen, and show concrete examples and practical fixes. My goal is to help other new developers save time and avoid the same bumps in the road.

1. Getting lost among system classes and where to start

The issue: ObjectScript/IRIS ships with many system classes and packages (%Library, %SYS, %Persistent, %SQL, etc.).

12
3 421
Article Ariel Glikman · Sep 16, 2025 14m read

One of the recommendations when deploying InterSystems Technologies for production is to set up High Availability. The recommended API Manager for these InterSystems Technologies is the InterSystems API Manager (IAM). IAM (essentially Kong Gateway) has multiple deployment topologies.

If you are looking for high availability you could use:

a) Kong Traditional Mode: Multiple Node Clusters

b) 

c)

Before we break them down let's first understand the out of the box deployment that is provided by InterSystems: Installing IAM Version 3.10.

Kong Traditional Mode

3
3 308
New
Question Shane M Elliott · Apr 28

I am working on setting up OAUTH with FHIR and Microsoft Entra.  I have configured the Client and configured it in the FHIR Server successfully. However, I get 401 when authenticating with a token.   Looking at ^ISCLOG I see:
^ISCLOG("Data",9,0)="accessToken=<jwt token>, scope=, aud="
^ISCLOG("Data",10)=$lb(3,"OAuth2","[OAuth2.ServerDefinition:ValidateJWT]","171430","%SYS","2026-04-28 17:41:25.305549397","OAuth2.ServerDefinition.1","","zwKKakZZZx2")
^ISCLOG("Data",10,0)="JWT valid? sc=1"
^ISCLOG("Data",11)=$lb(3,"HSFHIRServer","[HS.FHIRServer.

4
0 31
InterSystems Official Aya Heshmat · Mar 27, 2025 4m read

The Interoperability user interface now includes modernized user experiences for the DTL Editor and Production Configuration applications that are available for opt-in in all interoperability products. You can switch between the modernized and standard views. All other Interoperability screens remain in the Standard user interface. Please note that changes are limited to these two applications and we identify below the functionality that is currently available. 

To try out the new screens prior to upgrading, you can download the 2025.

24
4 909
Article Vachan C Rannore · Sep 15, 2025 2m read

Starting out with ObjectScript, it is really exciting, but it can also feel a little unusual if you're used to other languages. Many beginners trip over the same hurdles, so here are a few "gotchas" you'll want to watch out for. (Also few friendly tips to avoid them)


NAMING THINGS RANDOMLY

We have all been guilty of naming something Test1 or MyClass just to move on quickly. But once your project grows, these names become a nightmare. 

➡ Pick clear, consistent names from the start. Think of it as leaving breadcrumbs for your future self and your teammates.


16
2 448
New
InterSystems Official Bob Kuszewski · 23 hr ago

Below is an update to the IRIS release calendar for 2026 and an early look at the planned changes for 2027. The key takeaway for 2026 is that maintenance release numbering will differ slightly from prior years.

2026: IRIS 2026.1 maintenance release numbering

  • July 2026: first maintenance release for IRIS 2026.1 (planned version: 2026.1.4)
  • October 2026: next maintenance release (planned version: 2026.1.5)
  • February 2027: following maintenance release (planned version: 2026.1.6)

This numbering change prepares us for the expanded maintenance cadence planned for 2027.

1
0 62
Contestant
Article David Hockenbroch · Apr 28 2m read

. . . you are not alone. 

Help is available.

This took me a while to figure out, and I assume there may be others struggling too. I made my way through all the Entra stuff to set up a client credentials workflow to send email through a Microsoft 365 account. I was able to successfully retrieve my token, but I couldn't ever get it to authenticate with the SMTP server using the %Net.SMTP class. There were two parts to fixing this.

First, the authenticator's access token needs to be more than JUST the access token. It has to be formatted as:

set smtp.authenticator.AccessToken = "user="_emailaddress_$C(1)_"auth=Bearer "_token_$C(1,1)
2
0 41
Article Ariel Glikman · Mar 11, 2024 3m read

In case you're planning on deploying IRIS For Health, or any of our containerized products, via the IKO on OpenShift, I wanted to share some of the hurdles we had to overcome.

As with any IKO based installation, we first need to deploy the IKO itself. However we were getting this error:

Warning FailedCreate 75s (x16 over 3m59s) replicaset-controller Error creating: pods "intersystems-iris-operator-amd-f6757dcc-" is forbidden: unable to validate against any security context constraint:

proceeded by a list of all the security context constraints (SCCs) it could not validate against.

1
0 446
Contestant
Article Andrew Sklyarov · Apr 23 4m read

Hey Community, 

Yeah, I know we have a lot of tips & tricks articles - we even have a special tag for it, right? But I can not share my own collection. In this collection, you can find snippets for beginners, as well as some everyday ObjectScript constructions. In fact, it's also a way to learn something new about my favorite programming language. So, if you guys have anything to add, you are welcome!

8
8 178
Question Luis Gallardo · Mar 24

Hi!
We are deploying the iris image in a Kubernetes environment and the cluster state is "Hung" , looking the alerts endpoint we get 2 alerts:

[
  {
     "time":"2026-03-24T13:45:44.548Z",
     "severity":"2",
     "message":"System appears to have failed over from node a69a9f137593"
  },
  {
     "time":"2026-03-24T13:46:30.274Z",
     "severity":"2",
     "message":"Error: <PROTECT>KillAlive+1^%SYS.CDIRECT in SERVERS"
  }
]
Any idea / help where those are comming from and how to address them?

2
0 61
Article Robert Cemper · Sep 4, 2025 3m read

The article was motivated by the 2025 September Article Bounty

The principle of Docker is just convincing to me.

  • Get a sandbox where you play and try whatever you want/need to do
  • Once done. You drop it without leaving traces in your working environment

This was the technical base for me to run about 700 reviews in OEX 
with almost no side effects  (except those caused by myself).

For beginners, I'll start with straight pure IRIS, no *health, *ML, *whatever

First, you need a Docker installation. It's available on almost any platform.

4
9 411
Article Murray Oldfield · Aug 26, 2025 6m read

I am regularly contacted by customers about memory sizing when they get alerts that free memory is below a threshold, or they observe that free memory has dropped suddenly. Is there a problem? Will their application stop working because it has run out of memory for running system and application processes? Nearly always, the answer is no, there is nothing to worry about. But that simple answer is usually not enough. What's going on?

Consider the chart below. It is showing the output of the free metric in vmstat

3
12 450
New
Announcement Olga Zavrazhnova · Apr 24

Hi Community, 

If you’re new to InterSystems, check out the InterSystems Developer Hub.

Start working with InterSystems technologies — install InterSystems IRIS, connect to it, run something real, or try products directly in a browser-based interactive environment (no setup required).

If you’re wondering where to begin, here’s what you’ll find there:

Developer Onboarding Guide — a structured walkthrough of what InterSystems IRIS is and how to set it up

Quickstarts — short, practical guides to get you from zero to a working setup:

0
1 42
InterSystems Official Daniel Palevski · Mar 25

The 2026.1 release of InterSystems IRIS® data platform, InterSystems IRIS® for Health, and InterSystems Health Connect™ is now Generally Available (GA). This is an Extended Maintenance (EM) release.

3
0 174
New
Article Kristina Lauer · Apr 23 2m read

Hi Community,

Take a look at these new videos in online learning, and get familiar with new features and interfaces in the latest release of InterSystems® products. All videos are also available in the Learning Services YouTube channel.

Plus, check out a video for new ObjectScript developers, and a guide for HealthShare® users upgrading their deployments.

Videos for the Latest Release of InterSystems Products

  • Goal: Learn about enhancements to the interoperability UI in version 2026.1 of InterSystems products.
0
1 36
Article Hannah Sullivan · Jan 23 3m read

We were testing upgrades on our internal systems recently, and were initially surprised to see a change in some instances of SQL behavior. On further investigation, the changes make a lot of sense, and are easy to adapt to. But, to hopefully save you some time and provide additional information in case this is something you too find curious or interesting, we thought we would share our understanding of the changes and how we got around it to preserve previous behavior where desired.

Starting in IRIS version 2024.2.

0
0 28
New
Article Barry Meyer · Apr 23 3m read

Senior engineering is defined not by the volume of code produced, but by the strategic avoidance of it. In complex integration environments, the tendency to utilize general-purpose libraries for every niche requirement introduces unnecessary overhead. True architectural maturity requires a commitment to "minimalist tooling"—prioritizing resilient, battle-tested system utilities over custom logic. This assessment examines our PGP encryption/decryption pipeline to demonstrate how shifting from application-level libraries to OS-native delegation enhances system durability.

0
0 32
New
Question Scott Roth · Apr 23

Was wondering if anyone had a Dynamic way to see if a Global is still being used by a Class File. 

We have been monitoring our Global Size recently, and I am trying to find problematic Class files that are not being cleaned up or used appropriately. I have come across some globals that do not seem to have a Class attached to them anymore, and instead of deleting globals 1 by 1, I was looking for a way that we could dynamically do this since the globals have data that is stale in them.

Thanks

Scott

6
0 54
New
Article Gabriel Ing · Apr 23 2m read

Today I have published a new Open Exchange package for generation of Synthetic Data directly into IRIS.

 It can be a frustrating process to find decent datasets when you are looking to make a demo app. Maybe the dataset doesn't matter that much, but you still want it to appear somewhat genuine and with several linked tables that are usable directly within IRIS with the neat implicit joins with ->. Maybe you just want linked tables that are easily installable with IPM to benchmark queries, this dataset generation would be perfect.

0
1 45
New
Article Ben Schlanger · Apr 22 27m read

Table Partitioning Demo

This demo walks you through the new Table Partitioning feature in IRIS SQL, explaining what it does and how it works along the way. We'll only use a few dozen rows to prove the concept, but obviously the capability is focused on datasets many orders of magnitude larger.

If you'd like a shorter, higher-level introduction to Table Partitioning, check out the online learning module Managing Tables with Partitioning in InterSystems IRIS

 

ℹ️ Table Partitioning is included in IRIS 2026.1 as an experimental feature

1
0 49
Contestant
Article Zhong Li · Apr 22 12m read

In last post I talked about iris-copilot, an apparent vision that in near future any human language is a programming language for any machines, systems or products. Its agent runners were actually using such so-called 3rd generation of agents. I want to keep/share a detailed note on what it is, for my own convenience as well. It was mentioned a lot times in recent conversations that I was in, so probably worth a note.

0
2 110
Announcement KC Lu · Mar 16

Since our previous announcement, we have introduced several incremental improvements to the client‑side editing experience in VS Code. These updates focus on preserving developer‑authored formatting when synchronizing with the server.

What Changed

Client‑side *.cls files previously lost certain formatting details during compilation, including keyword casing (e.g., classmethod → ClassMethod), normalization of blank lines between class members, and removal of line breaks within parameter lists.

6
1 181
New
Announcement Laurel James (GJS) · Apr 21

The George James Software team is looking forward to going to National Harbor for READY 2026!

As part of the conference, we'll be hosting our Deltanji Source Control User Group:

Date: Wednesday, April 29th 
Time: 8 - 9am (breakfast will be provided) 
Location: Azalea 1 
RSVP by emailing laurelj@georgejames.com

We'll be showing what will be included in the next release of Deltanji, version 8.2, as well as providing an opportunity for questions and discussion. We welcome both current and prospective users to join us.

0
0 24