GPSS v2.0.1 ignores Schema in YAML during Merge mode upsert check, causing "Table Does Not Exist" error
search cancel

GPSS v2.0.1 ignores Schema in YAML during Merge mode upsert check, causing "Table Does Not Exist" error

book

Article ID: 397843

calendar_today

Updated On:

Products

VMware Tanzu Data Suite VMware Tanzu Greenplum VMware Tanzu Greenplum / Gemfire

Issue/Introduction

GPSS executes an internal check to determine whether upsert is supported on the target table. However, this check ignores the schema defined in the job configuration.

Instead of resolving the fully qualified table name (e.g. gss_schema.result_data), GPSS uses "search_path" settings to find the schema for the table result_data.

This leads to errors such as:

[ERROR] error when check if upsert is supported, err: pq: relation "result_data" does not exist

 

This happens even though the table does exist in the specified schema (gss_schema) and is fully accessible by the GPSS user.

Yaml Example:

targets:
- gpdb:
    user: user01
    database: test_db
    schema: gss_schema
    ...
    tables:
    - table: result_data
      schema: test_schema
      mode:
        merge:
          match_columns: [...]
          update_columns: [...]

 

Even though the table is fully qualified in YAML, GPSS attempts to locate <search_path>.result_data.

Resolution

Workaround:

Explicitly set the search path for the GPSS user:

ALTER ROLE user01 SET search_path = test_schema, public;

This allows GPSS to resolve the table correctly via the PostgreSQL search path mechanism.

 

Fix:

As of January 2026 a fix will be released in the next version of GPSS.