Syndicate content 0  

Trying to make some scripts to do some IRIS initialization during startup, I noticed that iris start and particularly stop takes too much time, and it starts to many processes in the background.

nostu is mostly useless for system initialization but could help in some scenarios, such as setup passwords, but it is still too slow

irisowner@4ea1bfb50b7f:~$ time iris start iris nostu
Starting IRIS
Using 'iris.cpf' configuration file

Starting Control Process
Global buffer setting requires attention.  Auto-selected 25% of total memory.
Allocated 7417MB shared memory
6002MB global buffers, 600MB routine buffers
Creating a WIJ file to hold 99 megabytes of data
InterSystems IRIS is started in single user mode.
To log into InterSystems IRIS, type:
    iris session IRIS -B

real    0m0.513s
user    0m0.090s
sys     0m0.207s

For instance, I have no idea why it starts so many AUX processes, even during NOSTU. With a normal start with no extra volumes attached, just plain start, I see no reasons to have so many AUX processes as well.

2011 pts/0    S      0:00 /usr/irissys/bin/irisdb -s/usr/irissys/mgr/ -w/usr/irissys/mgr/ -cc -B -Enostu -C/usr/irissys/iris.cpf*IRIS
 2052 pts/0    S      0:00 /usr/irissys/bin/irisdb WD                                                                                 
 2053 pts/0    S      0:00 /usr/irissys/bin/irisdb GC                                                                                 
 2054 pts/0    S      0:00 /usr/irissys/bin/irisdb JD                                                                                 
 2055 pts/0    S      0:00 /usr/irissys/bin/irisdb AUX2                                                                               
 2056 pts/0    S      0:00 /usr/irissys/bin/irisdb AUX1                                                                               
 2057 pts/0    S      0:00 /usr/irissys/bin/irisdb AUX5                                                                               
 2058 pts/0    S      0:00 /usr/irissys/bin/irisdb AUX7                                                                               
 2059 pts/0    S      0:00 /usr/irissys/bin/irisdb AUX4                                                                               
 2060 pts/0    S      0:00 /usr/irissys/bin/irisdb AUX3                                                                               
 2061 pts/0    S      0:00 /usr/irissys/bin/irisdb AUX6                                                                               
 2062 pts/0    S      0:00 /usr/irissys/bin/irisdb DBXD

1 0
1 609

I am demonstrating a use case of how we can create an IRIS Interoperability Production for special use in an external language. InterSystems IRIS, within Interoperability has a framework called Production Extension (PEX), using which we can create productions and program them as per their purpose using external languages like Java, Python etc, and also develop custom inbound and outbound adapters to communicate with other applications.

6 5
0 509

Hi Friends ,

We have requirement to convert source hl7 message to target json message using dtl.

Currently I have created persistent cls for json and completed the dtl.

DTL giving output as json equivalent xml.

Now how to convert DTL result xml object to json?

2 1
0 608
Discussion
· Jan 10, 2021
Code Golf: Diamonds
To start the year let's have a round of CodeGolf!

You know the drill. Shortest solution wins.

Print a size ascending range of Diamonds using the numbers 1 to 9, ranging from size 1 to size N, each diamond separated by a blank line.

A size 1 diamond should look like this, a single centered 1:

         1

With the size N=9 diamond looking like this:

2 19
0 590

Hi all,

Does anyone knows if there is a limit per second adding messages to an Ensemble queue? I have a Business Service working and sending async requests to a Business Process, but I can't reach no more than 60-70 messages queued per second.

I've done several tests and same behavior seems to happen with all our productions. So I was wondering if there is a parameter anywhere to maximize the number of requests that can be send to a queue per second.

0 4
0 605
Question
· Sep 14, 2018
REST POST 405 error

I'm testing out the new %CSP.REST way of creating an api and having a problem with a POST getting a 405 error.

I get data returned when I do a GET, so I don't think it's a configuration issue or a class issue.

I have no problem with %CSP.Page when creating a REST type method. So what am I missing?

Can someone give me some advice?

Thank you.

0 8
0 601
Question
· Nov 9, 2017
Detecting and managing failover

I have Ensemble/Healthshare running in a production environment which is setup with a mirror failover and an arbiter sitting between them.

In the event of a failover we have a number of connections that need stopping/monitoring and starting in a certain order.

Is there a programmatic way we can detect the failover and stop certain services and operations immediately and then start them up again in the required order, checking their connection state before starting the next connection.

0 2
0 607
Question
· Jun 14, 2017
Linux Server or Windows Server

We are in the process of using Ensemble for HL7 translations, and wanted to know is it better to use it on Linux Server or Windows Server? We are mostly a Windows shop but just wanted to make sure there is nothing we will be missing out using the Windows application.

0 3
0 606
Question
· Mar 3, 2017
Studio Keyboard Functions

So I finally decided to try out Atelier after having used Studio for who knows how many years. I primarily edit int files directly and am used to all the keyboard shortcuts in Studio. I was fiddling with the preferences under keys but have not got Atelier to behave very well for:

F2 = Jump to next bookmark

<Ctrl><F2> = Toggle bookmark

<F3> = Find Next, <shift><F3> = Find Previous

I can't find any equivalent to F12 to open the currently highlighted routine and jump to that entry point.

1 2
0 607

version cache for windows, 2017.2.1 build 801_3 - windows 10

I had this system set up for 3+ years now, and background tasks such as converting emails, have always worked, suddenly it's stopped working and I've tracked it down to any network references.

reading the emails, I look for any attachment files, and save them to a network drive before processing them within a class method,

I've been testing it by sending exactly the same email repeatedly and checking the saving of the attached file in both the background and in the terminal.

0 11
0 597
Article
· Jun 18, 2020 1m read
Debugging Business Operations

Often we need to debug a Business Operation. Tracing and logging work but sometimes you want to work with a BO as with your local terminal session.

Here's how you can do that on any operating system.

Windows has a great tool for debugging Business Operations - Foreground mode. In that mode Windows launches a local terminal with operation job.

2 0
2 608
Article
· Jun 29, 2023 3m read
IRIS Api Tester

Hello Community!!

I just upload my lastest application "IRIS Api Tester" to the Open Exchange.

It's a docker project with InterSystems IRIS + Newman that will allow you to test your Postman Collections in a quick and easy way..

It's ready to work out of the box, you just have to clone the repo: https://github.com/daniel-aguilar-garcia/irisapitester

Run the docker-compose file:

2 1
1 587

In previous versions of cache I used to be able to write click on a class and get a delete class option but in this version I can not find the delete class option was wondering if there is another way to delete a class if you wanted to do some house keeping.

N.B. These are the classes I create not the ones that comes with cache.

0 1
0 606

Hello community,

I'm new to Objectscript and Intersystems development. I've read documentation and some examples and succeded to import my Java class file into HealthShare using the Java Gateway Service. To import my class i tryed both methods (Wizard, or scripting) with success.

Everything works great, i see my imported class inside the namespace, and i can call the methods.

0 6
0 601

Hi Developers!

Often when we install a code package we want to make some post-install settings, e.g. call to a method, set up a configuration file.

This article describes how to do this with the ObjectScript Package Manager.

To make any post-install calls you need to add <Invoke> elements into <Invokes> tag to the module.xml. Each <Invoke> element can have nested <Arg> elements if you want to pass params to the method:

2 0
1 607