upgrading from 2.8.1 to 4.0.0 requires 3.3.0 run twice also json2.py issue

ghbiz
81 Posts
May 10, 2026, 11:46 pmQuote from ghbiz on May 10, 2026, 11:46 pmI know the subject line is ODD to state but i have now seen this on our first Petasan cluster that has been running 2.8.1 for a long time now.
We went to upgrade it to 4.1.x and are running through the required upgrades.
We noticed a few issues.
1# json2.py
We had to modify this file and remove encoding=encoding from return json.loads section due to the following error.
TypeError: JSONDecoder.__init__() got an unexpected keyword argument 'encoding'
2# Noticed we needed to run the /opt/petasan/scripts/online-updates/update.sh script twice while on 3.3.0
The first time, it looks like it upgraded the OS from Ubuntu 20.04 to 22.04 and still stated in the end that we were running Petasan 3.3.0
Second time running the update.sh, it looks like Petasan upgraded to 4.0.0
I know the subject line is ODD to state but i have now seen this on our first Petasan cluster that has been running 2.8.1 for a long time now.
We went to upgrade it to 4.1.x and are running through the required upgrades.
We noticed a few issues.
1# json2.py
We had to modify this file and remove encoding=encoding from return json.loads section due to the following error.
TypeError: JSONDecoder.__init__() got an unexpected keyword argument 'encoding'
2# Noticed we needed to run the /opt/petasan/scripts/online-updates/update.sh script twice while on 3.3.0
The first time, it looks like it upgraded the OS from Ubuntu 20.04 to 22.04 and still stated in the end that we were running Petasan 3.3.0
Second time running the update.sh, it looks like Petasan upgraded to 4.0.0

ghbiz
81 Posts
May 11, 2026, 12:27 amQuote from ghbiz on May 11, 2026, 12:27 amHere is an example of a run. It states it is downloading 4.0.0 but in the end of the run, it shows it completed successfully yet we are still at 3.3.0. When we run the updated.sh again, we then get to 4.0.0...
root@ceph-node3:~# /opt/petasan/scripts/online-updates/update.sh Checking Ceph health... Starting version upgrade to PetaSAN 4.0.0 Downloading PetaSAN 4.0.0 upgrade package... --2026-05-10 19:49:14-- http://archive.petasan.org/repo_v3/petasan-4.0.0-upgrade.tar.gz Resolving archive.petasan.org (archive.petasan.org)... 67.20.112.233 Connecting to archive.petasan.org (archive.petasan.org)|67.20.112.233|:80... connected. HTTP request sent, awaiting response... 301 Moved Permanently Location: https://archive.petasan.org/repo_v3/petasan-4.0.0-upgrade.tar.gz [following] --2026-05-10 19:49:14-- https://archive.petasan.org/repo_v3/petasan-4.0.0-upgrade.tar.gz Connecting to archive.petasan.org (archive.petasan.org)|67.20.112.233|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 508799535 (485M) [application/x-gzip] Saving to: ‘/opt/petasan/config/petasan-4.0.0-upgrade.tar.gz’ an-4.0.0-upgrade.tar.gz 26%[============> ] 126.99M 15.9MB/s eta 24s
....
....
rocessing triggers for fontconfig (2.13.1-2ubuntu3) ... Processing triggers for libc-bin (2.35-0ubuntu3.9) ... Processing triggers for ca-certificates (20240203~22.04.1) ... Updating certificates in /etc/ssl/certs... 0 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d... done. Processing triggers for initramfs-tools (0.140ubuntu13.4) ... update-initramfs: Generating /boot/initrd.img-5.14.21-08-petasan Restarting ceph-osd.target Restarting ntp service Restarting console service Restarting SharedFS service Restarting File Sync service Restarting Node Stats service Restarting qperf service Restarting Tuning Host service Restarting iSCSI Service... Updating node info. Static hostname: ceph-node4 Icon name: computer-server Chassis: server Machine ID: 8c946573ee8f4573b5003126220738a6 Boot ID: bd061d7ac829482f99c5df4375d56589 Operating System: Ubuntu 22.04.5 LTS Kernel: Linux 5.14.21-04-petasan Architecture: x86-64 PetaSAN version: 3.3.0 Done. root@ceph-node3:~#
Here is an example of a run. It states it is downloading 4.0.0 but in the end of the run, it shows it completed successfully yet we are still at 3.3.0. When we run the updated.sh again, we then get to 4.0.0...
root@ceph-node3:~# /opt/petasan/scripts/online-updates/update.sh Checking Ceph health... Starting version upgrade to PetaSAN 4.0.0 Downloading PetaSAN 4.0.0 upgrade package... --2026-05-10 19:49:14-- http://archive.petasan.org/repo_v3/petasan-4.0.0-upgrade.tar.gz Resolving archive.petasan.org (archive.petasan.org)... 67.20.112.233 Connecting to archive.petasan.org (archive.petasan.org)|67.20.112.233|:80... connected. HTTP request sent, awaiting response... 301 Moved Permanently Location: https://archive.petasan.org/repo_v3/petasan-4.0.0-upgrade.tar.gz [following] --2026-05-10 19:49:14-- https://archive.petasan.org/repo_v3/petasan-4.0.0-upgrade.tar.gz Connecting to archive.petasan.org (archive.petasan.org)|67.20.112.233|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 508799535 (485M) [application/x-gzip] Saving to: ‘/opt/petasan/config/petasan-4.0.0-upgrade.tar.gz’ an-4.0.0-upgrade.tar.gz 26%[============> ] 126.99M 15.9MB/s eta 24s
....
....
rocessing triggers for fontconfig (2.13.1-2ubuntu3) ... Processing triggers for libc-bin (2.35-0ubuntu3.9) ... Processing triggers for ca-certificates (20240203~22.04.1) ... Updating certificates in /etc/ssl/certs... 0 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d... done. Processing triggers for initramfs-tools (0.140ubuntu13.4) ... update-initramfs: Generating /boot/initrd.img-5.14.21-08-petasan Restarting ceph-osd.target Restarting ntp service Restarting console service Restarting SharedFS service Restarting File Sync service Restarting Node Stats service Restarting qperf service Restarting Tuning Host service Restarting iSCSI Service... Updating node info. Static hostname: ceph-node4 Icon name: computer-server Chassis: server Machine ID: 8c946573ee8f4573b5003126220738a6 Boot ID: bd061d7ac829482f99c5df4375d56589 Operating System: Ubuntu 22.04.5 LTS Kernel: Linux 5.14.21-04-petasan Architecture: x86-64 PetaSAN version: 3.3.0 Done. root@ceph-node3:~#

