Problems with Acculteration Replication Tutorial

21 views
Skip to first unread message

Kevin Toppenberg

unread,
Jan 30, 2026, 3:07:39 PM (12 days ago) Jan 30
to Everything MUMPS
I'm following the acculturation guide.  I have set up the machine from sourced virtual machine (VM), and got all the exercises working. 

Then, as directed, I duplicated the machines to santiago, melbourne, and paris.

The next step is:
ydbuser@santiago:~/jnlex$ ./replicating_start 
Wed Apr 13 15:49:46 2022 : Initiating START of source server for secondary instance [dummy] ydbuser@santiago:~/jnlex$

But this is not working for me:

ydbuser@santiago:~/jnlex$ source jnlex_env
ydbuser@santiago:~/jnlex$ ./replicating_start
Fri Jan 30 17:05:50 2026 : Initiating START of source server for secondary instance [dummy]
Fri Jan 30 17:05:50 2026 : Source server startup failed. See source server log file
Fri Jan 30 17:05:50 2026 : Journal pool shared memory removed
Fri Jan 30 17:05:50 2026 : Journal pool semaphore removed
%YDB-E-NOJNLPOOL, No journal pool info found in the replication instance of /home/ydbuser
/jnlex/santiago.repl
ydbuser@santiago:~/jnlex$ cat replicating_start
#!/bin/sh
$ydb_dist/mupip replicate -source -start -passive -instsecondary=dummy -buffsize=1048576 -log=$ydb_dir/source_dummy.log
$ydb_dist/mupip replicate -receive -start -listenport=3000 -buffsize=1048576 -log=$ydb_dir/receive_`date +%Y%m%d:%H:%M:%S`.log

ydbuser@santiago:~/jnlex$ 


It says, "No journal pool info found", But I don't understand what this is trying to tell me.   Can anyone help? 

Thanks in advance. 

Kevin T


Kevin Toppenberg

unread,
Jan 30, 2026, 3:30:07 PM (12 days ago) Jan 30
to Everything MUMPS
More info on this issue, I did create the instance per the instructions.  Below I tried doing it again, and it shows that the prior was there. 

dbuser@santiago:~/jnlex$ mupip replicate -instance_create
%YDB-I-FILERENAME, File /home/ydbuser/jnlex/santiago.repl is renamed to /home/ydbuser/jnl
ex/santiago.repl_2026030170909


And here is the environmental file that I source first. 

ydbuser@santiago:~/jnlex$ cat jnlex_env
export ydb_dist=$(dirname $(realpath /usr/local/bin/ydb))
export ydb_routines=". $ydb_dist/utf8/libyottadbutil.so"
alias yottadb=$ydb_dist/yottadb
alias mupip=$ydb_dist/mupip
export ydb_dir=$HOME/jnlex
export ydb_gbldir=$ydb_dir/ydb.gld
export ydb_chset=utf-8
export LC_ALL=C.UTF-8
export ydb_icu_version=$(pkg-config --modversion icu-io)
export ydb_principal_editing=EDITING
export ydb_repl_instance=$ydb_dir/santiago.repl
export ydb_repl_instname=santiago


Here is my directory:

ydbuser@santiago:~/jnlex$ ls -l
total 25244
-rw-rw-rw- 1 ydbuser ydbuser 24717312 Jan 30 17:09 %ydbaim.dat
-rw-rw-rw- 1 ydbuser ydbuser    69632 Jan 30 14:51 %ydbaim.mjl
-rw-rw-rw- 1 ydbuser ydbuser  4612096 Jan 30 17:09 %ydbjnlf.dat
-rw-rw-rw- 1 ydbuser ydbuser 24717312 Jan 30 17:09 %ydbocto.dat
-rw-rw-rw- 1 ydbuser ydbuser    69632 Jan 30 15:59 %ydbocto.mjl
lrwxrwxrwx 1 ydbuser ydbuser       12 Jan 29 19:34 V7.0-005_x86_64 -> r2.02_x86_64
-rw-rw-rw- 1 ydbuser ydbuser  4612096 Jan 30 17:09 brunnich.dat
-rw-rw-rw- 1 ydbuser ydbuser    69632 Jan 30 15:59 brunnich.mjl
-rw-r--r-- 1 ydbuser ydbuser      459 Jan 30 16:41 jnlex_env
-rw-rw-rw- 1 ydbuser ydbuser  4612096 Jan 30 17:09 linnaeus.dat
-rw-rw-rw- 1 ydbuser ydbuser    69632 Jan 30 15:59 linnaeus.mjl
-rw-r--r-- 1 ydbuser ydbuser     2560 Jan 29 19:14 mumps.gld
-rwxr-xr-x 1 ydbuser ydbuser      102 Jan 30 16:00 originating_stop
drwxr-xr-x 2 ydbuser ydbuser     4096 Jan 29 19:34 r
drwxr-xr-x 5 ydbuser ydbuser     4096 Jan 29 19:34 r2.02_x86_64
-rwxr-xr-x 1 ydbuser ydbuser      258 Jan 30 16:00 replicating_start
-rwxr-xr-x 1 ydbuser ydbuser      158 Jan 30 16:01 replicating_stop
-rw-r--r-- 1 ydbuser ydbuser     2048 Jan 30 17:09 santiago.repl
-rw-r--r-- 1 ydbuser ydbuser     2048 Jan 30 17:05 santiago.repl_2026030170909
-rw-r--r-- 1 ydbuser ydbuser      905 Jan 30 17:09 source_dummy.log
-rw-rw-rw- 1 ydbuser ydbuser  4612096 Jan 30 17:09 ydb.dat
-rw-r--r-- 1 ydbuser ydbuser    13824 Jan 29 21:08 ydb.gld
-rw-rw-rw- 1 ydbuser ydbuser    69632 Jan 30 15:59 ydb.mjl



