#System Administration

8 Followers · 546 Posts

System administration refers to the management of one or more hardware and software systems.

Documentation on InterSystems system administration.

Article Mark Bolinsky · Feb 3, 2016 2m read

During recent large scale benchmarking activities, we were seeing excessive %sys CPU time that negatively impacted scaling of the application.

Problem

We have found that a lot of the time was spent in the localtime() system call due to the TZ environment variable not being set.  A simple test routine was created to confirm the observation, and the elapse time differences and CPU resources needed with TZ set versus TZ not set were astonishing.  It was discovered that the inherit use of stat() system calls to /etc/local_time from localtime() are very expensive when TZ is not set.

Recommendation

5
0 2950
Article Erik Hemdal · Jun 17, 2016 5m read

Setting the TZ Environment Variable on Linux

The Update Checklist for v2015.1 recommends setting the TZ environment variable on Linux platforms and points to the manpage for tzset. This is recommended to improve the performance of Cache’s time-related functions. You can find out more about this here:

https://community.intersystems.com/post/linux-tz-environment-variable-not-being-set-and-impact-caché

The manpage on my CentOS 7 test system (RHEL 6 says the same) has this to say:

0
0 140064
Article Murray Oldfield · May 26, 2016 1m read

Post updated in August 2025 to include links to IRIS.

I have seen customer problems where the use of a virus scanner running over Caché or IRIS databases was causing intermittent application slowdowns and bad user response times.

This is a surprisingly common problem, so this short post is just a reminder to exclude key Caché and IRIS components from your virus scanning.

2
1 1888
Question Sankar Manogaran · Apr 28, 2016

Hi,

Our Cache server(version 5.0.15) has recently crashed. We are in the process of recovery. We had replaced the server's hard disk and trying to install the cache(5.0.15) But getting the following error. Any body show some light on the issue.

CctrlInstallStartCP( CACHE ) failed! Return value: 1 CctrlGetLastError() returned:

2
0 1236
Question Francis Galiegue · May 20, 2016

Hello!

I am trying to install Caché 2016 on a Debian Jessie machine; so I downloaded the latest release from WRC, OS RHEL x86_64, in tarball format.

