Help Upgrading 12.10.10 LTS (Debian 9/xwiki-tomcat8-mysql) to 13.10.2 LTS

See following upon execution:

apt-get install xwiki-tomcat8-mysql
Reading package lists… Done
Building dependency tree
Reading state information… Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
xwiki-tomcat8-mysql : Depends: xwiki-mysql-common (= 13.10.2) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

A few weeks ago tried upgrading to Tomcat 9, and/or Debian 10 or 11 but had similar issues so I figured I just wait for next LTS release and try it. All attempts via VM clones reverted back to original so no left over failed attempts. Prior to 12.10.10 was 11.10.10 LTS which seem to upgrade fine without issues.

And when I tried xwiki-tomcat9-mysql similar to above except:

The following packages have unmet dependencies:
xwiki-tomcat9-mysql : Depends: xwiki-mysql-common (= 13.10.2) but it is not going to be installed
: Depends: xwiki-tomcat9-common (= 13.10.2) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Currently running:

Debian 9.12
NGINX 1.18
XWiki 12.10.10 LTS
Tomcat8
mysql-server 5.5.9999+default and mysql-common 5.8+1.0.2
Java 1.8.0_312
Extensions: XWiki Standard Flavor, Tabs Macro, Map Macro, Attachment Gallery Macro, XCarousel, Carousel Macro, and GDPR Cookie Consent (all up to date). Had tried some others but uninstalled them in the past like Matomo Application.

deb http://ftp.us.debian.org/debian/ stretch main
deb-src http://ftp.us.debian.org/debian/ stretch main

deb http://security.debian.org/debian-security / stretch/updates main
deb-src Index of /debian-security stretch/updates main

deb http://ftp.us.debian.org/debian/ stretch-updates main
deb-src http://ftp.us.debian.org/debian/ stretch-updates main

deb Index of /packages/debian/ stretch nginx
deb-src Index of /packages/debian/ stretch nginx

deb https://maven.xwiki.org lts/

So what am I missing or doing wrong?

Feels like you configured the xwiki packages to be on hold (in which case it will refuse to install any new version as dependency unless you explicitly list them in the apt command line).

What does the following tell you

dpkg --get-selections | grep hold

What does the following tell you

dpkg --get-selections | grep hold

Nothing.
But doing it without grep listed all “install” except the following:

icedtea-netx-common                     deinstall
linux-image-4.9.0-12-amd64              deinstall
linux-image-4.9.0-13-amd64              deinstall
linux-image-4.9.0-14-amd64              deinstall
linux-image-4.9.0-7-amd64               deinstall

Thanks for the help.

Do you get more info with “apt upgrade” or “apt dist-upgrade” ?

Do you get more info with “apt upgrade” or “apt dist-upgrade” ?

Yes

apt upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following package was automatically installed and is no longer required:
  linux-image-4.9.0-15-amd64
Use 'apt autoremove' to remove it.
The following packages have been kept back:
  xwiki-common xwiki-tomcat8-common
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.

And

apt dist-upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following packages were automatically installed and are no longer required:
  authbind dbconfig-common default-mysql-server galera-3 libaio1 libcgi-fast-perl libcgi-pm-perl libcommons-dbcp-java
  libcommons-pool-java libconfig-inifiles-perl libdbd-mysql-perl libdbi-perl libecj-java libfcgi-perl libhtml-template-perl
  libjemalloc1 libmariadbclient18 libreadline5 libtcnative-1 libterm-readkey-perl libtomcat8-java linux-image-4.9.0-15-amd64
  mariadb-client-10.1 mariadb-client-core-10.1 mariadb-common mariadb-server-10.1 mariadb-server-core-10.1 mysql-common
  mysql-server rsync socat tomcat8 tomcat8-common xwiki-common xwiki-tomcat8-common
Use 'apt autoremove' to remove them.
The following packages will be REMOVED:
  xwiki-mysql-common xwiki-tomcat8-mysql
The following packages will be upgraded:
  xwiki-common xwiki-tomcat8-common
2 upgraded, 0 newly installed, 2 to remove and 0 not upgraded.
Need to get 296 MB of archives.
After this operation, 3,617 kB disk space will be freed.
Do you want to continue? [Y/n] n
Abort.

So recommendations?

Ha, I know what’s wrong, actually.

In short, your problem is Installation using Debian (.DEB) packages (XWiki.org).

APT (in its very unclear way) refuse to install xwiki-mysql-common because it now requires either mysql-server >= 5.7 or mariadb-server >= 10.2 and Debian 9 standard repo provides only older versions.

My recommendation would be to install a more recent version of MariaDB server using the repository provided by the MariaDB project and (would also be a good idea to also take this opportunity to install xwiki-tomcat8-mariadb instead of xwiki-tomcat8-mysql). Not that if you want to install the -tomcat9- version of the package you will need the stretch-backports repository I think since stretch only provided tomcat8 (but there is no real reason to use tomcat9 over tomcat8 currently).