image
Hello to all developers and IRIS users.
I am submitting to the competition a project for an alternative IRIS management portal that I have long wanted to create. The project was implemented on the Django framework and the intersystems_irispython-3.2.0-py3-none-any.whl library using native IRIS. The Django project is integrated with the telegram messenger and can be launched from a docker container or directly.

2 1
1 194

What is the point of having a dedicated registry if it does not work properly most of the time?

$ docker pull containers.intersystems.com/intersystems/iris-community:latest-em
latest-em: Pulling from intersystems/iris-community
5526e9f3d5c5: Already exists
352b407541ae: Already exists
f6bff04f5338: Already exists
8c3b528467ff: Downloading [=======================>                           ]  125.8MB/262.2MB
e2b23b0bff05: Downloading [=============>                                     ]  124.8MB/462.1MB
failed to copy: httpReadSeeker: failed open: could not fetch content descriptor sha256:8c3b528467ff8cc07d86a4979e3e7b8fd36734205539923c8750e1d523f23367 (application/vnd.docker.image.rootfs.diff.tar.gzip) from remote: not found

0 2
0 211

Is there any solution to how to purge the usage of the connection in Community Edition?

I have a working portal, where can't do even any simple SQL Query

Why? Because somehow I've exceeded a license limit (pardon, connection limit, when it comes to Community Editon)

So, this page shows, 8 users ate all connections

0 5
0 208

By default, all files created inside a container are stored on a writable container layer. This means that:

  • The data doesn't persist when that container no longer exists, and it can be difficult to get the data out of the container if another process needs it.
  • A container's writable layer is tightly coupled to the host machine where the container is running. You can't easily move the data somewhere else.
4 2
3 172

Hey Community,

Play the new video on InterSystems Developers YouTube:

Unleashing the Power of Machine Learning with InterSystems @ Global Summit 2023