I untarred it, then launched cinstall; unfortunately a library was missing. I then elected to kill all the processes (which wasn't easy), remove the two users created, and start again.

Unfortunately, for some reason, when I relaunch the install again, the install process still detects the old instance which I installed previously... And I cannot find where this information came from (I removed the install directory by hand entirely).

6
0 2401
Question Mike Kadow · Apr 26, 2016

I just recently got a mail regarding the latest and greatest.

I find the mail impossible to read or make any sense of.

At the bottom it says to manage my subscription.

I clicked on the link and it took me to a page that says I am denied.

All the time I am still logged in.

Then, can you tell me how do I manage my subscriptions and stop those impossible emails?

I sure wish we were back to the Google Group, I understood that.

3
0 264
Question Steve Pisani · Apr 20, 2016

The following situation always catches out new Ensemble users, and is likely to continue doing this until it is addressed..

A business operation, service or other host that is configured with a dedicated # of actors, (ie, not using the actor pool) runs with the version of compiled code that existed when the host was started.  This code is loaded in memory. 

1
0 603
Question James MacKeith · Apr 11, 2016

During a fine breakfast at Global Summit 2016 I was asked about the %DEFAULTDB database that now appears when creating the %ALL namespace. Until the documentation on "Mapping a Package Across Multiple Namespaces"  is updated to include the use of subscript level mapping for all namespaces here is a brief explanation for this change in 2016.1: When creating a global subscript level mapping in the %ALL namespace the database that was used for the non-subscripted global could not be set to be the default database for each namespace. This behavior prevents using %ALL namespace to help manage

3
0 639
Article Pete Greskoff · Apr 7, 2016 1m read

Presenters: Pete Greskoff, Sebastian Musielak
Task: Ensure high availability of your HealthShare deployments
Approach: Discuss high-availability options and focus on HealthShare’s new support for database mirroring
 

With the new release of HealthShare, Mirroring is now support for high availability. This session will describe high availability options and focus on mirroring your HealthShare deployments.

Content related to this session, including slides, video and additional learning content can be found here.

0
0 402
Article Ray Fucillo · Apr 7, 2016 1m read

Presenter: Ray Fucillo
Task: Provide high availability (HA) and disaster recovery (DR) in diverse architectures that demand high performance, including replication over long distances
Approach: Give examples of mirror architectures in disparate environments, including geographically separated systems. Discuss performance considerations and advances in InterSystems’ mirroring technology
 

In this session you will learn about deploying Mirroring to provide HA and DR in diverse architectures that demand high performance and throughput. Challenges and solutions to achieving high throughput will be covered along with mirror architectures that involve long distances and disparate environments.

Content related to this session, including slides, video and additional learning content can be found here.

0
0 330
Article Kerry Kirkham · Apr 7, 2016 1m read

Presenter: Kerry Kirkham
Task: Prevent application-to-application interface problems from escalating
Approach: Give examples of using alerts to get the right person working on a problem as soon as possible
 

Problems with application-to-application interfaces are inevitable but in most cases they can be fixed with little disruption as long as the right person gets to know about it as soon as possible. But delays in attention cause problems to escalate, pressure mounts and business suffers. This session looks at how monitoring and alerting can be set up to recognize problems and get the right person working on the problem in the shortest possible time so that small problems don’t turn into major issues.

Solution: Using alerts to minimize interface problems

Content related to this session, including slides, video and additional learning content can be found here.

0
0 336
Article Murray Oldfield · Apr 7, 2016 1m read

Presenter: Murray Oldfield
Task: Avoid bottlenecks caused by scaling up, before they become a problem
Approach: Discuss what operating system and InterSystems metrics you should look at and how to interpret them
 

Systems behave differently when database activity scales up. In the worst case, bottlenecks appear and users are impacted. This session shows you which operating system and InterSystems metrics you should be looking at and how to interpret them so you can head off bottlenecks before they impact users. This sessions also shows strategies for planning infrastructure taking into consideration InterSystems' data platforms requirements.

Content related to this session, including slides, video and additional learning content can be found here.

0
0 407
Question Chip Gore · Mar 29, 2016

Hi -

I was looking at the “Purge Data Management” page, and one of the “Record Types” is the “I/O Log” which sometimes doesn’t clear when you purge all of the message.

But I’m not sure what it’s actually reporting as “I/O Log” messages (and I can’t find anyplace to view what is being considered I/O Logged Messages - so I can understand what’s happening)

Can anyone shed some light on these messages?

1
0 388
Question Alexey Maslov · Mar 18, 2016

Straight-forward way to do it is well known and looks like this: 
------------------------------------------------------------ sample #1 --------

echo "Try to freeze Cache instance $instance"
rm -f $mydir/db_temp
csession $instance -U%SYS << EOF >/dev/null
zn "%SYS"
set rc=##Class(Backup.General).ExternalFreeze()
set fn="$mydir/db_temp"
o fn:("WNS"):1 if \$t u fn w rc c fn
h
EOF
read rc < db_temp
if [ "$rc" = "1" ]
then
 echo "...OK, system is frozen."
else
 echo "** Copy ABORTED: freeze rc = $rc"
 exit
fi

-----------------------------------------------------------------------------------

4
0 1293
Article John Murray · Mar 17, 2016 2m read

Here are a few tips that might be useful to people who are running applications in an environment that's configured to use InterSystems mirroring.

  • If you configure an ECP connection to a Caché instance that is a mirror member databases then the ECP connection should also have mirroring enabled (tick the mirroring box when defining the connection). More details here. You may also need to increase the number of ECP connections each end accepts, to cater for the way both members of a mirror pair get involved in ECP negotiation.
0
0 606
Article Benjamin De Boe · Nov 9, 2015 1m read

A simple and rather automated search portal leveraging iFind capabilities for rich text search in 2016.1. It has simple faceting, result ranking, highlighting of search results etc and just works off any table you point it to that has an iFind index by appending ?t=MyPackage.TableName to the URL.

See also https://github.com/bdeboe/isc-iknow-ifindportal for more details and the latest version.

3
0 568
Question Steve Pisani · Mar 8, 2016

Hi,

Can a Cache Mirror be  used in the cloud ? (ie stand up a Primary and Backup member instances in a High Availability Cache Mirroring configuration) 

I'm investigating the validity of this configuration, because I was of the understanding that this may not possible due to these cloud servers not (typically) having fixed ip addresses, which interferes with the Virtual IP settings for the mirror set.

Is this correct, and if there are workarounds (like Load Balancing ?) can I have details on how this should be configured ?

8
0 1061
Question Scott Beeson · Feb 4, 2016

I'm working on a proposal for a deployment tool development project and I was wondering if anyone had any experience with such a thing.  

We use Healthshare and implementations for new clients are tedius and lengthy.  Lots of ensemble service, registry value, lookup tables, namespaces and other things have to be created and configured. 

I would like to create a Zen or CSP page based deployment tool that can do all this with a few parameters and some custom code.

Has anyone done this?  What are some pitfalls you ran into?  Any unique ideas you included?  Other general thoughts?

15
0 1040
Article Sylvain Guilbaud · Feb 24, 2016 1m read

C:\data\backup.bat :

C:\InterSystems\Ensemble\bin\cache -s"C:\InterSystems\Ensemble\Mgr" -U%%SYS ##Class(Backup.General).ExternalFreeze() <C:\data\login.scr 

echo %ERRORLEVEL%

rem note that we need to check errorlevel from highest to lowest here....

if errorlevel 5 goto OK

if errorlevel 3 goto FAIL

echo errorlevel returned wrong value

goto END

:OK

echo SYSTEM IS FROZEN

xcopy c:\InterSystems\Ensemble\mgr\ z:\backup\Ensemble /s /e /y /i

echo %ERRORLEVEL%

goto END

:FAIL

echo SYSTEM FREEZE FAILED

:END

rem Now unfreeze the system

0
0 1920
Article Mark Bolinsky · Feb 2, 2016 1m read

Some third party backup products may by default restore CACHE.DAT files as UNIX sparse files when there are trailing zeroes in the backup file.

The support for sparse files vary from UNIX distribution and file system types.  Sparse files attempt to use file system space more efficiently when blocks allocated to the file are mostly empty similar to thin-provisioned storage.  The file system transparently converts metadata representing empty blocks into "real" blocks filled with zero bytes at runtime. The application is suppose to be unaware of this conversion.

The Problem

0
0 427
Announcement Bill McCormick · Feb 1, 2016

Attached to this post is a PDF document outlining some of the key enhancements included with 2016.2. I will be giving a WebEx session that is open to all tomorrow at 11 AM EST. Once the WebEx is over I will be adding a link to the recording for those who cannot attend.

2016.2 Field Test Launch
Tuesday, February 2, 2016
11:00 am  |  Eastern Standard Time (New York, GMT-05:00)  |  30 mins
 
Meeting number:    747 673 229

Join!

Join by phone
Call-in toll-free number: 1-866-8576852  (US)
Call-in number: 1-636-6925389  (US)

0
0 459
Article David Reche · Dec 22, 2015 1m read

In some project, I found the need to use SMIME format https://www.ietf.org/rfc/rfc3851.txt, basically is an standard used to wrap a message together with its signature using a certificate (usually X509). Ensemble don't have a single class to do that but inside the Ensemble installation we have the openssl utility, so in this example I use the "openssl smime" command to sign or verify a message.

The example has two Business Process that able to sign or verify and in order to test I made a simple production.

Hope this helps

10
0 723