InterSystems Developer Community is a community of 23,342 amazing developers
We're a place where InterSystems IRIS programmers learn and share, stay up-to-date, grow together and have fun!

++ Update: August 1, 2018

The use of the InterSystems Virtual IP (VIP) address built-in to Caché database mirroring has certain limitations. In particular, it can only be used when mirror members reside the same network subnet. When multiple data centers are used, network subnets are not often “stretched” beyond the physical data center due to added network complexity (more detailed discussion here). For similar reasons, Virtual IP is often not usable when the database is hosted in the cloud.

Network traffic management appliances such as load balancers (physical or virtual) can be used to achieve the same level of transparency, presenting a single address to the client applications or devices. The network traffic manager automatically redirects clients to the current mirror primary’s real IP address. The automation is intended to meet the needs of both HA failover and DR promotion following a disaster.

15 12
6 6.6K
Article
· Mar 10, 2016 2m read
New Book, Caché and MUMPS – Part II

New Book, Caché and MUMPS – Part II

By Paul Mike Kadow

Edited by Deborah Graham and John J. Mitchell

Go to http://cosmumps.org for a download of just the examples of the book and the table of contents.

From the Forward

InterSystems, from a humble beginning, has grown into a worldwide company with its flagship product, Caché, leading the way.

First, this book chronicles and explores some of the many areas InterSystems has grown into and has influenced over the years.

6 8
0 2.3K
Question
· Nov 1, 2016
WebSocket proxy to telnet

Is there any easy way to create a WebSocket to Telnet proxy within the Cache environment?

I would like to use a html5 telnet emulator to connect to cache, but need to create a proxy,

Is this a simple task?

0 8
0 1.6K

While testing Atelier 1.0.255 I noticed that the namespace subtree of my Atelier project used different icon shading for the top-level Classes folder compared with the top-level Routines one:

Drilling down into parts of the Wasabi package helped me work out the significance of white-filled icons versus brown-filled ones:

A package is white if there are no classes in it, but only subpackages.

1 8
0 528

Some of the templates in Atelier display "on" in the "Auto Insert" column. I can't figure out how they differ from the ones that aren't so marked. Some Googling suggests that it should insert without displaying the template popup if there is only one matching template. However, I see the popup every time.

0 5
0 420

In this article I would like to present the RESTForms project - generic REST API backend for modern web applications.

The idea behind the project is simple -after I wrote several REST APIs I realized that generally, REST API consists of two parts:

  • Work with persistent classes
  • Custom business logic

And, while you'll have to write your own custom business logic, RESTForms provides all things related to working with persistent classes right out of the box.
Use cases

  • You already have a data model in Caché and you want to expose some (or all) of the information in a form of REST API
  • You are developing a new Caché application and you want to provide a REST API
12 23
3 5.3K

Two fairly common requests we receive from HL7 customers are (1) how to remove all trailing delimiters for fields and segments in HL7 messages and (2) how to "find and replace" for an entire HL7 message (as opposed to one segment/field at a time). The code sample below shows a custom function that solves for item 1 and by extension item 2 above. In other words the same approach can be used for finding/replacing any sequence of chars in an entire HL7 message, with some tweaks to the custom function.

7 6
0 3.6K

Hi,

I have a client who is considering encryption options in order to comply with a tendering requirement.

Were they to encrypt the production database then what would be a reasonable expectation forthe impact on message throughput. Or possibly more easily answered: what would be the expected impact be on I/O rate and CPU utilization. Are there any benchmarks to which could support an estimate ?

How would this compare with plan B: to use disk encryption ?

Thanks

0 3
0 512

Is there a function in Atelier that's equivalent to Studio's "Find in Files"? Namely, to search for assets containing a given search pattern across an entire namespace -- not just across files that are currently in the local project.

I've been playing with the search functions in Eclipse, and so far haven't found a combination of options that will search against assets that are only on the server -- I can only get results for assets that are already in my workspace.

2 7
0 744

One aspect of source code management is how to deal with the almost inevitable need to upgrade your Caché or Ensemble platform to a newer InterSystems release.

It's long been my experience that InterSystems does a very good job of maintaining backward compatibility. Code that works correctly on, say, 2012.1 is very likely to work correctly on, say, 2015.2 without any modification.

0 10
0 605

Problem:

Caché prints to printers in a manner somewhat different from other Windows applications. Caché sends the data directly to the GDI Printer, without the usual interface. This is because the GUI interface can only be shown on a system desktop session and not in web browser and terminal sessions. Some printer drivers have problems with this method of printing.

Is this the problem you are having?

4 3
2 3K

I'm pleased to see this in the documentation of the just-published 2017.1 Field Test of Ensemble:

"In certain circumstances, it is useful to create namespaces that are not enabled for Ensemble. In this release you can do this by clearing the Make this an Ensemble namespace checkbox when creating a new namespace. "

4 1
0 609

In the last post we scheduled 24-hour collections of performance metrics using pButtons. In this post we are going to be looking at a few of the key metrics that are being collected and how they relate to the underlying system hardware. We will also start to explore the relationship between Caché (or any of the InterSystems Data Platforms) metrics and system metrics. And how you can use these metrics to understand the daily beat rate of your systems and diagnose performance problems.

20 10
2 4.2K
Article
· Jun 24, 2016 2m read
Atelier, Git, and GitHub

One of the benefits of Atelier is easy integration with source code management tools. Some Eclipse installations include the EGit plugin, or you can install it from the Eclipse marketplace. EGIt makes integration with Git and GitHub easy. Here are the steps I used to connect Atelier to a GitHub repository:

8 8
0 2.4K

Problem:

A file-based business service uses a local path on a Linux machine that is actually a mounted CIFS share. The mount is "soft" and is designed to not cache data, etc. There are times however when the remote system offering up the share (it's a Windows machine I believe) gets bounced or otherwise hung up the business service in the Ensemble production just hangs.

0 4
0 1.7K

Please make these dialogs easier to use, for example by treating a double-click on a list item as a signal to select the item and effectively click the "Next" or "Finish" button. Using Tools\Add-Ins as my example, on the first page:

1 3
0 503

My comments here relate to Atelier 1.0.137 on Windows connecting to Ensemble 2016.2 FT build 627.

I've been looking at what the Atelier Explorer view (hereafter AE), whose root elements are projects, lets us do with the contents of the namespace that the project is connected to:

1 9
0 941

I was curious if application partners were developing their own task managers for scheduling background tasks, or using the built in task schedule that is part of the Cache platform.

For those that are using the Cache task manager, what has been your method for distributing default tasks that your application needs during initial install as well as upgrades? Are you distributing an export of the %SYS.Task object, or perhaps you are distributing an installation script that adds a task to the task scheduler when it is first run?

0 3
0 3.1K

How suitable is Docker for standalone deployment of an Ensemble version and Ensemble application together?

The context is deployment by an application partner of an integration application and the supporting Ensemble version as a single package (single file ideally), to multiple environments and to multiple customer sites.

I don't have experience with Ensemble on Docker so I'm wondering what gaps and pitfalls may exist.

3 8
0 1.6K