We're encountering occasional deadlocks in a mirrored IRIS deployment. How can we track down which global or object write caused the lock cycle, and how does IRIS mirror lock propagation internally?
We want to iterate over large global structures in real-time without blocking or locking readers. How can we safely use $Order() and implement a lock-free analytics approach?
We need to authenticate users via Azure AD or Okta. What are the best practices to implement federated authentication using OAuth2/OIDC or SAML in IRIS Management Portal or custom web apps?
We are using IRIS with a sharded architecture. Complex SQL queries (with joins, aggregates, and subqueries) are performing slowly. How can I design queries or indexes to optimize distributed execution across shards?
We use Apache Flink for complex event processing. Is there a way to integrate IRIS (as a source/sink) with Flink’s streaming API, possibly using the IRIS Native API or JDBC?
I am documenting a demo of InterSystems IRIS featuring Embedded Python and Jupyter Notebook deployed on the same container, and an Embedded Python application developed on that Jupyter Notebook IDE.
For space optimization, we want to apply a domain-specific compression algorithm to binary stream data before writing to %Stream.GlobalBinary. Is it possible to override or extend stream classes to include compression/decompression?
Hi
How can I set a default value in a dataCombo?
I tried
ClientMethod onloadHandler() [ Language = javascript ]
{
zenPage.getComponentById('mycombo').setProperty('selectedIndex',0);
//zenSetProp('mycombo','selectedIndex',0);
}
and didn't work, I can not use the value property because I don't know what the values in my combo are going to because they loaded OnCreateResultSet, I'm only looking to make always the first value selected by default
Thanks
Can someone help me understand what type of user error (?) is going on here please?
One one system, I write out a group of $c() values and get the expected results:
USER>for i=250:1:260 { write i," ", $c(i),! }
250 ú
251 û
252 ü
253 ý
254 þ
255 ÿ
256 Ā
257 ā
258 Ă
259 ă
260 Ą
USER>w $zv
IRIS for Windows (x86-64) 2023.1.4 (Build 580U) Fri Apr 19 2024 11:16:07 EDT
USER>On another system, I get some unexpected results:
The Istio Service Mesh is commonly used to monitor communication between services in applications. The "battle-tested" sidecar mode is its most common implementation. It will add a sidecar container to each pod you have in your namespace that has Istio sidecar injection enabled.
It's quite easy to get started with, just put the istioctl executable in your PATH, and label your namespace such that it tells Istio to acitvate side car injection there.
Hi, Community!
What did you enjoy most about being a Subject Matter Expert?
Many thanks to our SMEs for sharing their experiences—including @Brendan Bannon, @Lori Fassman, @Attila Toth, and @Stephen.Canzano.
What about you?
- If you're already a SME, what did you gain from the experience?
- What questions do you have about the process?
As always, reach out to certification@intersystems.com if you'd like to learn more.
Hi Community,
Are you a Python developer? If so, you can already start building apps with InterSystems IRIS without learning a new programming language!
👨💻Try this exercise to get started quickly with using Python's familiar DB-API interface to connect to an InterSystems IRIS database and run SQL queries.
💬What was your experience with the exercise? Let me know in the comments!
Target Practice for IrisClusters with KWOK
KWOK, Kubernetes WithOut Kubelet, is a lightweight tool that simulates nodes and pods—without running real workloads—so you can quickly test and scale IrisCluster behavior, scheduling, and zone assignment. For those of you wondering what value is in this without the IRIS workload, you will quickly realize it when you play with your Desk Toys awaiting nodes and pods to come up or get the bill for provisioning expensive disk behind the pvc's for no other reason than just to validate your topology.
Hi:
I see a lot of cool REST apps and i'm trying to host something in the TIE using REST/Axios with VITE.
At the moment i will probably host the application in web applications in Intersytems.
For authorisation and getting the logged in user and password to any app, is there a standard people are doing?
I.e. for axios you might have this from the app
auth: {
username: apiUser,
password: apiPass
}gj :: configExplorer is a new VS Code extension integrating with Server Manager and leveraging Structurizr to produce configuration diagrams of your servers.
Here's a short introductory video.
By using the InterSystems IRIS Native API for Node.js it avoids the need for any support code to be installed on the servers. This technology choice also qualifies it for entry into the current Developer Community contest.
The initial release focuses on two aspects of server configuration:
- Namespaces and databases
- ECP connectivity
Suggestions for what to add next are welcome, as is general feedback.
I have a class that extends %CSP.REST which made I deployed using $system.OBJ.MakeClassDeployed. After upgrading IRIS, the web app which uses that class no longer works with an ObjectScript error.
In the past, I fixed that problem by adding a dummy new line or a comment then recompiled that class. For this deployed class, I can't add a new line and recompile the class (the code shows up as locked in Studio). Simply running $system.OBJ.compile() is not fixing the web app issue.
Is there a way to edit a deployed class then recompile it?
Hey Community,
Enjoy the new video on InterSystems Developers YouTube:
Hello Community,
When I compile the Sample.User class for the first time, and include an ObjectGenerator method intended to run certain logic during each compilation, it throws a <CLASS DOES NOT EXIST> error. However, recompiling the same class works as expected.
I understand this happens because the class hasn’t been fully compiled yet during the first pass. To overcome this issue, are there any specific callback methods available that can safely be used after the class is fully compiled?
If you have already built unit tests using the %UnitTest framework, or are thinking about doing so, please take a look at InterSystems Testing Manager.
Without leaving VS Code you can now browse your unit tests, run or debug them, and view previous run results.
Summer is coming to an end, and we’re sure you had plenty of highlights! ✨
Maybe you learned something valuable, got yourself a reward on Global Masters, or even joined READY 2025 🎉
Here’s a quick checklist — but you can, of course, share anything else about your summer in the comments. Photos are more than welcome 📸
- Went to the sea or a lake
- Hiked/enjoyed nature
- Traveled somewhere new
- Attended a concert or festival
- Watched a movie or series
- Read a book
- Earned points and redeemed a reward on Global Masters 🏆
- Joined READY 2025 🎉
- Spent time with family or friends
Hey Community,
It's time for the new batch of #KeyQuestions from the previous month.
Is there a way to create a table for the results of a SQL statement ?
Example: Consider the below query and results.
Select ID,Name,DOB,Gender from EMS.EMS
RESULT
| ID | NAME | DOB | Gender |
|---|---|---|---|
| 1 | Wijnschenk,Greta N. | 03/09/2009 | F |
| 2 | Klausner,Barbara L. | 03/08/2014 | M |
| 3 | Eastman,Liza X. | 03/11/2000 | F |
| 4 | O'Brien,Barb K. | 03/07/2016 | M |
| 5 | Anderson,Nataliya Y. | 03/14/1991 | F |
| 6 | Long,Debby Z. | 03/12/1999 | F |
| 7 | Rogers,Susan W. | 03/12/1997 | F |
| 8 | Ott,Lola J. | 03/09/2009 | F |
| 9 | Yu,Alice S. | 03/14/1990 | M |
| 10 | Wilson,Debby I. | 03/12/1998 | M |
I'm trying to make a connection to an external database using %SQLGatewayConnection, but the connection always fails. DSN properly configured. I try to make the same connection through isql in bash, and the connection is successful.
This same connection fails in Caché.
Hi,
I have the following transform working but i also want to add another string of text for it to look for but i'm unsure of how to write this in. The two bits of text are "NOT DECTECTED" and "Negative"
To better understand Streams in IRIS I'll start with a short
History
In the beginning (before IRIS), there was just basic access to external devices.
The 4 commands OPEN, CLOSE, READ, WRITE still work and are documented
by Introduction to I/O in detail.
Especially for files, this is a direct access to your actual file system.
You have to take care of any status or other signal in your code.
Also, any code conversion or similar is up to you.
I need to ingest streaming data over WebSockets. How can I create a custom inbound adapter for IRIS productions that supports many concurrent socket connections?
We want to use IRIS as a backend for a lightweight blockchain or DLT. Can we model blocks using deterministic globals and implement consensus (PBFT, Raft) externally while using IRIS as the ledger?
We’re ingesting high-volume HL7 messages and converting them to FHIR in near-real-time. How do we design a streaming ETL pipeline using interoperability (productions) that scales horizontally?
Hi all,
It's me again 😁. In the pervious article Writing a REST api service for exporting the generated FHIR bundle in JSON, we actually generated a resource DocumentReference, with the content data encoded in Base64
Question!! Is it possible to write a REST service for decoding it? Because I am very curious what is the message data talking about🤔🤔🤔
OK, Let's start!
1. Create a new utility class datagen.utli.decodefhirjson.cls for decoding the data inside the DocumentReference
Class datagen.utli.decodefhirjson Extends%RegisteredObject
{
}I am trying to add Plotly Bar graph in a div to a CSPpage. I am working in IRIS 2022.1. I created persistent class.
I copied relevant code into github repo:
oliverwilms/iris-python-plotly
iris-python-plotly/csp/otwPlotly.csp at master · oliverwilms/iris-python-plotly
Set tPlotlyDiv = ##class(dc.python.test).PlotlyDiv(trnYear,trnMonth)