https://www.youtube.com/embed/X5VqUGVFcdM
[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 212
Article
· May 4 3m read
Using VECTORs in ObjectScript

Most examples I've seen so far in OEX or DC left the impression that VECTORs
are just something available with SQL with the 3 Functions especially around VECTOR_Search.
* TO_VECTOR()
* VECTOR_DOT_PRODUCT ()
* VECTOR_COSINE ()

There is a very useful summary hidden in iris-vector-search demo package.
From there you find everything you need over several links and corners.

6 1
0 190

Hi, I was wondering if anyone already dealt with this issue:
"System has been suspended for over X seconds, exceeding the maximum duration specified. Allowing system activity to resume. Any ongoing backup has presumably failed. Next InterSystems IRIS backup must be a full one"

our backup system "Commvault" is automatic, how do you tell it once you get this message that the next backup should be full?

thanks,

Eyal

1 11
0 199

InterSystems FAQ rubric

Data for InterSystems products (table row data, object instance data) is stored in global variables.
The data size of each global can be obtained by clicking the properties of the global you want to view from the Management Portal > System > Configuration > Local Database > Globals page, and then clicking the Calculate Size button on the Global Attributes page that appears.
To display the data sizes of globals in a namespace, you can call ^%GSIZE utility on the terminal.

2 2
0 169

Work Queue Manager (WQM) is a feature of InterSystems IRIS that enables you to improve performance by distributing work to multiple concurrent processes programmatically. The idea is that you split the work into chunks, and WQM distributes the chunks across worker processes and can provide the info that the work is done.

However, recently, I got an interesting question: there's a large logical transaction composed of ~1,000,000 individual objects and SQL inserts and updates. Some updates are CPU-intensive, so the original idea was to use WQM to split an update into chunks to speed things up.

But, here's a catch: if one of the individual 1,000,000 changes fails (there's a variety of application-level checks so that it can fail, and that's not even that abnormal a behavior), the entire transaction must be rolled back. That creates a problem: each chunk must report success before committing their individual transactions, and someone must get all these reports and decide if we are committing or not.

Unfortunately, it looks like WQM does not have a bidirectional communication between workers and manager, so I suggested an approach using events:

  1. Start jobs.
  2. Wait for all jobs to report success using $System.Event.WaitMsg().
  3. Send Commit or Rollback using the $System.Event.Signal().
2 9
1 200

Continuing with the series of articles on voice file management, we are going to see how we can convert text into audio and receive the file with the chosen voice.
We will also explore how a service from OpenAI can help us analyze a text and determine the mood expressed in it.
Let's analyze how you can create your own voice file and how it can “read” your feelings.

2 0
2 208
Article
· Apr 26 3m read
Geo Vector Search #2

Technical surprises using VECTORs
>>> UPDATED

Building my tech. example provided me with a bunch of findings htt I want to share.
The first vectors I touched appeared with text analysis and more than 200 dimensions.
I have to confess that I feel well with Einstein's 4 dimensional world.
7 to 15 dimensions populating the String Theory are somewhat across the border.
But 200 and more is definitely far beyond my mathematical horizon.

1 4
0 127

I'm receiving a JSON payload via a REST API, I'd like to %JSONImport this stream into a class which extends %JSON.Adaptor. The problem is that the JSON is an array whose elements have no key (as you can see in the example JSON below). Right now I'm having to do some manipulations to convert the stream into a dynamic object and do a %Set which inserts a made up key "record" so "thingone" and "thingtwo" have an associated key that I can use when referencing "thingone" and "thingtwo"...such as record.GetAt(1).thingone

0 3
0 204

Hi Community,

Whenever I insert a decimal value with trailing zero(ex:12.0000) value in my JSON object dynamically through %Set method. It truncates the trailing zeros. However If I use literal constructors { } It working as expected. So, In my case the JSON will be generated dynamically. I can't go with "Curly Bracket { } " and the JSON schema not string as well.
Is there any way to fix this?

0 2
0 205
iris-1 | [INFO] Starting InterSystems IRIS instance IRIS...
iris-1 | [INFO] Starting Control Process
iris-1 | Global buffer setting requires attention. Auto-selected 25% of total memory.
iris-1 | Allocated 1508MB shared memory
iris-1 | 953MB global buffers, 95MB routine buffers
iris-1 | This copy of InterSystems IRIS has been licensed for use exclusively by:
iris-1 | ISC RE Build Community Key
iris-1 | Copyright (c) 1986-2024 by InterSystems Corporation
iris-1 | Any other use is a violation of your license agreement
iris-1 | Starting IRIS
0 5
0 201

Hi everyone,

I have a question related to a strange issue I've been experiencing over the last few days.

Context

I'm attempting to create an automatic resending system that, if no reply is received from the server, raises an error and re-sends the message. This process continues for the a duration defined by the FailureTimeout (e.g., 20 seconds), and a new message is being sent every 5 seconds until the FailureTimeout is reached. If no response was obtained from the server, the system returns an error.

0 2
0 204

As noted in the previous article Native API has some limits.
So I did some research on a more Terminal-like interface that
provides me with access like a console or the IRIS terminal
to allow my $QUERY over a global and other nice commands
that are not supported/mapped in NativeAPI for ObjectScript.

The basic tools are well-prepared and available.

0 1
0 186

I'm scraping my way through some code that's been around for a while, and came across the use of $ZTRAP and (dear GOD) GOTO for trapping and handling errors.

In an effort to "modernize" it and make it, I don't know, less M-ish (sorry old-timers!), I'm replacing it with Try/Catch blocks.

Some questions:

  1. Is this a dumb idea?
  2. Anything I should look out for?
  3. Did I hurt anyone's feelings?

And if the answer to number 3 is Yes, my deepest apologies ... I love you guys! 🤩

0 5
0 200

I am currently debugging a piece of code relying heavily on macros. I am using breaks in the method to then check the values of macros and object properties as I go. However, any time I invoke a macro within a break I get an error. To get around this I am converting the macro calls into the underlying code. Some of these macros have messy translations and this is somewhat time consuming. Is there an easier way to access macros from within a break?

0 5
0 200

Currently, the SQL privileges (SELECT, INSERT, UPDATE, DELETE) are managed at the tables level, which can be very tedious when you have to administer many roles in an organization, and need to keep them sync with a constantly evolving data models.
By managing privileges at the schemas level, will allow to give SELECT and other DML privileges to *all* or *several schemas* to a role|user, fixing the need to manually synchronize the new tables|views to the roles.

0 6
0 199