---
title: "Known Technology Limitations"
canonical: "https://docs.vaultspeed.com/space/VPD/3082616881/Known%20Technology%20Limitations"
format: markdown
---
Some of the technologies we support have limitations that won’t allow us to generate code for all of the options you have within VaultSpeed.  Or you need to make specific settings for those technologies.

**Table of Contents**

> Macro (toc)

## Oracle 19c Autonomous Oracle Database

#### **Schema Names**

When setting the parameter `GENERATE_SCHEMA_DEFINITIONS = Y`, schemas will be created. However, in **Oracle 19c Autonomous Oracle Datab  aase**, passwords must be at least **8 characters long**. If you create a schema with a shorter password, the database will return an error.

#### **Possible Solutions:**

1. **Manually create the required schemas** and set `GENERATE_SCHEMA_DEFINITIONS = N`.
2. **Ensure schema names are at least 8 characters long** to meet the database requirements.
3. **Modify the schema passwords** in the generated zip file to be at least **8 characters**, then re-zip the file before deployment.

## Oracle (All Versions)

### Hashing

The `NO_HASH` algorithm is not available for Oracle due to a bug in the Oracle optimizer.

### Source Loading

**FMC source loading** from **PostgreSQL to Oracle** is not available due to mismatched data type conversions in the **JDBC drivers**.

## ODI

### Special Characters

If the general timestamp/date parameter contains `:` characters, **ODI mappings will fail** because ODI interprets each `:` as a sequence indicator.

### Reserved Words

Avoid using **reserved words** in column names. **ODI cannot handle these properly**, as it does not automatically enclose column names in quotes (`""`) when an alias is used, for example:

`SELECT "comment" AS comment FROM table_a;`

This can cause errors in mappings and queries.

## Snowflake

### Hash Key Escape Character and Delimiters

The default escape character for hash keys in the parameters (`HASHKEY_ESCAPE_CHARACTER`) is `\`. This should be changed to `\\` to ensure Snowflake produces the correct results.

Additionally, `#` and `|` are **not valid** hash delimiters or escape characters in Snowflake.

### Datatype Changes

**Snowflake does not support altering column datatypes** from `NUMBER`/`DATE` to `VARCHAR`. Since `ALTER TABLE ALTER COLUMN` does not allow datatype modifications, these changes are **not yet supported**.

### Change Data Capture (CDC) Logic

**Snowflake does not support** `LAG` or `LEAD` **functions with a variable second argument**.  
Because of this limitation, `CDC_UPDATE_RECORD_ALL_ATTRIBUTES = "N"` **is not supported in Snowflake**.  
For all Snowflake sources, `CDC_UPDATE_RECORD_ALL_ATTRIBUTES` must be set to `'Y'`.

> ⚠️ **For all Snowflake sources, **`CDC_UPDATE_RECORD_ALL_ATTRIBUTES`** must be set to **`'Y'`**.**

## Spark

### Spark SQL (Cloudera) - Snapshot PITs

Spark **only supports insert-only logic**, meaning **Snapshot PITs with the recursive snapshot date view cannot be created**.

### Change Data Capture (CDC) Logic

For all Spark sources, the parameter `CDC_UPDATE_RECORD_ALL_ATTRIBUTES = Y` should be set.

### Automatic Deployment

Currently, **auto-deployment only works for DDL**. While **Hive tables can be deployed**, Spark SQL scripts will be stored in files and not automatically executed.

### Timestamp Formats

Ensure that timestamp formats **follow the Spark SQL standard** and update them accordingly. Refer to the official documentation:  
🔗 [Spark SQL Datetime Patterns](https://spark.apache.org/docs/latest/sql-ref-datetime-pattern.html)

## Databricks

### Hash Key Escape Character and Delimiters

The default escape character for hash keys in the parameters (`HASHKEY_ESCAPE_CHARACTER`) is `\`. This should be changed to `\\` to ensure Spark produces the correct results.

### Change Data Capture (CDC) Logic

For all Spark sources, the parameter `CDC_UPDATE_RECORD_ALL_ATTRIBUTES = Y` should be set.

### Timestamp Formats

Ensure timestamp formats follow **Spark SQL standards** and update them accordingly. Refer to the official documentation:  
🔗 [Spark SQL Datetime Patterns](https://spark.apache.org/docs/latest/sql-ref-datetime-pattern.html)

### Parallel HUB Loading

Loading the **same HUB table from multiple source tables in parallel** is **not supported** in Databricks. A possible workaround is to **create a partition on the HUB table** (e.g., `PARTITION BY SRC_BK`).

### Restarting Failed Jobs (on Azure Data Factory)

Databricks **does not have an automatic rollback function**. If a job fails, **manually clean up any partially loaded data** before restarting or continuing the load.

### Restarting Failed Jobs

Restart **only the failed jobs** and complete any in-progress loads. **Do not restart the entire load**, as this will generate a **new **`load_cycle_id`.

### Databricks Runtime Compatibility **– **`setContext()`

In Databricks Runtime 16.4 LTS (Spark 3.5.2, Scala 2.12), the function `setContext()` is not supported.  
When called, it may return the following runtime error:

```
setContext() is currently not supported 
```

> 📝 **Note:**  
> 📝 **Impact:** Affects a small number of generated components that use `dbutils.notebook.setContext(ctx)`, mainly Azure Data Factory batching functions. Other processes are unaffected.
> 📝 
> 📝   
> 📝 **Workarounds:** Running on Databricks **15.4 LTS** avoids this issue. We are assessing updates to ensure compatibility with both **15.4 and 16.4 LTS**.
> 📝 
> 📝   
> 📝 **Status:** This limitation is under review. Further updates will be provided as soon as a confirmed solution is available.

## Google Bigquery

### Source Loading

When using **Airflow** with the **source loading option** to load data into BigQuery, ensure that both the **source and target**use the **JDBC driver version **`1.2.21.1025`.

This prevents the following error:

`TRUNCATE TABLE statement is not supported in transactions`

## SingleStore

### Datatype Changes

SingleStore does not support **changing a column’s datatype** from `NUMBER`/`DATE` to `VARCHAR` using the standard SQL statement:

`ALTER TABLE <table_name> MODIFY COLUMN <column_name> <datatype>; `

### Unique Keys

SingleStore **does not support multiple unique key constraints** on objects. Because of this, setting the parameter `STORE_HUB_HASH_KEYS_IN_LINK_SAT = Y` may have a **performance impact**, as it relies on multiple unique keys on some objects.


## JDBC Metadata Harvesting

### Collation Changes

Changing **collations** in a source database where metadata is harvested through the **VaultSpeed agent** is **not supported**.

This limitation exists because **JDBC drivers** typically do not support handling **different collations** between the database and server levels.