Mirror Your Database Across the Galaxy with Seeding

Hello cpf fans! This distraction I used the "seed" capability in IRIS to provision an entire IrisCluster mirror, 4 maps wide with compute starting from an IRIS.DAT in a galaxy far far away. This is pretty powerful if you have had a great deal of success with a solution running on a monolithic implementation and want it to scale to the outer rim with Kubernetes and the InterSystems Kubernetes Operator. Even though my midichlorian count is admittely low, I have seen some hardcore CACHE hackers shovel around DATS, compact and shrink and update their ZROUTINES, so this same approach could also be helpful shrinking and securing your containerized workload too. If you squint and feel all living things around you, you can see a glimpse of in place (logical) mirroring in the future as a function of the operator and a migration path to a fully operational mirrored Death Star as the workload matures.


0 0
0 5
InterSystems Developer Community is a community of 24,969 amazing developers
We're a place where InterSystems IRIS programmers learn and share, stay up-to-date, grow together and have fun!

High-Performance Message Searching in Health Connect

The Problem

Have you ever tried to do a search in Message Viewer on a busy interface and had the query time out? This can become quite a problem as the amount of data increases. For context, the instance of Health Connect I am working with does roughly 155 million Message Headers per day with 21 day message retention. To try and help with search performance, we extended the built-in SearchTable with commonly used fields in hopes that indexing these fields would result in faster query times. Despite this, we still couldn't get some of these queries to finish at all.

17 1
6 160

Motivation

I didn't know about ObjectScript until I started my new job. Objectscript isn't actually a young programming language. Compared to C++, Java and Python, the community isn't as active, but we're keen to make this place more vibrant, aren't we?

I've noticed that some of my colleagues are finding it tricky to get their heads around the class relationships in these huge projects. There aren't any easy-to-use modern class diagram tool for ObjectScript.

Related Work

I have tried relavant works:

13 10
4 413
Article
· May 1, 2020 1m read
Code sample to concatenate JSON arrays

ObjectScript doesn't include any built-in method for appending one JSON dynamic array to another. Here's a code snippet I use that's equivalent to the JavaScript concat() method.

Call it with any number of arguments to concatenate them into a new array. If an argument is a dynamic array, its elements will be added. Otherwise the argument itself will be added.

7 3
3 885

When we create a FHIR repository in IRIS, we have an endpoint to access information, create new resources, etc. But there are some resources in FHIR that probably we wont have in our repository, for example, Binary resource (this resource returns a document, like PDF for example).

I have created an example that when a Binary resource is requested, FHIR endpoint returns a response, like it exists in the repository.

25 6
6 275

Over time, while I was working with Interoperability on the IRIS Data Platform, I developed rules for organizing a project code into packages and classes. That is what is called a Naming Convention, usually. In this topic, I want to organize and share these rules. I hope it can be helpful for somebody.

4 4
2 59

Only method/routine executed as "do Method..." is included into $ESTACK.
How can I modify a method or routine that returns a value so it can be included in $ESTACK?
Example upon executing via Studio Debug ($ESTACK is converted to string with ">" delimiter):
Expected: stackstr = %Debugger.System.DebugStub > LogGenerate > Entry > DirChain > Attributes > LogNew > LogSize > LogFormat > LogWrite
Processes DirChain, LogNew, LogSize, LogFormat are executed as "If Method..."

0 1
0 13

Hey Community,

Enjoy the new video on InterSystems Developers YouTube:

Analytics and AI with InterSystems IRIS - From Zero to Hero @ Ready 2025

https://www.youtube.com/embed/-oswnejrNSA?si=4vC-wkrPaoZIm-1i
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

1 0
0 11

This year, our InterSystems Developer Community turns 10 years old — and we’re inviting YOU to take part in the celebration!

We’re creating a special community video filled with greetings and memories from members worldwide. Want to join in? It’s simple:

