"Schema file not found" when running setup-sca or setup-sdp

This document (000020689) is provided subject to the disclaimer at the end of this document.

Environment

SUSE Linux Enterprise Server 15 all Service Packs
SUSE Linux Enterprise Server 12 SP5

Situation

When running the setup-sca or setup-sdp tools, the following error is encountered.
####################################################################
# Supportconfig Analysis Pattern Setup Tool v1.0.5
####################################################################

ERROR: Schema file not found: /usr/share/doc/packages/sca-appliance/patdev/SCAPatterns_DB.sql

The Supportconfig analysis appliance packages are installed on the system and do not report any RPM validation errors.
# rpm -V sca-appliance-patdev
# rpm -V sca-appliance-agent
# rpm -V sca-appliance-common
# rpm -V sca-appliance-broker

A listing of sca-appliance-* packages in the /usr/share/doc/packages directory shows missing files and directories. There should be a directory for each sca-appliance-* package.
# ls -l /usr/share/doc/packages/ | grep sca-
drwxr-xr-x  2 root root 4096 Mar 30  2021 sca-patterns-base

The rpm.install.excludedocs option is set to yes in /etc/zypp/zypp.conf
# grep "rpm.install.excludedocs" /etc/zypp/zypp.conf
rpm.install.excludedocs = yes

Resolution

There are two different ways to do this depending on the desired behavior for future package installations with zypper:
  1. Change the default behavior of zypper to include all documentation and re-install the sca-appliance-* packages.
  2. Manually install the sca-appliance-* packages with documentation and leave the default behavior of zypper unchanged.

Option 1 - Change the default behavior and re-install
Edit the configuration file /etc/zypp/zypp.conf. Change the rpm.install.excludedocs option from yes:
rpm.install.excludedocs = yes
to no:
rpm.install.excludedocs = no

Once this option is set and the file saved, re-install the sca-appliance-* packages.
# zypper in --force sca-appliance-*
Option 2 - Manually install documentation for only the sca-appliance-* packages
Download the needed rpm files with zypper.
zypper in --download-only --force sca-appliance-*

Re-install the files with rpm without using the --excludedocs option.
# rpm -Uvh --force /var/cache/zypp/packages/Server_Applications_Module_15_SP4_x86_64\:SLE-Module-Server-Applications15-SP4-Pool/noarch/sca-appliance-*

 

Cause

Some files designated as "documentation" in the sca-appliance-* packages are required by the setup-sdp utility. If the packages are installed without the documentation, then these files will not be present on the system and the utility will fail.

Additional Information

The downloaded rpm files in the second resolution could be placed in a different directory than the one indicated in the provided rpm -Uvh command. You can find where zypper has placed the downloaded packages by running find.
# find /var/cache/zypp/packages/ -name sca-appliance-*rpm
/var/cache/zypp/packages/Server_Applications_Module_15_SP4_x86_64:SLE-Module-Server-Applications15-SP4-Pool/noarch/sca-appliance-broker-1.3.1-1.1.noarch.rpm
/var/cache/zypp/packages/Server_Applications_Module_15_SP4_x86_64:SLE-Module-Server-Applications15-SP4-Pool/noarch/sca-appliance-common-1.3-10.1.noarch.rpm
/var/cache/zypp/packages/Server_Applications_Module_15_SP4_x86_64:SLE-Module-Server-Applications15-SP4-Pool/noarch/sca-appliance-patdev-1.3.1-1.1.noarch.rpm
/var/cache/zypp/packages/Server_Applications_Module_15_SP4_x86_64:SLE-Module-Server-Applications15-SP4-Pool/noarch/sca-appliance-agent-1.3.1-1.1.noarch.rpm

The missing documentation files are the result of the rpm install command being called with the --excludedocs option. This option is added to rpm commands run during zypper installations if the rpm.install.excludedocs option is set to yes in /etc/zypp/zypp.conf.

As the RPMs were installed with --excludedocs option, the rpm command expects the documentation files to be missing. This is why verifying their installation with rpm -V does not show any problems.

This error can also be caused by manually installing individual RPMs with the --excludedocs option. If this is the case, re-install the RPMs without specifying --excludedocs.

Disclaimer

This Support Knowledgebase provides a valuable tool for SUSE customers and parties interested in our products and solutions to acquire information, ideas and learn from one another. Materials are provided for informational, personal or non-commercial use within your organization and are presented "AS IS" WITHOUT WARRANTY OF ANY KIND.

  • Document ID:000020689
  • Creation Date: 06-Jul-2022
  • Modified Date:06-Jul-2022
    • SUSE Linux Enterprise Server

< Back to Support Search

For questions or concerns with the SUSE Knowledgebase please contact: tidfeedback[at]suse.com

SUSE Support Forums

Get your questions answered by experienced Sys Ops or interact with other SUSE community experts.

Join Our Community

Support Resources

Learn how to get the most from the technical support you receive with your SUSE Subscription, Premium Support, Academic Program, or Partner Program.


SUSE Customer Support Quick Reference Guide SUSE Technical Support Handbook Update Advisories
Support FAQ

Open an Incident

Open an incident with SUSE Technical Support, manage your subscriptions, download patches, or manage user access.

Go to Customer Center