Regarding the error, this is what the documentation says:

NOJNLPOOL

NOJNLPOOL, No journal pool info found in the replication instance of xxxx

Run Time/MUPIP Error: This indicates that YottaDB/MUPIP did not get replication information from the instance file specified. Replication instance file was not initialized because replication did not start, or some other process reset the replication instance file.

Action: Start the source server if it was not started. Note that the first Source Server process creates the Journal Pool. Subsequent Source Server processes use the Journal Pool that the first Source Server process creates. If the source server was running, stop the server and perform an optimum recovery using MUPIP JOURNAL -ROLLBACK -BACKWARD "*" and restart the Source Server. If optimum recovery command fails, perform a MUPIP RUNDOWN (or a MUPIP RUNDOWN -REGION "*" ), and then restart the Source Server.

I wondered if this was a networking between the various VM's.  So I tried also starting the source VM (paris).  But it failed.  So below see that I tried changing the ip address from 10.0.2.2 to localhost.  It didn't work, so I again tried 10.0.2.2

ydbuser@paris:~/jnlex$ ls -al *.repl
-rw-r--r-- 1 ydbuser ydbuser 2048 Jan 30 20:56 paris.repl
ydbuser@paris:~/jnlex$ mupip replicate -source -start -instsecondary=santiago -secondary=localhost:4000 -buffsize=1048576 -log=/home/ydbuser/jnlex/santiago_`date +%Y%m%d:%H:%M:%S`.lo
Fri Jan 30 21:20:51 2026 : Initiating START of source server for secondary instance [santiago]
Fri Jan 30 21:20:51 2026 : Source server startup failed. See source server log file
Fri Jan 30 21:20:51 2026 : Journal pool shared memory removed
Fri Jan 30 21:20:51 2026 : Journal pool semaphore removed
ydbuser@paris:~/jnlex$
ydbuser@paris:~/jnlex$ mupip replicate -source -start -instsecondary=santiago -secondary=10.0.2.2:4000 -buffsize=1048576 -log=/home/ydbuser/jnlex/santiago_`date +%Y%m%d:%H:%M:%S`.lo
Fri Jan 30 21:22:46 2026 : Initiating START of source server for secondary instance [santiago]
Fri Jan 30 21:22:46 2026 : Source server startup failed. See source server log file
Fri Jan 30 21:22:46 2026 : Journal pool shared memory removed
Fri Jan 30 21:22:46 2026 : Journal pool semaphore removed
ydbuser@paris:~/jnlex$ 


I wondered if 10.0.2.2 was correct, but it seems to be.  On first connection via ssh, I get this:

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Fri Jan 30 20:35:43 2026 from 10.0.2.2

I am using virtualbox on my linux machine because I can't use kvm unless I stop using virtualbox (they conflict).  But I think I have the port forwarding properly.  For example, here is the port forwarding for santiago.  

Screenshot from 2026-01-30 15-28-27.png


The error message also says to check the source server log file, but I don't know how to do this. 

KT

Kevin Toppenberg

unread,
Jan 30, 2026, 3:42:59 PM (12 days ago) Jan 30
to Everything MUMPS
Looking in the file source_dummy.log, I find this:

%YDB-E-REPLOFFJNLON, Replication state for database file /home/ydbuser/jnlex/%ydbaim.dat is OFF but journaling state is enabled
Fri Jan 30 17:37:54 2026 : Source server exiting...

These globals came automatically when I went through the steps from the guide.  But there is not mention of them in the tutorial.  Is it possible that scripts have added something unexpected??

Also, I don't think I previously showed the replication_start script that I created according to the tutorial


ydbuser@santiago:~/jnlex$ cat replicating_start
#!/bin/sh
$ydb_dist/mupip replicate -source -start -passive -instsecondary=dummy -buffsize=1048576 -log=$ydb_dir/source_dummy.log
$ydb_dist/mupip replicate -receive -start -listenport=3000 -buffsize=1048576 -log=$ydb_dir/receive_`date +%Y%m%d:%H:%M:%S`.log


KT

Kevin Toppenberg

unread,
Jan 30, 2026, 3:58:40 PM (12 days ago) Jan 30
to Everything MUMPS
ChatGPT was able to help me get past the error. 

What happened is exactly consistent:

  • NOJNLPOOL on santiago meant: santiago.repl existed but was not initialized.

  • Running, on santiago:

    • mupip set -replication=on -region "*"

    • mupip replicate -instance_create -name=santiago
      initialized the journal pool metadata in the instance file, so the source/receiver processes can start.

  • After that, your ./replicating_start could successfully get to “Initiating START …” without immediately dying with NOJNLPOOL.

  • And you were able to start the melbourne side as well.


I don't understand how I got in that state.  I think the instructions had already turned on replication=on before the source VM was turned off and closed.  But it seems it needed to be done again after bring the machines back up. 

KT
Reply all
Reply to author
Forward
0 new messages