Typical way to update/restart ArrayServer
From Array Suite Wiki
1. Find directory to mono bin and directory to ArrayServer executables
2. Stop current ArrayServer
ps –ef | grep mono
You will see
$ ps -ef | grep mono omicsoft 16503 15137 0 Jul29 pts/3 00:01:23 /IData/App/mono/mono-2.10.9/bin/mono-sgen ./ArrayServerLinuxBeta.exe omicsoft 23306 15137 0 09:56 pts/3 00:00:00 grep mono
find job id of ArrayServer then kill jobid, such as
Double check it is killed and use kill -9 if it is not killed
3. (If Necessary) Update ArrayServer using Omicsoft Updater
OmicSoft is constantly improving its software, by adding new features, optimizing performance, and resolving software issues.
You can check your ArrayServer version by typing
cd /directory-to-ArrayServer-executables /directory-to-mono-bin/mono ./ArrayServerLinuxBeta.exe --version
ArrayServer version is 10.0.0.73
You can compare this version to the latest versions on our PROD and DEV release page.
OmicSoft generally recommends keeping ArrayServer to the latest PROD release.
The latest Production (PROD) release (released about once per quarter) can be retrieved by
cd /directory-to-ArrayServer-executables /directory-to-mono-bin/mono ./OmicsoftUpdater.exe
If OmicSoft support has informed you that
- A new feature that you requested has been implemented
- An issue that you identified has been resolved
they may instruct you to update to the latest Preview/DEV release:
cd /directory-to-ArrayServer-executables /directory-to-mono-bin/mono ./OmicsoftUpdater.exe --dev
Once updated to DEV, there's no need to run
OmicsoftUpdater.exe again until a new PROD release.
Unless OmicSoft Support has instructed you to update to the latest DEV release, we recommend using the main PROD ArrayServer release
4. Check server version
Double check the server version:
cd /directory-to-ArrayServer-executables /directory-to-mono-bin/mono-sgen ./ArrayServerLinuxBeta.exe --version
Note: if you are running server on Amazon cloud instance, you should use mono instead of mono-sgen.
5. Start ArrayServer
cd /directory-to-ArrayServer-executables /directory-to-mono-bin/mono-sgen ./ArrayServerLinuxBeta.exe >> ./run.log &
Note: if you are running server on Amazon cloud instance, you should use mono instead of mono-sgen to run ArrayServerLinuxBeta.exe.
Unlink the current terminal (you can shut the current computer while the ArrayServer job still runs on the server)
check launch status
tail -f ./run.log
Q & A
Q: Cannot kill mono ArrayServer process
If user cannot kill the process by
kill -9 jobid
If the job still cannot be killed, it indicates that there is a parent job. Sometimes, there is a mono crash and it triggered gdb and put mono into debug mode in your Linux Server. Find this job by
$ ps -ef | grep jobid
$ ps -ef | grep 16503
Then kill the parent job first then kill the mono job.
Q: Why mono and mono-sgen
Note: You are using
mono to run updater and using
mono-sgen to run ArrayServerLinuxBeta.exe. They are using different garbage collection methods. Note: if you are running server on Amazon cloud instance, you should use mono instead of mono-sgen to run ArrayServerLinuxBeta.exe.
- Please note that for mono-4+, mono has been replaced by mono-sgen and there is no longer a difference between the two:
Q: Can I use screen instead of disown to keep session
Yes, screen is also a good approach to keep the run in an isolated session.
screen to start a new screen, inside the screen run the updater and ArrayServer without sending to background (without &).
cd /directory-to-ArrayServer-executables /directory-to-mono-bin/mono ./OmicsoftUpdater.exe cd /directory-to-ArrayServer-executables /directory-to-mono-bin/mono-sgen ./ArrayServerLinuxBeta.exe
CTRL+a, then press d, you can detach the session.
You can re-attach the session by
session -r sessionID
You can find active sessions by
Q: What is the current version of ArrayServer?
The Array Studio Change Log will indicate when a new PROD server version has been released.
You can also check here, which checks twice-daily for the current server versions (PROD and DEV branches).