▶️ Record a short clip (1-2 mins) where you:

  • Share a favorite highlight or memorable moment from your time in the Developer Community
  • Send your congratulations on the 10th anniversary 🎊

We’ll combine the contributions into one big celebratory video for everyone to enjoy! 🎬✨

👉 Click here to record your video

11 20
1 343

Hi Community!

We’re excited to announce a brand-new sweepstakes. This time, the theme is:

💡 Initial Developer Experience 💡

We want to hear your thoughts on how we can make the very first steps with InterSystems technologies smoother, clearer, and more inspiring. Whether it’s documentation, onboarding, setup, or tutorials, your ideas can make a real difference!

5 3
1 185

When using standard SQL or the object layer in InterSystems IRIS, metadata consistency is usually maintained through built-in validation and type enforcement. However, legacy systems that bypass these layers—directly accessing globals—can introduce subtle and serious inconsistencies.

1 1
0 127

Hey Community!

We're happy to share a new video from our InterSystems Developers YouTube:

Source Control Interoperability Productions in a Decomposed Format @ Ready 2025

https://www.youtube.com/embed/7SF9kntjQmM
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

0 0
0 15

Hi everyone,

I'm dealing with a situation where LOAD DATA operations — especially large batches with data inconsistencies — are consuming a lot of disk space. I've noticed that the same error messages are being repeatedly logged in the %SQL_Diag.Result and %SQL_Diag.Message tables, which is significantly increasing the size of the database.

One idea was to move these diagnostic tables to a separate database with a configured size limit, but before going down that path, I'd like to ask:

1 3
0 45

Hi Community,

Please welcome @Henry Pereira as our new Moderator in the Developer Community Team! 🎉

As an active member, Henry has consistently shared valuable insights, supported fellow developers, and driven meaningful discussions across the Community. His deep expertise and collaborative spirit make him a perfect fit to help guide and grow our Developer Community.

Let's greet Henry with a round of applause and look at his bio!

18 6
0 119

Environment:
Targeted *.inc file (with hundreds of defined macros) is in use throughout the application and included into every class declaration.
Statement "set a = $$$TestIf(3)" is included into a classmethod with no other code in. Expected output 5
Same macro options in *.inc:
#define TestIf(%arr) if %arr>0 QUIT 5
#define TestIf(%arr) if (%arr>0) {QUIT 5}
Issue:
failure to compile class with the same error on all tried definition options as:

0 13
0 109
Article
· Feb 14 5m read
HTTP and HTTPS with REST API

HTTP and HTTPS with REST API

Hello

The HTTP protocol allows you to obtain resources, such as HTML documents. It is the basis of any data exchange on the Web and a client-server protocol, meaning that requests are initiated by the recipient, usually a Web browser.

REST APIs take advantage of this protocol to exchange messages between client and server. This makes REST APIs fast, lightweight, and flexible. REST APIs use the HTTP verbs GET, POST, PUT, DELETE, and others to indicate the actions they want to perform.

When we make a call to a RESt API, what actually happens is an HTTP call. The API receives this call and according to the requested verb and path, the API performs the desired action. In the case of the Iris implementation we can see this clearly in the URLMap definition area:

12 1
3 364

Hi,

I'd like to report a really strange behavior of the Intersystems Lite Terminal after executing a simple ObjectScript instruction.

From the Intersystems Lite terminal, execute the following instructions:

- Set uniqueId = "12345678_1"
- Set uniqueId = $p(uniqueId,"_",1)_"_"_($p(uniqueId,"_",*)+1)
After executing the second instruction, the terminal closes without any error.

0 2
0 31

Introduction

In InterSystems IRIS 2024.3 and subsequent IRIS versions, the AutoML component is now delivered as a separate Python package that is installed after installation. Unfortunately, some recent versions of Python packages that AutoML relies on have introduced incompatibilities, and can cause failures when training models (TRAIN MODEL statement). If you see an error mentioning "TypeError" and the keyword argument "fit_params" or "sklearn_tags", read on for a quick fix.

7 1
0 221