Domino Server configuration --> Server --> Program documents

Please complete the details below then remove this line:


Domino/Notes Version: 12.0.2 FP6
Add-on Product (if appropriate, e.g. Verse / Traveler / Nomad / Domino REST API): None
Operating System: Windows 2022
Client (Notes, Nomad Web, Nomad Mobile, Android/iOS, browser version): Notes Admin client 12.0.2 FP6


Problem/Query:
I am looking for a list of programs that can be configured via these program documents.

I would like to see if it is possible to run a command to pause replication on a cluster at a certain time of the day, Then shut the server down. Then after a snapshot of the server to bring it back online and un-pause the replication.

I have scoured the help BUT there is no default list of programs to run bar compact and an nserver command that I know of at this point.

Hi Mark,

Can you confirm what you really want? I’m confused on the step that you want to follow.
You want to have a command to pause the replication on a cluster then you wan to shut down the server? Are you referring on one specific server or both server in the cluster?

In my knowledge pausing the replication on a cluster is already shuting down the server.
Without the program document intervention, here is the process of pausing the cluster:

  1. Shut down the Cluster Database Directory Manager, Cluster Replicator, and Replicator if they are running. (Source and Destination server)

tell cldbdir quit
tell clrepl quit
tell replica quit
dbcache flush
dbcache flush
dbcache flush

  1. Delete or backup the existing cldbdir.nsf or any database in the server via OS level.

  2. Start the Cluster Database Directory Manager, Cluster Replicator, and Replicator. (Source and Destination server)

load cldbdir
load clrepl
load replica

So if you’re planning to make this as a program document you might want to follow this:

1. Program Document for Quitting Cluster Services

This document stops all the cluster and replication-related tasks.

  • Program Name: nserver
  • Command line: -c "tell cldbdir quit"
  • Schedule: Set a specific time for this to run (e.g., 2:00 AM).

2. Program Document for Quitting Replication and Flushing Cache

This is a follow-up step to ensure all related processes are stopped and the database cache is cleared. You can use separate documents for each command for maximum reliability.

  • Program Name: nserver
  • Command line: -c "tell clrepl quit"
  • Schedule: Set this to run a few minutes after the first command (e.g., 2:05 AM).
  • Program Name: nserver
  • Command line: -c "tell replica quit"
  • Schedule: Set this to run a few minutes after the previous command (e.g., 2:10 AM).
  • Program Name: nserver
  • Command line: -c "dbcache flush"
  • Schedule: Set this to run a few minutes after the previous command (e.g., 2:15 AM). Repeat this one or two more times in separate Program documents to ensure a complete flush.

3. OS-Level File Operations

  • Action: Manually or via an OS script, delete or back up the existing cldbdir.nsfor file from the data directory on the relevant servers.

4. Program Document for Starting Cluster Services

After the OS-level work is done, you’ll need to restart the cluster services. Since the server is running again, you can use Program documents for this.

  • Program Name: nserver
  • Command line: -c "load cldbdir"
  • Schedule: Set a schedule to run this after you have completed the file operations (e.g., 3:00 AM).
  • Program Name: nserver
  • Command line: -c "load clrepl"
  • Schedule: Set this to run a few minutes after the previous command (e.g., 3:05 AM).
  • Program Name: nserver
  • Command line: -c "load replica"
  • Schedule: Set this to run a few minutes after the previous command (e.g., 3:10 AM).

This sequenced, “one command per document” approach is much more resilient to timing and process-related issues.

Please let me know if this is what you want. Thank you and have a great day.

Regards,
Roberto A Dela Rosa

Hi Roberto,

While this answers my question it does not give me what I was looking for. What you have here is really interesting, however I do not want to drop the whole cluster.

I have a very specific issue. I cannot back my Domino platform up effectively. Our IaaS partner does not allow us to access backups directly, so it is a bit of a bother.

I have to do the following:

Our Domino platform has a cluster with a number of servers in it. I want to make one server in specific a backup server. This server will be part of the main Domino cluster.

At a certain time in the afternoon the cluster replicator must be paused for that node only. Once that happens the Domino server will exit, and the Domino Service stopped.

Then a clean backup is taken.

