Clear filter
Question
Mark Dashwood · Feb 10, 2023
Hi
I am upgrading our application from dotNet Framework to dotNet Core.
Prior to the upgrade I was able to connect to both my Cache & IRIS instances using the IRIS ADO.NET driver.
However, in dotNet Core, whilst I can connect to IRIS, I get the following error connecting to Cache.
InterSystems IRIS Provider is not compatible with Cache xDBC server
I am using the IRIS driver from the Windows (x86-64) 2022.1 distribution (the one in dev\dotnet\bin\net5.0).
The cache version is Cache for Windows (x86-64) 2018.1.2
Thanks I am getting this error for .NET Framework as well. Do you know what could be the reason? Cache is quite old, and obviously, it may be incompatible with IRIS.
So, you would need to use separate drivers for Cache and IRIS. I can connect to the Cache version given in my post using the .Net Framework IRIS driver (InterSystems.Data.IRISClient.dll) version 2018.2.0.415, which is what we used pre-netCore upgrade. There is some level of backward-compatibility as I can connect to both Cache & IRIS using the single dotnet framework IRIS driver.
What is not clear is what is supported in different versions of the driver.
Article
Fadi Karkaby · Dec 13, 2022
In this article, we'd like to describe Med.me's incubation experience and takeaways, the cross-organizational booking problem, and our approach to solving it.
This exciting story started during one of the regular medtech meetups, where I met @Evgeny.Shvarov, senior InterSystems chief of the Developer Community. Following the good old startup rule “pitch wherever you can”, I briefly explained to Evgeny Med.me concept – EHR exchange and appointment scheduling platform to automate and simplify communication between clinics, pharma on one hand and insurance companies, doctors, and patients on the other.
Evgeny listened carefully and replied that InterSystems provides plenty of products to solve the interoperability problems amongst the vast variety of EMRs and kindly advised me to hurry up to apply to the FHIR incubator Caelestinus powered by InterSystems.
That led to a start of an amazing 9-months long road where we were able to ramp up our understanding of interoperability, participate at the InterSystems Global Summit, find new customers and partners, and where the new concept of Resource Availability Exchange was born.
Glossary:
HIE – Health Information Exchange system
EHR – Electronic health records
EMR – Electronic medical records management system
FHIR – Fast Healthcare Interoperability Resources (the standard that defines how healthcare information can be exchanged between different information systems regardless of the internal data representation)
InterSystems Global Summit
This is a huge conference for InterSystems customers and partners, current and future. There were a lot of technical sessions and panels, a huge networking of development teams, medical organizations, and medtech companies. But our main goal was to validate hypotheses discovered during the incubation, to find the first market proofs. And we were lucky enough – almost every potential customer said that cross-organization booking is still an unaddressed problem. Anatoly Postilnik, the Head of Healthcare at First Line Software, one of the major InterSystems Solution Partners, proposed to define the solution as the real-time resource availability exchange that extends the InterSystems’ HealthShare Health Information Exchange ecosystem.
Cross organization booking problem
Imagine yourself booking a hotel by phone or buying an airline ticket by cash in a travel agency. Sounds weird, isn’t it? The problem was solved many years ago by GDS – global distribution systems. Amadeus empowers hundreds if not thousands of websites and apps to search, compare and book flights and hotels. Working behind the scenes, it seamlessly integrates all the travel industry players into one digital circuit.
But why do patients still often set medical appointments by phone or send a guarantee letter by fax? Well, it seems that such Amadeus for the medical industry shall be invented. But 2 reasons are making it difficult: the strict regulations on medical and personal data and the vast variety of EMR on the other hand do not allow easy integrations to consolidate the data into one centralized DB.
InterSystems perfectly covers all the aspects regarding the interoperability, different standards and integrations issues for EHR, while Med.me fills the gap by adding the final piece of the puzzle – the cross-organizational availability and booking engine.
Resource availability exchange concept by Med.me
Finally, we at Med.me decided to adopt InterSystems Iris for Health™ and Healthshare ® for EMR interoperability and exchange, empowered by Med.me proprietary booking engine technologies.
The vast majority of existing booking integration engines work in a standard way where they just retrieve availability data (say, doctors, cabinets, and other resources like MRIs) once upon a time, say every 15 minutes. That allows to get more or less actual schedule of one stand-alone clinic but doesn’t allow real-time booking (can’t ensure that all the slots aren’t taken yet) and, most important, doesn’t allow to combine different schedules of different clinics for cross-organization booking (say, find all gynecologists+ultrasound available at а certain region covered by the insurance plan).
However, says Fadi Karkaby, the CTO of Med.me, CRAC® (calculated results of appointments collections) – one of the key modules, does the job in a more elegant way. Instead of polling all the booking data, it gets only the changed chunks of it in real-time (think of Dropbox). Therefore, it totally reduces the useless requests to local EMR when trying to find a time slot for a doctor, because it already has real-time data, structured and optimized for further processing.
Let’s consider the most complicated case, where EMR doesn’t provide a read API that implements efficient enough methods of resource availability exchange. In this case, Med.me specialists will set up a special replication mechanism of all the essential tables and only them (or documents in a case of non-SQL documentary DB), thus reaching the to get only changed chunks of data in a real-time and not the whole database once upon a time (the right part of the diagram above). Then the “internal leg” of Med.me integration service communicates with Med.me core to build the CRAC® matrix and to allow real-time resource availability exchange.
Market potential
The global Health Information Exchange (HIE) market size is projected to reach USD 22.5B by 2027, from USD 1.1B in 2020, at a CAGR of 10.9% during 2021-2027.
Cross-organizational booking impact:
Allows to target large medical organizations, HMOs, marketplaces (like ZocDoc) and insurance companies
Creates a competitive edge by being the most comprehensive solution (HIE + Resource Availability Exchange + Booking)
Allows new products launch: PRM, telemedicine and others
Increases market potential by hundreds of percent due to new geographic and customer segments
Customer examples:
Regional public health and HMOs
Need to organize nation-wide/region-wide doctors booking
Need to work under complex rules of booking restrictions and availability
Large medical organizations and chains
Use various EMRs and need to allow cross-organizational-booking
Marketplaces
Need simple PRM for small medical offices and integration with EMR with larger organizations
Insurance companies
Need to find “best available” service or doctor by availability, price and geographic location within partner clinic chains
Afterword
Some criticize accelerators and incubators for choosing only startups that in any case have more chances to succeed, a kind of self-fulfilling prophecy. Notwithstanding the above, it’s a great opportunity for startup teams to verify business and technological hypotheses, find first pilots and customers, build the network, and attract investors. It definitely worked for us, though the incubation process is of course time-consuming and requires a lot of resources.
Participation in the Caelestinus FHIR incubator gave us a much better understanding of the modern approach to treat the interoperability problem, an ability to attract first pilots and customer leads in US and Italy, and to secure the first tranche from the strategic investor. What could be better?
About Med.me
Med.me is the Electronic Health Records (EHR) exchange and medical appointment scheduling system to connect clinics, HMOs and insurance companies, patients, doctors, and pharma companies. Med.me allows any medical organization to connect to any number of partners, totally avoiding the need to develop and manually support hundreds of integrations.Launched in East Europe and Israel with customers like Astra Zeneca, Allianz, Sheba Hospital, EMMS Nazareth Hospital, and other large clinics chains, insurance, and pharma companies, accelerated by 500 Startups and backed by top international seed funds and investors from Israel, US and Singapore, Med.me integrates with various EMR systems, creates the interconnected space and offers on top of that:
PRM for clinics to manage patients’ appointments and flow and to optimize clinics resources (services, time schedule, cabinets and much more)
Mobile app for patients that offer online appointment scheduling, integrated EMR and built-in telemedicine solution (online and video-chat with doctors and clinics)
Communication automation module for clinics and insurance companies to replace manual work by the automation of reconciliation acts and expenses reimbursement
Telemedicine module that seamlessly integrates with EMR and allows flawless communication between patient, doctor and hospital.
E-prescription (alpha version) solution to connect clinics and pharmacies.
RWD module (alpha version) to connect pharmaceutical companies to the instant flow of real-world data (RWD) from partner clinics, structured and normalized.
Please reach out to us, we'd love to get connected! 🧡
Question
Daniel Raderstrong · Apr 18, 2024
Hi,
We're getting a string sent to us by a client that was compressed using a java deflater (the zlib algorithm) and when trying to use $System.Util.Decompress() I get an "illegal value" error. I gather from other community posts that this is because the raw compressed string is missing the customized wrapper Iris automatically adds. I know this has been a longstanding issue for a while...just wanted to check if there'd been any updates to this functionality, or successful workarounds for decompressing raw zlib compressed data. Thanks in advance! Please check this previous post:
Deflate compression
If you still have questions, reply here for more details. Hi thanks! In the previous post you said "Unfortunately Decompress() needs the custom wrapper, and I don't know how to make it up" which is what I'd be looking to do. I need to decompress raw contents. So is there a way to add that wrapper? Or some other workaround to to accomplish this? Appreciate the quick reply! If I understand correctly you need to deflate and I suppose you want to add the custom wrapper to use $System.Util.Decompress(), if so...you can't. I mean you can't use $System.Util.Decompress() BUT, you can indeed deflate using I/O as in the example I posted in that post/thread. Here is a sample method to deflate without using file I/O and using XDEV instead.
ClassMethod UnDeflate(Compressed As %String, Output UnDeflated As %String) As %Status
{
Set sc=$$$OK
Try {
; open XDEV device
Set dev="|XDEV|"_+$JOB
Open dev:($ZF(-6,$$$XSLTLibrary,12):/HOSTNAME="XSLT") Use dev
; write compressed string
Write Compressed
; flush buffers
Write *-3
; change device mode to deflate and rewind
Use dev:(:/COMPRESS="DEFLATE":/POSITION=0)
; read uncompressed content
Read UnDeflated
} Catch CatchError {
#dim CatchError as %Exception.SystemException
Set sc=CatchError.AsStatus()
}
Close dev
Quit sc
}
I really wish that InterSystems implement the various compress/deflate/gzip functionality available in device I/O as utility methods. Without silly wrappers! 😉
Another wish, please InterSystems document XDEV device I/O. Thank you! So we already have the deflated data sent to us from a client in an http header - we need to decompress it only (not compress it). It seems like this is not possible, but I appreciate you confirming! We're looking into pulling in a python library for the decompression.
Agreed it would be nice for intersystems to add this for generic zlib compression/decmopression The code I posted does exactly what you need.
You can compress/decompress with deflate or gzip using device I/O. Oh thank you for clarifying! When trying to implement this code we're getting a <WRITE> error at zUnDeflate + 7, the line "Write Compressed" - have you ever experienced that before?
EPTEST>Set comp=$system.Encryption.Base64Decode("y61UKEstqlTIyc9LVyguKcoEUuUZmckZCnmpqSnFCiX5CkmpCimpaTmJJakpAA==")
EPTEST>Set sc=##class(Community.Compress).UnDeflate(comp,.uncomp)
EPTEST>Write uncomp
my very long string which needs to be deflated
Works fine for me Thank you for verifying - when we run it from terminal using the string you provided we get an "End of File" error. Maybe this means our systems our configured differently?
Regardless thank you for the quick responses and information!
Announcement
Shane Nowack · Jun 21, 2021
Hello All,
InterSystems Certification has designed another certification exam and we need input from our community to help validate the exam topics. Here's your chance to have your say in the knowledge, skills, and abilities that a certified InterSystems CCR Technical Implementation Specialist should possess.
Here's the exam title and the definition:
InterSystems CCR Technical Implementation Specialist
A development professional who:
Uses Tier 1 CCRs to document and process change workflow
Makes code changes in their Integrated Development Environment of choice.
Makes changes to interoperability components in the Management Portal.
Transports/Deploys code changes to environments
Recommended Preparation for the exam
Take InterSystems Change Control: Tier 1 Basics training
Read PDFs of selected slide decks
ICC courses applicable: 100, 110, 200, 310, 330, 400, 420, 450, 510, 530, 540
Independently progress at least 20 CCRs and/or approximately 6 months full time usage
So, how can you help? If you have 20-45 minutes to fill out a task survey, you can help us rate each exam topic based on your experience. By completing the survey you will earn one free exam voucher ($150 value) for any InterSystems Certification Exam!
Additional conditions for free exam voucher:
You must fulfill the exam profile listed above
The task survey must be completed by July 6, 2021
The exam voucher must be redeemed by July 1, 2022
Interested? Please contact the Certification Team at certification@intersystems.com.
Thank you!InterSystems Certification Team
Question
Han Ya · Sep 25, 2020
Whenever the Windows SNMP Service restarts, the snmpdbg log says the following.
16:58:25 :Debug tracing enabled for SNMP agent16:58:25 :SnmpExtensionInit called, pid=4432, tid=1227616:58:25 :CreateEvent for CacheSNMPTrap suceeded16:58:25 :register Cache OID 1.3.6.1.4.1.16563.116:58:25 :Get all Cache configs ... 16:58:25 :found 1 configs16:58:25 :Add ENSEMBLE config to list ... 16:58:25 :RegOpenKey for SOFTWARE\InterSystems\Cache\Configurations\ENSEMBLE\Properties16:58:25 :Open config file c:\intersystems\ensemble\cache.cpf16:58:25 :Config port = 1972, SNMP-capable = 116:58:25 : sorted (end) as index[0]16:58:25 :RegOpenKey for mgr dir SOFTWARE\InterSystems\Cache\Configurations\ENSEMBLE\Directory16:58:25 :Open ExtApp file C:\InterSystems\Ensemble\mgr\snmpext.dat16:58:25 :Unable to open ExtApp file C:\InterSystems\Ensemble\mgr\snmpext.dat - error 216:58:25 :Found 1 configs which support SNMP16:58:25 :Config 0, index=8-ENSEMBLE, port=1972, extapp=016:58:25 :No Service Firewall Rules necessary for Version 6.116:58:25 :Attempting initial TCP connection(s) with 1 Cache instances ...16:58:25 :Get connection with ENSEMBLE on port 197216:58:25 :Sending data ... 14 bytes16:58:25 :Sending data ... 20 bytes16:58:25 :Read from TCP port 16:58:25 : 28 bytes read16:58:25 :Error code 267 in RESPONSE-PDU from ENSEMBLE16:58:25 :Error response from Cache instance ENSEMBLE 'requestDenied', make sure $$start^SNMP has been run.16:58:25 :Cache iscsnmp.dll initialized for 1 configs16:58:25 :SnmpExtensionInitEx called, pid=4432, tid=1227616:58:25 :register Ensemble OID 1.3.6.1.4.1.16563.216:58:25 :SnmpExtensionInitEx called, pid=4432, tid=1227616:58:25 :register TrakCare OID 1.3.6.1.4.1.16563.316:58:25 :SnmpExtensionInitEx called, pid=4432, tid=1227616:58:25 :Extension list starts at 0: 0,0,016:58:25 :end of extension list at 10
Hi Han,
Is the problem you are seeing that you can't set up SNMP with Caché? The error you pointed out is most likely Windows error 2 file not found. Does the referenced file exist? Perhaps the permissions are incorrect.
Maybe this error is not the important one, as after that it seems startup continues until we see the following:
16:58:25 :Error response from Cache instance ENSEMBLE 'requestDenied', make sure $$start^SNMP has been run.
Has $$start^SNMP been run? You can find setup/troubleshooting steps in the documentation here:
Monitoring Caché Using SNMP Hi Sun, If you mean "w $$start^SNMP()" then yes,I got some errors as bellow:
I have also uploaded the logs, please help me to have a look.
thanks
The logs.pdf file is a zip file, please modify the suffix to be zip and then unzip.
thanks One set of errors that stood out to me is:
09/25/20-15:45:16:790 (9924) 1 SNMP server failed to start: 0,Error (2) signaling Windows SNMP Service; check Service is installed/started.09/25/20-15:54:17:010 (8972) 1 Error reading from SNMP port, Windows SNMP Service may have terminated connection.
I'd recommend reviewing the documentation I linked for some other suggestions, but I'd start by trying to verify that snmp works at the Windows level, separate from Caché.
Question
Hari Tanguturi · Jun 9, 2022
Good Morning SMEs,
I am a .NET developer and new to using this IRIS Component. We are using InterSystems.Data.Clients ADO.NET component to connection to IRIS, I am able to open the connection but when i called Close, ADO.NET code showing connection is closed state in .NET code but in IRIS side it showing as connection is still open. The will close only after recycling apppool or closing IISExpress/calling application
Here are the steps I used to open the IRIS connection.
IRISADOConnection conn = new IRISADOConnection(connString);IRISReference pError = new IRISReference("");conn.Open();
// create IRIS Native objectIRIS iris = IRIS.CreateIRIS(conn);
string returnValue = iris.ClassMethodString(className, methodName, xml, pError, 1);
iris.Close(); conn.Close();
Even after executing the Close methods, connections are not closing. We are using InterSystems.Data.Clients ADO.NET component.
Could anyone please help me what was the wrong in this code.
Whenever I open a connection, it is opening a TCP connection to IRIS Server and with IRIS/Cache server it is showing open connection from the server/machine it came from.
I really appreciate help on this as we are seeing issue in prod for the connections opened from .NET web applications.
Regards,
Hari Tanguturi
Pooling — Defaults to true. Set Pooling to false to create a connection with no connection pooling.
Set this to false and should resolve your issue.
Question
Iryna Mykhailova · Feb 16, 2016
Recently I came across a very strong statement to the effect that InterSystems.Data.CacheClient.dll library works fast because it does not open a TCP/IP connection, instead it works in the same process as a database. It made me pause for quite some time. Firstly because .Net Managed Provider, which utilises this library, opens TCP/IP connection to the database (and it is stated in the documentation "Using .NET and the ADO.NET Managed Provider with Caché"). And secondly, because as far as I know only eXtreme applications attach themselves to the process. Besides, CacheClient for the most part just implements the functionality of the Caché system and user classes. And in .Net Managed Provider architecture Caché Object Server is responsible for connection to a database.So who is right and who is wrong? Is it correct to state that CacheClient.dll operates in the same process as a database or is it just inapplicable? Will be really grateful for your thoughts and input. To my knowledge it use TCP. In fact we moved away from in memory even for Extreme.. in the end the performance differences were slight. Stefan Wittmann can confirm. The managed provider uses TCP/IP.The confusion probably stems from XEP (eXtreme Event Persistence).XEP for dotNet still has an in-memory and a TCP/IP connection mode. As Bill indicated we are moving away from the in-memory mode, as we are improving the throughput of the TCP/IP mode. We already deprecated the in-memory connection mode for XEP for Java where the performance is already pretty much the same. The in-memory connection mode has two issues as a) crashes on the client can interfere with the server and b) it does not allow the client to run on a different machine, which is a problem for scaling up. Thank you for your answers, guys!Does it mean that by the end of 2016 we will have TCP only in both .Net and Java? Java yes, fuzzy for dotNet. It depends how well we can increase the throughput of the TCP/IP mode there. Any updates for the dotNet status? Docs current version still says "...they use a fast in-memory connection..." and "...must be on the same machine...".Another question: any plans to support Net Core? XEP for .NET does support both in-memory and TCP/IP connections. The client must be on the same machine for in-memory connections but can run remotely for TCP/IP connections. Long-term we will move away from in-process connections, but we haven't taken this step yet for XEP for .NET.We consider support for .NET Core interesting and are currently evaluating support for it. But it is too premature to promise anything yet.
Question
Tim Stowe · Jun 4, 2021
I'm probably missing something really basic here -
I spun up a copy of the Iris community edition AMI.
Added Objectscript extension to vscode
Added objectscript extension pack to vscode
Added server manager to vscode
Connected to iris AWS instance using PuTTY
Changed password
in vscode, I used server tool to add the server
It seems to connect OK; I can see the %SYS and USER namespaces. I clicked the "edit code in namespace" button and created a bit of hello world code. However, when I try to save it, I get "failed to save file 'filename.mac' on the server."I can connect via a browser to the management portal and import a routine that way and it works fine. What gives? When you created the new file in the Explorer tree and named it (for example) foo.mac you should see a new file tab open with a first line like this:
I'm guessing you deleted or replaced that first line. Don't do that. Rather, start coding your routine at line 2. The first line is essential and should not normally be touched.
Article
Ponnumani Gurusamy · Jan 4, 2020
About Intersystem Cache :
Intersystem Cache is a commercial operational database management system from intersystem, used to develop healthcare management, banking and financial, government sectors software applications.
InterSystems Cache is the world’s fastest object database. However, high performance is achieved only for transactional operations that have a significantly hierarchical nature
Cache stores data in multidimensional arrays capable of carrying hierarchically structured data. These are the same “global” data structures used by the MUMPS programming language. Cache is object oriented language, MUMPS is procedural language. All Cache code gets transpiled to MUMPS code (internally) before being compiled.InterSystems like to brand Cache as a post-relational database. In reality, it is:
pre-relational (NOSQL)
relational
and post-relational
Best RealTime Example:
A famous example of Cache’s abilities is the European Space Agency’s decision to use it in one of their missions. ESA’s GAIA observatory is tasked with surveying a billion stars in our galaxy, generating an astronomical amount of data in the process. It turns out that Cache was the only DBMS capable of storing and manipulating this vast amount of data in a reasonable amount of time on hardware that is not out of this world.
Industry wise Inter systems Users: (*image referred by enlyft site)
List of top companies are using Intersystem Products: (*image referred by enlyft site)
*I removed countries wise data:
Comparison Between Intersystem Cache ,MSSQL and Oracle:
Advantages:
Business logic is much simpler,
Easier to get high performance
We can store the data as three ways like Key-Value storage (MUMPS) ,Object Oriented storage and RDBMS storage.
Disadvantages:
Smaller market for developers.
References:
https://www.intersystems.com
https://enlyft.com/tech/products/intersystems
Thanks for Your Reading!!! Thanks, Ponnumany, interesting!
Pretty much no code libraries.
This is what InterSystems Open Exchange and ObjectScript Package Manager for. Attention!
The list of companies from enlyft.com is totally wrong.Even if you just look at Electronic Health Record you miss important countries like whole Scandinavia, Italy, Germany, China, ...and beyond that whole middle and eastern Europe and especially Russia. Where is Japan ?Just as a signal how massively wrong these figures are:My small Austria has more companies using Intersystems products than this 26 counting for India.
I'd suggest you contact Intesystems Marketing for REAL figures.Your source is just faked information. Yes, I agree that it's not clear where they got the information. Is there any disclaimer on the site?
Some information is accurate some are at least 'not sufficient".
Robert! Is it wrong or it's incomplete? Wrong is a fake, incomplete - its another 'not enough information', which should be stated on the site of course. Some companies just don't share their contracts and partnership at all so I'm curious if any "enlyft" can show accurate information. I think it's both
#1 missing a lot of important countries
#2 wrong (or very aged) since FRANCE: 20 would mean to have 1 employee by customer . This simply can't match.I think a look at the WRC registry might give some feeling on the dimensions. (without disclosing details)
For my case 5 yrs back picking out 1 of my partners which had >30 installations at 30 companies.Could be they count "Intersystems Only" - but that's not stated nor does it make sense.
walking through their web pages you see fast who is their preferred product supplier. no need to mention Hi Evgeny,
the info is at least unreliable, so i vote to ask the author to delete this information from the article. There is already too much fake news on the internet, lets make this little part of the internet as reliable and accurate as possible !
Article
Scott Beeson · Jan 25, 2016
https://code.intersystems.comWhat is CODE, and why have you never heard about it?InterSystems Code is intended to be a resource for developers learning and using InterSystems' software. If you have a novel approach to a coding problem that could save others time, share it here! If you're learning how to use some piece of our technology and need some guidance, you can ask the community for sample code. While you're at it, feel free to browse and learn from the creative solutions that others have developed.We appreciate your help in making Caché-based development more accessible.Thank you,InterSystems Support This is pretty cool but it looks dead. Can/will this be somehow integrated here? Another idea is that you guys could sponser a tag at StackOverflow. See here for more information. Current tags are objectscript, intersystems-cache, intersystems-ensemble and intersystems. Scott,
Code.InterSystems.com was launched but then not advertised because of the Developer Community effort. It is still supported and will remain open and available until such time as all functionality is available on the Developer Community and all content has been moved to make it accessible here. Feel free to make use of that site until you see announcements about it being moved. It works with InterSystems SSO so you can use your existing account.
Ben
Any thoughts on utilizing/promoting Stack Overflow instead of duplicating efforts and fragmenting support?
Like this one http://stackoverflow.com/questions/tagged/intersystems-cache ?
Oh, I see you already mentioned that tag. Never mind
P.S.
That was a good show case of necessity to delete your own comment.
Stack Overflow synchronization is part of our plan for 2016. We would prefer to have better control over the content than is possible with Stack Overflow thus the push for Developer Community. We know the UI needs improvement and features are missing but there is a commitment to get it done.
I'm very agree, with advertising stackoverflow tags, it is a very good platform for questions. But unfortunately just a few people use it, some more at different google groups , and as I think much more at russian forum sql.ru. But I see that stackoverflow, much better that any others. Unfortunately here as we already know, it is quite difficult to recognize a question in new posts. And very bad that this site still does not have any RSS, i can't wait when it happen. And too difficult to catch any new posts via email subscriptions, which is so ugly yet.
You mentioned tag objectscript at stackoverflow, but I don't understand why so many people choose it as relevant to intersystems technologies. It does not, it looks odd, even every last question marked with this tag, depends only with caché. And it looks we should change description for this tag, which will be relevant to Caché.
+1 on Dmitry comments on stackoverflow
The ObjectScript tag wiki doesn't mention anything about Cache or Intersystems. I actually thought it was an intersystems technology, are you saying it's not?If you don't have enough rep to propose a change to the tag I would gladly do so if you want to propose any changes. You definitely have enough rep to propose wiki edits. Yes, it is so. And yes, I'm already have enough rep for editing. But I'm not sure in stackoverflow rules, is it available for such changes? And I'm not sure in my english, that's maybe main reason, why I have not done it yet.
Give me an idea of what you would like to change and I can either make the change or propose some wording for you.edit: Or I could use this paragraph from Wikipedia: Caché ObjectScript (COS) is a part of the Caché database system sold by InterSystems. The language is a functional superset of the ANSI-standard MUMPS programming language. Since Caché is at its core a MUMPS implementation, it can run ANSI MUMPS routines with no change. To appeal as a commercial product, Caché implements support for object-oriented programming, a macro preprocessing language, embedded SQL for ANSI-standard SQL access to M's built-in database, procedure and control blocks using C-like brace syntax, procedure-scoped variables, and relaxed whitespace syntax limitations.What do you think? Okay I submitted a proposal. It's waiting for peer review.
Thanks, it's much better :)
Question
Vivek Nayak · Aug 10, 2021
https://docs.intersystems.com is not working https://community.intersystems.com/post/temporary-online-documentation-server
Question
Muhammad Waseem · Nov 21, 2021
Hi,
InterSystems learning section is down since yesterday
When it will be up and running OR is there any alternate available?
Thanks The learning site is now back up. Thanks for your patience! Thanks for the update
Question
Evgeny Shvarov · May 24, 2022
Hi developers!
What is the easy way to know what are the images available at containers.intersystems.com?
look at this announce, when this was introduced. There is mentioned docker-ls tool, which can help you with it Thanks @Dmitry.Maslennikov !
This line will help to install docker-ls on Mac:
brew install docker-ls
And this line helps to see the community images available now:
docker-ls tags --registry https://containers.intersystems.com intersystems/iris-community
And this command shows available IRIS Community tags on Docker Hub:
docker-ls tags intersystems/iris-community
requesting list . done
repository: intersystems/iris-community
tags:
- 2021.1.0.215.3
- 2021.2.0.617.0
- 2021.2.0.651.0
- 2022.1.0.114.0
- 2022.1.0.131.0
- 2022.1.0.164.0
- 2022.1.0.172.0
- 2022.1.0.191.0
- 2022.1.0.199.0 And if you are lucky enough to have an Apple computer with an ARM chip (with M1 and M2 names so far...) look at the containers with a "-arm64" suffix:
docker-ls tags --registry https://containers.intersystems.com intersystems/iris-community-arm64
Question
Andreas Schneider · Apr 22
I've conducted some tests using different InterSystems IRIS Community Edition container images, which I pulled from https://containers.intersystems.com.
During this process, I noticed some inconsistencies that I’d like to clarify:
The tag latest-preview pulls: InterSystems IRIS Version 2025.1.0.204
The tag latest-cd pulls: InterSystems IRIS Version 2024.3.0.217
The tag 2025.1 pulls: InterSystems IRIS Version 2025.1.0.223
This behavior was a bit confusing to me, especially since latest-preview does not point to the most recent 2025.1 build.
Could someone please confirm if this is the intended setup or provide guidance on how these tags are meant to be used?
Andreas You can see here what is each version:
https://docs.intersystems.com/iris20251/csp/docbook/Doc.View.cls?KEY=PAGE_rel_streams Thanks for the link!
Question
Olga Smolyar · Feb 27, 2019
Hello,I'm trying to set up an Apache server using CSP Gateway on Windows 10 (64-bit), but am getting the error "Cannot load c:/InterSystems/IRIS_2019/CSP/bin/CSPa24.dll into server: %1 is not a valid Win32 application" when attempting to start up httpd.exe after adding the CSP-specific section to httpd.conf.The CSP gateway is 64-bit (CSPGateway-2018.1.1.643.0-win_x64) and so is the Apache install (httpd-2.4.38-o102q-x64-vc14).The CSPa24.dll file does exist in the specified location. Any suggestions appreciated.Thank you,Olga yes, internal private apache webserver (PWS), the embedded one coming with the IRIS installation is still 32-bit on windows x64."CSPGateway-2018.1.1.643.0-win_x64" kit should contain 64-bit CSPGateway binarys/dlls.You can check bitness/architecture of your apache with the command: >httpd -VBitness of apache and CSPGateway binarys *must* match!There is an alternative to dumpbin in order to check bitness of CSPGateway binarys/dlls which IMHO is easier:Open executable or dll in editor (notepad, notepad++), check the first printable characters *after* the first occurrence of "PE".This part is most likely to be surrounded by at least some whitespace (could be a lot of it), so it can be easily done visually.x86:PE Lx64:PE d†HTH,Bernd Thank you @Eduard.Lebedyuk , @Bernd.Mueller for the tips - yes, it works with a 32-bit Apache server. For some reason even though CSPGateway-2018.1.1.643.0-win_x64 is the one installed (it's the only one downloaded), the CSPa24.dll is 32-bit according to the above test.Regards,Olga i just tried and installed from kit-file "CSPGateway-2018.1.1.643.0-win_x64.exe" and the CSPa24.dll included is 64-bit as expected. The user you are using to run apache / cache. Do they have rights to the file What does this command return?
dumpbin /headers c:/InterSystems/IRIS_2019/CSP/bin/CSPa24.dll
For me (on IRIS for Windows (x86-64) 2018.2 (Build 241U) Fri Jan 26 2018 01:06:37 EST) it shows:
Dump of file ./CSPa24.dll
PE signature found
File Type: DLL
FILE HEADER VALUES
14C machine (x86)
5 number of sections
5BC558F7 time date stamp Tue Oct 16 06:20:23 2018
0 file pointer to symbol table
0 number of symbols
E0 size of optional header
2102 characteristics
Executable
32 bit word machine
DLL
Note 14C machine (x86) value, it means that it's a 32bit dll. If you have similar output, I recommend installing 32 bit apache.