wiki:Doc/SCDB/FAQ

Frequently Asked Questions about SCDB

ant usage

java.lang.NoClassDefFoundError: org/apache/tools/ant/launch/Launcher (11/2/07)

If you get this error when trying to use ant, that probably means you have version conflict between ant version distributed as part of SCDB (in external/) and another version installed on the same machine. This happens if you have a file /etc/ant.conf created by the non SCDB version.

To clear the problem, remove /etc/ant.conf and upgrade the non SCDB ant to the same version as SCDB.

java.lang.NullPointerException during the deploy (11/2/07)

One possible reason for this error is an incompatibility between the version of JavaSVN used by ant deploy and the version of the SVN client you use to commit your changes. This happens is one of them is older than SVN 1.4 and the other is greater or equal to 1.4, because of a metadata format change in workspace introduced in SVN 1.4. As a result a workspace cannot be read and modified by both pre 1.4 and 1.4 or later SVN clients (this is clearly stated in SVN 1.4 release notes).

At the time of this writing SCDB is still using a pre 1.4 JavaSVN version. You should not upgrade your other SVN clients on Quattor server and the machines you use to administer SCDB to a version greater or equal to 1.4. If you upgraded by mistake, you should revert to an older version of SVN client (the version of the server doesn't matter) and you need to delete and recreate all the workspaces that could have been upgraded by a SVN 1.4+ client, including `/root/quattor/svncache' used by Quattor server.

java.lang.NullPointerException during the deploy with eclipse (11/2/07)

If you follow the updates for eclipse 3.2, then the subversion client installed inside of eclipse will be compatible with the svn 1.4 client. The causes the NPE in the deploy because of a mismatch in the formats of the working copies. To continue using eclipse, you must upgrade to the latest version of JavaSVN which is now called SVNKit. Once installed, create a quattor.build.properties file in your working copy and define the following properties:

javasvn.jar = ${basedir}/external/svnkit-1.1.1/svnkit.jar
javasvn-javahl.jar = ${basedir}/external/svnkit-1.1.1/svnkit-javahl.jar
jsch.jar = ${basedir}/external/svnkit-1.1.1/svnkit.jar 

where they point to the actual location of the jar files. The jsch.jar is no longer a dependency but must be set to an existing jar file; repeating the svnkit.jar definition works and is harmless.

Deploy failure

Failed to switch SVN cache to new tag: url1 is not the same repository as url2

This error means you have an existing working copy of your Quattor repository on the Quattor deployment server that was checked out from a repository different from the one defined in /etc/quattor-deploy.conf (option repository_url in [scdb] section). A common mistake is to use http in one case and https in the other one which leads SVN to consider they are different repositories.

Depending on the URL you really want to use, either fix the configuration file or remove the existing working copy. If removing the working copy, be sure to remove the directory, not only its contents (as you may leave some hidden directories).

The location of the working copy is defined in /etc/quattor-deploy.conf (svn_cache option in [build-tag] section). If not defined, the default location is svncache directory in the parent directory of build-tag.py location (/root/quattor/svncache by default).

Unable to get information on tags branch

If you get this error at the beginning of the deploy phase when executing ant deploy and you have no compatibility problem between the SVN client version you use and the one embedded in ant tools( external/svnkit), this means you don't have valid cached credentials to access the tags branch in your configuration database that can be used by svnkit, the SVN client used by ant. To fix the problem, try to write to tags branch using jsvn utility provided in external/svnkit. You can use the following commands as an example, changing the URLs to match your configuration database:

external/svnkit/jsvn cp htpp://quattorsrv.example.org/quattor/trunk htpp://quattorsrv.example.org/quattor/tags/test -m 'Deploy test'

When executing this command, you should be asked to enter your credentials (userid and password). Note that depending on your exact actual configuration, you may have to define environment variable JAVA_HOME to reflect the directory containing bin/java.

After doing the previous step, check it works by trying to remove the previously created branch. This should work without jsvn asking you your credentials.

external/svnkit/jsvn rm htpp://quattorsrv.example.org/quattor/tags/test -m 'Remove test'

AII Issues

AII is the Quattor subsystem handling initial installation of machines. It has nothing specific to either SCDB or QWG templates, even though it is well integrated with both of them (see OS Templates documentation about how to configure it). Entries in this fact are only about interaction problems between SCDB and AII.

aii-shellfe: No node matches xxx

When using aii-shellfe to configure a machine for initial installation, you may get an error message similar to the following one:

bash> aii-shellfe --configure mynode.example.org
[ERROR] No node matches mynode(.example.org)?

This usually means either you forgot to deploy your configuration before running the command or you made a spelling error with the machine name. You can check if a .xml file for the machine name you entered exists in the directory referred to by variable osinstalldir in /etc/aii/aii-shellfe.conf on your deployment server.

Under very rare circumstances, it may happen the .xml file exists but you still get the error. In this particular case, try to remove the file profiles-info.xml in the same directory and redeploy your configuration with the command:

external/ant/bin/ant deploy

SCDB with Eclipse

WARNING: missing modifyThread permission

Look at PAN compiler FAQ. Short summary : use Java 1.6 and configure Eclipse to use it (Windows->Preferences->Jave->Installed JREs).

Last modified 10 years ago Last modified on Jul 22, 2014, 11:03:29 AM