Dmitry Maslennikov · Jan 15, 2025 go to post

USER>zw [1,2,3].addAll([4,5,6])
[1,2,3,4,5,6]  ; <DYNAMIC ARRAY>

USER>w $zv
IRIS for UNIX (Ubuntu Server LTS for ARM64 Containers) 2024.1
Dmitry Maslennikov · Dec 17, 2024 go to post

Where do you see the error with ISC.FeatureTracker.SSL.Config? There is nothing in the code example, that would point to using it. Why would you even use it anyway, and the error says, that this config is not enabled, you can check it here

Dmitry Maslennikov · Nov 12, 2024 go to post

Usually build is happening in one thread, and you would not see this error even with unlicensed version

And this error means, that you have multiple processes trying to connect to IRIS during the build

And even using Community Edition may not help, because it has a limit on connections, and you may face the same issue there too.

In some scenarios, it's possible to use multi stage building process, where you can use Community Edition image as a building stage, and target image without starting IRIS or with using only one connection, finish the build.

You can check multi-stage way with Community, or use iris.key during build stage

It depends on how much non-unicode data you have. If it's not much, you can try to use XML way.

Another way, is to use some simple scripts, that order over all globals, and convert in place. Skipping indexes, with full rebuild.

I think there were multiple solutions, to this task. You can try to find them.

You have to collect as much as possible about your data.

  • Code, is it in 8-bit or not, or it's just all in English, some code may contain comments in a native language, and if you don't use git or other source control, you may need to convert too
  • Data, is it some legacy data, or class based. If native, is it delimiter based or same as classes with $listbuild.
    • Two different strategies in this case, data with some plain delimiter can be converted right away, $listbuild based data, would require to go through $listbuild
  • Any additional data. Some legacy applications may store additional information such as TUI/CHUI forms in pseudographics somewhere, you should look after this data as well
  • Any other possible sources 8-bit data
  • Communication, file-processing, can be changed

The last time I implemented a converter for 20+ years old application, more than 15 years ago, it was an application with textual terminal interface, and it went well.

While iris session can’t be created as a job, with inherited security, I’m rely on ability to automatically login to iris session, without entering username and password. And when session is opened I try to use $sysyem.Security.Login without password to user actually logged to iterm, and it may fail and probably will get into black screen 

In my future no one uses windows

But anyway could you check if try’s can work on windows, maybe I can find a way to use it here

That WebSockets terminal would have the same issues as WebTerminal. It uses Xecute, which has many limitations, I use real terminal, which has full control over the execution

Dmitry Maslennikov · Sep 26, 2024 go to post

I tested only with docker images, where we have OS Auth for terminal, which is not friendly in case if you need to pass through this step, maybe this is missing here. I’ll try to check 

You probably using macOS or windows, where Docker has a own limitation of disk. Check Docker desktop settings, and increase the virtual disk limit and restart

And what exactly do you want to test with cucumber?

If you have a web frontend, you can test it already

If you want to test the backend written on ObjectScript, that would need some adoption.

Dmitry Maslennikov · Jul 24, 2024 go to post

What if IRIS could limit itself to the number of limited cores, how easier would it be for newcomers

Dmitry Maslennikov · Jul 11, 2024 go to post

I see that the best solution would be if InterSystems would make this package available as an open source, with an option to upgrade any existing instance with the open-source version by using IPM for instance

In this case, any team that keeps using ZEN may provide their thoughts on how the modern ZEN should look in the form of PullRequests. There would be a place to post bugs and feature requests, which some community members may help to solve for everyone.

Dmitry Maslennikov · Jul 10, 2024 go to post

ObjectScript does not support undescore sign in the names, and requires using double quotes to override this

$$$ThrowOnError(mymodule."validate_header"())

instead of using nc, which will not be able to send a full header, you could use my tool iscctl, which will connect, only if the server is available, and it will be logged in correctly. let me know if you would need some updates in the tool

Dmitry Maslennikov · May 28, 2024 go to post

Metabase offers a way to write your own driver to any database, that supports jdbc

So, with some knowledge in Clojure, it's possible to connect it directly to Caché or IRIS

You can do it by yourself, or I can do it for you.

Dmitry Maslennikov · Apr 28, 2024 go to post

That's not a schema, this part is database
and IRIS does not support switching databases or schemas during connection

Dmitry Maslennikov · Apr 15, 2024 go to post

With these changes, to have just latest, latest-preview, it's hard to get how old the the image on InterSystems Containers Registry

It would be nice to see the date of the image is uploaded and have somewhere sorting by date

Yep, that works, thanks, pity that it was not implemented in Compress method, but at least something

The way to remove the wrapper from the Compress method, did not help. It's still not recognizable. 

Only file way, and removing the first 11 bytes of GZIP header worked for me.

But I suppose, it's just luck. With different data and size of that data, it may not work.

Dmitry Maslennikov · Mar 19, 2024 go to post

CloudSQL for quite some time switched to using only SSL encrypted connection, can you expand your article on how to use SSL Certificate to be able to connect?

Dmitry Maslennikov · Mar 19, 2024 go to post

It should be available through channels expected by any Java developer in the world, through the public Maven repository, other than that makes no sense and causes a lot of pain to the developers.