FAQ and Troubleshooting
Troubleshooting
Space On-Premises pods don't use the updated configuration (Kubernetes installation)
Symptoms:
After you update the configuration of Space On-Premises pods, the pods continue using previous configuration.
Possible cause:
The environment variable files used to configure Space are enabled dynamically, which makes it difficult to calculate the checksum of the file using Helm.
Solution:
Get the names of the Space deployment objects:
kubectl -n ${KUBE_NAMESPACE} get deployments -l app.kubernetes.io/name=space --output=jsonpath={..metadata.name}Gracefully shutdown all pods related to the objects from step 1:
for deployment in $(kubectl -n ${KUBE_NAMESPACE} get deployments -l app.kubernetes.io/name=space --output=jsonpath={..metadata.name}); do kubectl -n ${KUBE_NAMESPACE} scale deploy ${deployment} --replicas=0 doneRestart the Space deployment objects:
for deployment in $(kubectl -n ${KUBE_NAMESPACE} get deployments -l app.kubernetes.io/name=space --output=jsonpath={..metadata.name}); do kubectl -n ${KUBE_NAMESPACE} scale deploy ${deployment} --replicas=1 done
Error "Using of local IP address is not allowed" when importing/mirroring a Git repository
Symptoms:
When you try to import/mirror a Git repository, you get the following error: "Using of local IP address is not allowed".
Possible cause:
Most likely, the Git server is hosted in a local network. By default, the Space VCS service denies access to local network addresses.
Solution:
To resolve this issue, allow the VCS service to access all network addresses. The exact steps depend on the type of your Space installation.
Add the parameter vcs.git.mirror.any=true
to the vcs.on-premises.properties
file.
Set the parameter vcs.mirrorAny: true
in the values.yaml
file.
Error "javax.crypto.BadPaddingException" during Space installation
Symptoms:
When starting the Space installation, you get the error message: javax.crypto.BadPaddingException: Given final block not properly padded. Such issues can arise if a bad key is used during decryption.
Possible cause:
Most likely, the masterSecret
value in the space.on-premises.conf
file was initially set to one value and later changed, while the database remains unchanged.
Solution:
Try one of the following:
Change the
masterSecret
value in thespace.on-premises.conf
file back to its original value.Drop the existing database and start a new installation using the updated
masterSecret
value.
Error "java.util.concurrent.CancellationException: Transaction lifetime was terminated" during Space installation
Symptoms:
When starting the Space installation, you get the error message: java.util.concurrent.CancellationException: Transaction lifetime was terminated.
Possible cause:
The database migration process takes longer than expected, causing a timeout.
Solution:
Extend the timeout limit by adding the specified Java parameter to your installation configuration:
Add -Dcirclet.db.migration.timeout=360000
to the services.space.environment.JAVA_OPTS
section of the docker-compose.yml
file.
Add -Dcirclet.db.migration.timeout=360000
to the space.extraJavaOpts
section of the values.yaml
file.
Error "javax.net.ssl.SSLHandshakeException: PKIX path building failed" when accessing externally-hosted resources from Space
Symptoms:
When trying to access externally-hosted resources such as Git or package repositories from Space, you get the error message: avax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target.
Possible cause:
Most likely, the external services use self-signed certificates. Space fails to verify these certificates using its built-in truststore.
Solution:
Import the problematic certificate atop the current
cacerts
file provided by Java. Here you can find the detailed instructions.After preparing the
cacerts
file, mount it to the relevant Space containers and instruct Java to use this file instead of the default one. To do this, update your configuration as follows:services: space: volumes: - /path/to/truststore:/container/path/to/truststore environment: JAVA_OPTS: "-Djavax.net.ssl.trustStore=/path/to/truststore”