> For the complete documentation index, see [llms.txt](https://docs.collibra.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.collibra.com/data-quality-self-hosted/installation/upgrade-data-quality-observability-self-hosted/troubleshooting-the-upgrade.md).

# Troubleshooting the upgrade

{% tabs %}
{% tab title="Standalone" %}

### No such file or directory error

If you receive a `Cannot run program "/opt/owl/bin/owlcheck": error=2, No such file or directory` error, follow these steps to verify that `sparksubmitmode=native`.

```
# 1 Stop the agent:
cd $OWL_BASE/owl/bin
./owlmanage.sh stop=owlagent
 
# 2 Check that sparksubmitmode=native in the agent.properties file:
sparksubmitmode=native
sparkhome=</your/spark/home/folder> 
 
# 3 Restart the agent:
./owlmanage.sh start=owlagent
 
# 5 Verify that agent.properties contains the correct details.
cd $OWL_BASE/owl/config
cat $OWL_BASE/owl/config/agent.properties
```

### Unable to log in after upgrade

If you attempt to log in and receive the following error message:

`Error during login. Please refresh the page and try again`

The issue may be related to how Spring Boot handles forwarded headers. To resolve this issue, add the following line to `owl-env.sh`:

```
export SERVER_FORWARD_HEADERS_STRATEGY=FRAMEWORK
```

### Java error after upgrade

If you receive the following error message after upgrading:

```
java.lang.ClassNotFoundException: org.bouncycastle.asn1.ASN1Encodable
```

The issue may be related to a missing dependency. To resolve this issue, follow these steps:

```
cd $OWL_HOME/bin/
 
mkdir external
 
cd external
wget https://repo1.maven.org/maven2/org/bouncycastle/bcprov-jdk18on/1.78.1/bcprov-jdk18on-1.78.1.jar
 
----------------------------
# Edit the owlmanage.sh script.
# Enter below line after line 13
bcprov="$(ls $INSTALL_PATH/bin/external/bcprov-*.jar 2>/dev/null || true)"
 
# Update the start_owlweb() function command with below (Replace the existing one)
$JAVA_HOME/bin/java -Xms2g -Xmx2g -Dcdjd.io.netty.tryReflectionSetAccessible=true -Djava.system.class.loader=com.owl.web.config.DQClassLoader -Djdk.tls.ephemeralDHKeySize=2048 -DowlAppender=owlRollingFile -DowlLogFile=owl-web -Dlog4j.configurationFile=file://$INSTALL_PATH/config/log4j2.xml $EXTRA_JVM_OPTIONS -cp $owlweb:$bcprov org.springframework.boot.loader.JarLauncher --server.session.timeout=$TIMEOUT --logging.level.org.springframework=$SPRING_LOG_LEVEL --owlbase.path=$base_path --server.port=$PORT >> $INSTALL_PATH/log/owl-web.log 2>&1 & echo $! >$INSTALL_PATH/pids/owl-web.pid
 
-----------------------------
# Stop and Start the DQ web service
```

{% endtab %}

{% tab title="Cloud Native" %}
This section shows the most common commands to run when troubleshooting a Collibra DQ environment that is deployed on Kubernetes.

```
### Provide documentation on syntax and flags in the terminal
 
kubectl help
 
### To see how to use Kubernetes resources
 
kubectl api-resources -o wide
```

### Viewing Kubernetes Resources

```
### Get Pods, their names & details in all Namespaces
 
kubectl get pods -A -o wide
 
### Get all Namespaces in a cluster
 
kubectl get namespaces
 
### Get Services in all Namespaces
 
kubectl get services -A -o wide
 
### List all deployments in all namespaces:
 
kubectl get deployments -A -o wide
```

### Logs & Events

```
### List Events sorted by timestamp in all namespaces
 
kubectl get events -A --sort-by=.metadata.creationTimestamp
 
### Get logs from a specific pod:
 
kubectl logs [my-pod-name]
```

### Resource Allocation

```
### If the Kubernetes Metrics Server is installed, 
### the top command allows you to see the resource consumption for nodes or podscode
 
kubectl top node
kubectl top pod
 
### If the Kubernetes Metrics Server is NOT installed, use
 
kubectl describe nodes | grep Allocated -A 10 
```

### Configuration

```
### Get current-context
 
kubectl config current-context
 
### See all configs for the entire cluster
 
kubectl config view
```

### Authorization Issues

```
### Check to see if I can read pod logs for current user & context
 
kubectl auth can-i get pods --subresource=log
 
### Check to see if I can do everything in my current namespace ("*" means all)
 
kubectl auth can-i '*' '*'
```

### Unable to log in after upgrade

If you attempt to log in and receive the following error message:

`Error during login. Please refresh the page and try again`

The issue may be related to how Spring Boot handles forwarded headers. To resolve this issue, add the following helm command:

```
--set global.web.security.forwardHeaders.strategy=FRAMEWORK
```

{% endtab %}
{% endtabs %}
