> For the complete documentation index, see [llms.txt](https://docs.soda.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.soda.io/soda-documentation/soda-v3/data-source-reference/connect-troubleshoot.md).

# Troubleshoot data source connections

## SSL certificate error

**Problem:** You encounter an SSL certificate error while attempting to connect Soda to a data source.

**Solution:** Use `pip install pip-system-certs` to potentially resolve the issue. This install works to resolve the issue only on Windows machines where the Ops team installs all the certificates needed through Group Policy Objects, or similar.

## Snowflake proxy connection error

**Problem:** While attempting to connect Soda to a Snowflake data source using proxy parameters, you encounter an error that reads something similar to `Could not connect to data source "name_db": 250001 (08001): Failed to connect to DB: mydb.eu-west-1.snowflakecomputing.com:443. Incoming request with IP/Token xx.xxx.xx.xxx is not allowed to access Snowflake.`

```yaml
data_source: my_data_source
  type: snowflake
  ...
  session_param:
    QUERY_TAG: soda-test
    QUOTED_IDENTIFIERS_IGNORE_CASE: false
  proxy_http: http://a-proxy-o-dd-dddd-net:8000
  proxy_https: https://a-proxy-o-dd-dddd-net:8000
```

**Solution:** When connecting to a Snowflake data source by proxyy, be sure to set the new proxy environment variables from the command-line using export statements, as in the following example.

```sh
export HTTP_PROXY=http://a-proxy-o-dd-dddd-net:8000
export HTTPS_PROXY=https://a-proxy-o-dd-dddd-net:8000
```

## Spark DataFrame object error

**Problem:** Using a Soda package for Spark df, you encounter an error that reads, `ERROR | Error occurred while executing scan. | 'DataFrame' object has no attribute 'offset'`.

**Solution:** Be sure to upgrade your version of PySpark to 3.4.0 or greater for compatibility with Soda packages.

## ImportError during programmatic scan

**Problem:** When importing Soda scan, you get an error that reads, `ImportError: cannot import name 'field_validator' from 'pydantic'...`.

**Solution:** This error typically emerges when your environment is using pydantic v1 instead of v2. Soda requires pydantic v2 to work and this is correctly set via installation requirements in the package, however Python allows you to override those requirements. Use `pip list | grep "pydantic"` to determine which version you are using and upgrade as necessary.

<br>

## Scan error with Soda Dask and Pandas

**Problem:** You encounter errors when trying to install `soda-pandas-dask` in an environment that uses Python 3.11. This may manifest as an issue with dependencies or as an error that reads, `Pre-scan validation failed, see logs for details.`

**Workaround:** Uninstall the `soda-pandas-dask` package, then downgrade the version of Python your environment uses to Python 3.9. Install the `soda-pandas-dask` package again.

<br>

## Go further

* Access [Troubleshoot SodaCL](/soda-documentation/soda-v3/sodacl-reference/troubleshoot.md) for help resolving issues running scans with SodaCL.

> Need help? Join the [Soda community on Slack](https://community.soda.io/slack).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.soda.io/soda-documentation/soda-v3/data-source-reference/connect-troubleshoot.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
