As a guess this is an issue with the target and how it was shutdown.
Here is a link on WIJ recovery.
- Log in to post comments
As a guess this is an issue with the target and how it was shutdown.
Here is a link on WIJ recovery.
You are using Unicode. On my 8 bit install it stops after 255.
for i=250:1:260 { write i," ", $c(i),! }
250 ú
251 û
252 ü
253 ý
254 þ
255 ÿ
256
257
258
259
260
8 bit or 16 bit storage option on install - https://docs.intersystems.com/iris20252/csp/docbook/DocBook.UI.Page.cls…
Different character set for the locale - https://docs.intersystems.com/iris20252/csp/docbook/DocBook.UI.Pag
e.cls?KEY=GORIENT_localization#GORIENT_localization_locales or Configuring National Language Support (NLS)
Could even be different character sets in the terminal settings to the linux servers.
As a guess the routine is returning 1 and you can demo this using @Dmitry Maslennikov suggestion:
run do $zu(4,$job,1) and check errorlevel
run do $zu(4,$job,0) and check errorlevel
With a mirror you can use iris qlist to detect the primary and not run there. It is a great idea to snapshot the failover backup/DR async as there can not be a user impact that way.
I would look to SAN devices that offer deduped and compressed and immutable snapshots. Many storage vendors can do this now. The WRC might have reference designs and you should ask them.
Making the new IRIS 2025.3+ work might require adjusting the EVC setting of VMware.
https://knowledge.broadcom.com/external/article/313545/vmware-evc-and-cpu-compatibility-faq.html
Based on InterSystems IRIS Minimum Supported CPU Models this CPU change just affects AMD.
I wonder if the DataMove feature could be used.
That could be like the GBLOCKCOPY but without the downtime.
Journals and the WIJ use different sizes for writes. Look at Storage Configuration.
It takes a little more than 100% more space to defragment a file.
I am not sure there are gains if you are on SSD/NVMe drives and if you are not I would do that instead.
One option if you want to do this would be do it on a DR mirror where you could keep it running.
As a guess you need to escape something as powershell is stripping it off and then not passing it.
This is common on Unix shells
IBM POWER supported processors continues the same as POWER 8 or later?
The spray of 8K I/O is a feature of IRIS. My guess is you have a smart controller combining writes on one server and not the other.
Look at this Storage Configuration
Are all the instances IRIS and not Cache?
Maybe try ccontrol list
There is this Memory and Startup Settings.
Are you trying to limit process or shared memory?
One issue can be just the number of processes.
One thing to be aware of is if you use messages.log to track IRIS.DAT growth the shrinking of IRISTEMP either through a delete or reset will throw off those numbers.
@Timo Lindenschmid's point is a good one. Setting a max size can be done from SMP or in %SYS with ^DATABASE but that likely means you will have issues sooner.
MaxIRISTempSizeAtStart documentation.
iris session [INSTANCE] -U %sys ALL^%SS would give you the PID,namespace, routine, CPU and globals.
As noted in the documentation the ExternalFreeze() can not last longer then 10 minutes or however long it takes you to run out of global buffers.
You could use irisstat :
iris stat [INSTNACE] | grep WDSUSPD # this will show you if the write daemon are suspended.
iris stat [INSTNACE] -W #this will resume them.
As a guess you are running out of buffers and the options are to move the snapshot to a less busy time on the system and/or increase the number of global buffers.
Look at using mgstat to find a better time to do the backup.
Searching for ConvertDateTime works for me and gives 6 results.
https://docs.intersystems.com/results.html?docs%5Bquery%5D=ConvertDateTime
I think for 100% certain rollback a restore by @Ben Spead suggestion would be the way to go. While maybe if you were going back to IRIS 2024.1.1 you could just rename the install directory and install the old version I would not count on that working. I think things like journal files and IRIS.DAT get upgraded so you can not go back. You could have a mirror on the old and new version and move from the old to the new but you would still lose data since you can not mirror to a downlevel version - InterSystems IRIS Instance Compatibility
I would go to the WRC and ask them. Contact the WRC
Some thoughts:
Install it outside the rootvg so not in /usr or /opt
Don't bury it deep in a path. Something like /[application]/[instance]/irissys for example
Data in a separate volume group to enable snapshots and the external freeze.
Journals in a separate volume group to enable snapshots and the external freeze.
Keep instance names unique unless it is a failover member or DR async
Look at Storage Planning
You could optimize this:
If F1 > 0 and F2 > 0
F1 > F2 ; positive
F1 < F2 ; negative
no need do the subtraction.
Sounds much the same as these threads:
For IP address transfer/takeover to work the network has to be the same. Other clustering solutions work like this.
Planning a Mirror Virtual IP (VIP)
If by fake you mean not the normal OS level clustering solution that is true. It is an app specific solution.
If the cost of the 2x storage is an issue maybe a deduplicating SAN would reduce the cost at the added risk not having redundant storage.
If at the OS layer you used LVM and XFS you could just add a LUN to the volume group and grow the filesystems. This can be done with everything up.
The backup solution for me determines what a large file is. For me that is anything over 1 terabyte. We use External Backups.
Most backup solutions only have one process per file. This means fewer and larger IRIS.DATs will always be slower to backup and restore than more and smaller IRIS.DATs.
The growth pattern needs to be understood. If it is going to just grow forever it has to be broken apart and it will be easier while it is small.
In your place I would upgrade to the 2024 version and explore Multivolume Databases.
8K IRIS.DATs have a max size of 32 Tb though Intersystems is working on this.
If you do performance testing the storage is going to be allocated either anyway so might as well do it upfront.
This looks like what you want Using the ^MIRROR Routine
I am interested in InterSystems IRIS: What’s New, What’s Next and InterSystems Data Platforms Roadmap: Leading in the Data and AI-Driven Era.