admin
3,073 Posts
May 11, 2026, 4:03 pmQuote from admin on May 11, 2026, 4:03 pmMost probably, this is due to some additional custom packages you had installed that created issues. You can check the apt and dpkg log files.
In such case, it is best you replicate the same environment in a lab before upgrade.
Most probably, this is due to some additional custom packages you had installed that created issues. You can check the apt and dpkg log files.
In such case, it is best you replicate the same environment in a lab before upgrade.
Last edited on May 11, 2026, 4:04 pm by admin · #3
upgrading from 2.8.1 to 4.0.0 requires 3.3.0 run twice also json2.py issue
ghbiz
81 Posts
Quote from ghbiz on May 10, 2026, 11:46 pmI know the subject line is ODD to state but i have now seen this on our first Petasan cluster that has been running 2.8.1 for a long time now.
We went to upgrade it to 4.1.x and are running through the required upgrades.
We noticed a few issues.
1# json2.py
We had to modify this file and remove encoding=encoding from return json.loads section due to the following error.TypeError: JSONDecoder.__init__() got an unexpected keyword argument 'encoding'2# Noticed we needed to run the /opt/petasan/scripts/online-updates/update.sh script twice while on 3.3.0
The first time, it looks like it upgraded the OS from Ubuntu 20.04 to 22.04 and still stated in the end that we were running Petasan 3.3.0
Second time running the update.sh, it looks like Petasan upgraded to 4.0.0
I know the subject line is ODD to state but i have now seen this on our first Petasan cluster that has been running 2.8.1 for a long time now.
We went to upgrade it to 4.1.x and are running through the required upgrades.
We noticed a few issues.
1# json2.py
We had to modify this file and remove encoding=encoding from return json.loads section due to the following error.
TypeError: JSONDecoder.__init__() got an unexpected keyword argument 'encoding'
2# Noticed we needed to run the /opt/petasan/scripts/online-updates/update.sh script twice while on 3.3.0
The first time, it looks like it upgraded the OS from Ubuntu 20.04 to 22.04 and still stated in the end that we were running Petasan 3.3.0
Second time running the update.sh, it looks like Petasan upgraded to 4.0.0
ghbiz
81 Posts
Quote from ghbiz on May 11, 2026, 12:27 amHere is an example of a run. It states it is downloading 4.0.0 but in the end of the run, it shows it completed successfully yet we are still at 3.3.0. When we run the updated.sh again, we then get to 4.0.0...
root@ceph-node3:~# /opt/petasan/scripts/online-updates/update.sh Checking Ceph health... Starting version upgrade to PetaSAN 4.0.0 Downloading PetaSAN 4.0.0 upgrade package... --2026-05-10 19:49:14-- http://archive.petasan.org/repo_v3/petasan-4.0.0-upgrade.tar.gz Resolving archive.petasan.org (archive.petasan.org)... 67.20.112.233 Connecting to archive.petasan.org (archive.petasan.org)|67.20.112.233|:80... connected. HTTP request sent, awaiting response... 301 Moved Permanently Location: https://archive.petasan.org/repo_v3/petasan-4.0.0-upgrade.tar.gz [following] --2026-05-10 19:49:14-- https://archive.petasan.org/repo_v3/petasan-4.0.0-upgrade.tar.gz Connecting to archive.petasan.org (archive.petasan.org)|67.20.112.233|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 508799535 (485M) [application/x-gzip] Saving to: ‘/opt/petasan/config/petasan-4.0.0-upgrade.tar.gz’ an-4.0.0-upgrade.tar.gz 26%[============> ] 126.99M 15.9MB/s eta 24s
....
....
rocessing triggers for fontconfig (2.13.1-2ubuntu3) ... Processing triggers for libc-bin (2.35-0ubuntu3.9) ... Processing triggers for ca-certificates (20240203~22.04.1) ... Updating certificates in /etc/ssl/certs... 0 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d... done. Processing triggers for initramfs-tools (0.140ubuntu13.4) ... update-initramfs: Generating /boot/initrd.img-5.14.21-08-petasan Restarting ceph-osd.target Restarting ntp service Restarting console service Restarting SharedFS service Restarting File Sync service Restarting Node Stats service Restarting qperf service Restarting Tuning Host service Restarting iSCSI Service... Updating node info. Static hostname: ceph-node4 Icon name: computer-server Chassis: server Machine ID: 8c946573ee8f4573b5003126220738a6 Boot ID: bd061d7ac829482f99c5df4375d56589 Operating System: Ubuntu 22.04.5 LTS Kernel: Linux 5.14.21-04-petasan Architecture: x86-64 PetaSAN version: 3.3.0 Done. root@ceph-node3:~#
Here is an example of a run. It states it is downloading 4.0.0 but in the end of the run, it shows it completed successfully yet we are still at 3.3.0. When we run the updated.sh again, we then get to 4.0.0...
root@ceph-node3:~# /opt/petasan/scripts/online-updates/update.sh Checking Ceph health... Starting version upgrade to PetaSAN 4.0.0 Downloading PetaSAN 4.0.0 upgrade package... --2026-05-10 19:49:14-- http://archive.petasan.org/repo_v3/petasan-4.0.0-upgrade.tar.gz Resolving archive.petasan.org (archive.petasan.org)... 67.20.112.233 Connecting to archive.petasan.org (archive.petasan.org)|67.20.112.233|:80... connected. HTTP request sent, awaiting response... 301 Moved Permanently Location: https://archive.petasan.org/repo_v3/petasan-4.0.0-upgrade.tar.gz [following] --2026-05-10 19:49:14-- https://archive.petasan.org/repo_v3/petasan-4.0.0-upgrade.tar.gz Connecting to archive.petasan.org (archive.petasan.org)|67.20.112.233|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 508799535 (485M) [application/x-gzip] Saving to: ‘/opt/petasan/config/petasan-4.0.0-upgrade.tar.gz’ an-4.0.0-upgrade.tar.gz 26%[============> ] 126.99M 15.9MB/s eta 24s
....
....
rocessing triggers for fontconfig (2.13.1-2ubuntu3) ... Processing triggers for libc-bin (2.35-0ubuntu3.9) ... Processing triggers for ca-certificates (20240203~22.04.1) ... Updating certificates in /etc/ssl/certs... 0 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d... done. Processing triggers for initramfs-tools (0.140ubuntu13.4) ... update-initramfs: Generating /boot/initrd.img-5.14.21-08-petasan Restarting ceph-osd.target Restarting ntp service Restarting console service Restarting SharedFS service Restarting File Sync service Restarting Node Stats service Restarting qperf service Restarting Tuning Host service Restarting iSCSI Service... Updating node info. Static hostname: ceph-node4 Icon name: computer-server Chassis: server Machine ID: 8c946573ee8f4573b5003126220738a6 Boot ID: bd061d7ac829482f99c5df4375d56589 Operating System: Ubuntu 22.04.5 LTS Kernel: Linux 5.14.21-04-petasan Architecture: x86-64 PetaSAN version: 3.3.0 Done. root@ceph-node3:~#
admin
3,073 Posts
Quote from admin on May 11, 2026, 4:03 pmMost probably, this is due to some additional custom packages you had installed that created issues. You can check the apt and dpkg log files.
In such case, it is best you replicate the same environment in a lab before upgrade.
Most probably, this is due to some additional custom packages you had installed that created issues. You can check the apt and dpkg log files.
In such case, it is best you replicate the same environment in a lab before upgrade.