Post backup the Domino server service is started again, and the cluster replication must be enabled again. I am assuming at this point when I restart the Domino Service on the server it would automatically start up the cluster replicator. I am still to test this theory.

Thank you again for the really helpful advice.

When you want to use this Server only for backup, isn’t it is the easiest way to shut down the domino service, make the backup/snapshot and start the service after Bakup/snapshot again?

Good day Jurgen,

If a person was sitting at the console and it was not part of a cluster I would agree.

What I have now setup is the following

Program document 1
Program name: nserver
Command: -c “tell clrepl pause”
Run time: 17:30

This will pause the cluster replication JUST for this node so no detail from the cluster is lost and the cluster can continue operations like normal.

Program document 2
Program name: nserver
Command: -c “exit”
Run time: 17:35

This will shut the Domino instance running on the server

Then I have two scheduled tasks as in the past the service still remains active on the server so the first scheduled

Scheduled task 1
Stop the Domino service in services
Run time: 17:45

Scheduled task 2
Start the domino service once backup is complete. The only reason this is there is because we do not have direct access to the Backup console to run the command from there post backup completion. The joys of cloud-based operations where these sorts of services are now outside of a company’s control :slight_smile:

What I am about to test today is will this restart of the Domino Service restart Cluster replication :slight_smile:

Hello Mark,

we do stop and start domino service with windows task scheduler and batch files

Hi Jurgen,

I have always been a bit apprehensive about that. In my view that does not produce a clean shutdown of the Domino Service by performing a proper exit of the server. Unless it can be proven that when stopping the service, it will issue a quit or exit command at the Domino server level then I would not consider using the services to stop the server in that way.

The chances of corrupting databases are just too high, especially if a database is mid replication at the time. This can lead to lengthy repair times and outages to the business.

I do used to use batch files, however, have recently change over to PowerShell scripts to do the same job.

Once the Program document has executed the quit or exit command all databases are closed cleanly. As mentioned yesterday in my response. I just use these scripts to stop the service running. The only reason for this is the issue of restarting a service that is still running. That is all.

Hello Mark,

we do by program documents

  • -c “tell compact quit”
  • -c “tell amgr quit”
  • -c “tell update quit”
  • -c “tell replica quit”
  • -c “tell dots quit”
  • -c “drop all”

before stopping the service by cmd.

Hi Mark,

Hope you are doing well.

You can achieve Stopping Cluster replicator and Replica task starting them again by setting up program Document as follows

++++++++++++++++++++++++++
Basics
Program name: nserver
Command line: -c “tell clrepl quit”
Server to run on: Domino/MYHCL
Comments:

Schedule
Enabled/disabled: Enabled
Run at times: 08:40 each day
Repeat interval of: 0 minutes
Days of week: Sun, Mon, Tue, Wed, Thu, Fri, Sat
+++++++++++++++++++++

Basics
Program name: nserver
Command line: -c “tell replica quit”
Server to run on: Domino/MYHCL
Comments:

Schedule
Enabled/disabled: Enabled
Run at times: 08:45 each day
Repeat interval of: 0 minutes
Days of week: Sun, Mon, Tue, Wed, Thu, Fri, Sat
++++++++++++++++++++++++++

Basics
Program name: nserver
Command line: -c “Load Clrepl”
Server to run on: Domino/MYHCL
Comments:

Schedule
Enabled/disabled: Enabled
Run at times: 08:50 each day
Repeat interval of: 0 minutes
Days of week: Sun, Mon, Tue, Wed, Thu, Fri, Sat
+++++++++++++++++++++
Basics
Program name: nserver
Command line: -c “load replica”
Server to run on: Domino/MYHCL
Comments:

Schedule
Enabled/disabled: Enabled
Run at times: 08:55 each day
Repeat interval of: 0 minutes
Days of week: Sun, Mon, Tue, Wed, Thu, Fri, Sat
+++++++++++++++++++++++++
However as per description you will be shutdown the Server to perform the Snapshot of the server.

So I don’t think you need to stop the cluster replicator and replica task separately before shutting down the server.

So you can simply shutdown the Server and process the snapshot activity and start the Domino server once again.

I hope the above information will help in answering your queries.

Thanks & Regards
Nishant Shendre