> For the complete documentation index, see [llms.txt](https://docs.ovaledge.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ovaledge.com/connectors/connector-repositories/data-warehouse/greenplum.md).

# Greenplum

This article outlines the integration with Greenplum, enabling streamlined metadata management through crawling, profiling, querying, data preview, data quality, and lineage building (both automatic and manual). The connector crawls schemas, tables, columns, views, functions, procedures, and indexes, supporting metadata discovery, profiling analysis, query execution, and lineage generation.

This connector connects to Greenplum using the JDBC driver and retrieves metadata from Greenplum system catalogs and information schema objects. Authentication is established using database credentials (username and password) with the permissions required to access metadata and data objects.

<div align="left"><img src="/files/mJHHWRPexQZ70uitshLl" alt="" height="396" width="624"></div>

## Overview

### Connector Details

| Connector Category                                                            | Data Warehouse                       |
| ----------------------------------------------------------------------------- | ------------------------------------ |
| OvalEdge Release Supported                                                    | Release6.3.4 and later               |
| <p>Connectivity</p><p>\[How the connection is established with Greenplum]</p> | JDBC driver                          |
| Verified Greenplum Version                                                    | Greenplum 7 (Base: PostgreSQL 12.12) |

{% hint style="info" %}
The Greenplum connector has been validated with the mentioned "Verified Greenplum Versions" and is expected to be compatible with other supported Greenplum versions. If there are any issues with validation or metadata crawling, please submit a support ticket for investigation and feedback.
{% endhint %}

### Connector Features

| Feature                                      | Availability |
| -------------------------------------------- | :----------: |
| Crawling                                     |       ✅      |
| Delta Crawling                               |       ❌      |
| Profiling                                    |       ✅      |
| Sample Profiling                             |       ✅      |
| Query Sheet                                  |       ✅      |
| Data Preview                                 |       ✅      |
| Auto Lineage                                 |       ✅      |
| Manual Lineage                               |       ✅      |
| Secure Authentication via Credential Manager |       ✅      |
| Data Quality                                 |       ✅      |
| DAM (Data Access Management)                 |       ❌      |
| Bridge                                       |       ✅      |

### Metadata Mapping

The following objects are crawled from Greenplum and mapped to the corresponding UI assets.

<table><thead><tr><th width="165">Greenplum Object</th><th width="175">Source Attribute</th><th width="171">OvalEdge Attribute</th><th width="169">OvaEdge Category</th><th width="147">OvalEdge Type</th></tr></thead><tbody><tr><td>Schema</td><td>Schema name (SCHEMA_NAME)</td><td>Schema</td><td>Databases</td><td>Schema</td></tr><tr><td>Schema</td><td>Schema comment (obj_description(oid, 'pg_namespace'))</td><td>Source Description</td><td>Databases</td><td>Schema</td></tr><tr><td>Table</td><td>Table Name (TABLE_NAME)</td><td>Table</td><td>Tables</td><td>Table</td></tr><tr><td>Table</td><td>Table Type (table_type)</td><td>Table</td><td>Tables</td><td>Table</td></tr><tr><td>Table</td><td>Table Comments(description from pg_description)</td><td>Source Description</td><td>Descriptions</td><td>Source Description</td></tr><tr><td>Columns</td><td>Column Name (COLUMN_NAME)</td><td>Column</td><td>Table Columns</td><td>columnname</td></tr><tr><td>Columns</td><td>Data Type (data_type)</td><td>Column Type</td><td>Table Columns</td><td>oecolumntype</td></tr><tr><td>Columns</td><td>Description (description from pg_description)</td><td>Source Description</td><td>Table Columns</td><td>columndescription</td></tr><tr><td>Columns</td><td>Ordinal Position (ordinal_position)</td><td>Column Position</td><td>Table Columns</td><td>-</td></tr><tr><td>Columns</td><td>Length (character_maximum_length)</td><td>Data Type Size</td><td>Table Columns</td><td>columnlength</td></tr><tr><td>Views</td><td>View Name (TABLE_NAME)</td><td>View</td><td>Tables</td><td>view</td></tr><tr><td>Views</td><td>VIEW_DEFINITION/definition (VIEW_DEFINITION)</td><td>View Query</td><td>Views</td><td>View</td></tr><tr><td>Procedures</td><td>nspname</td><td>Name</td><td>Procedures</td><td>-</td></tr><tr><td>Procedures</td><td>nspname</td><td>Source Description</td><td>Descriptions</td><td>-</td></tr><tr><td>Procedures</td><td>PROSRC</td><td>Procedure</td><td>Procedures</td><td>-</td></tr><tr><td>Functions</td><td>nspname</td><td>Name</td><td>Functions</td><td>-</td></tr><tr><td>Functions</td><td>FUNCTION_DEFINITION</td><td>Function</td><td>Functions</td><td>-</td></tr><tr><td>Functions</td><td>DESCRIPTION</td><td>Source Description</td><td>Descriptions</td><td>-</td></tr><tr><td>Indexes</td><td>Index name</td><td>Index</td><td>Indexes</td><td>Index</td></tr><tr><td>Indexes</td><td>If unique</td><td>Yes /No</td><td>Indexes</td><td>Index</td></tr></tbody></table>

## Set up a Connection

### Prerequisites

The following are the prerequisites to establish a connection:

#### **Whitelisting Ports**

Ensure the inbound port “5432” is whitelisted for OvalEdge to connect to the Greenplum database.

{% hint style="warning" %}
The default port number for Greenplum is 5432. If a different port is used, ensure that the updated port number is specified during connection setup, the port is whitelisted, and communication between the system and Greenplum is properly established.
{% endhint %}

#### **External Supporting Files**

{% hint style="info" %}
The required external JAR files are included as part of the OvalEdge installation artifacts. For driver installation and configuration details, refer to the [Connector Drivers Setup Guide](https://docs.ovaledge.com/connectors/additional-requirements/connector-drivers-setup-guide). Please contact the OvalEdge Team for assistance related to the driver files and configuration setup.
{% endhint %}

<table><thead><tr><th width="150">File Name</th><th>Description</th></tr></thead><tbody><tr><td>Greenplum 7</td><td>Use this file to enable connectivity with Greenplum. Place the file in the Third Party Jars folder. </td></tr></tbody></table>

#### **Service Account User Permissions**

{% hint style="warning" %}
It is recommended to use a separate service account to establish the connection to the data source, configured with the following minimum set of permissions.
{% endhint %}

{% hint style="info" %}
**👨‍💻 Who can provide these permissions?** These permissions are typically granted by the Greenplum administrator, as users may not have the required access to assign them independently.
{% endhint %}

<table><thead><tr><th width="128">Operation</th><th width="130">Objects</th><th width="327">Sys Tables</th><th width="179">Access Permissions</th></tr></thead><tbody><tr><td>Crawling &#x26; Profiling</td><td>Schema</td><td>pg_catalog.pg_namespace</td><td>USAGE</td></tr><tr><td>Crawling &#x26; Profiling</td><td>Schema</td><td>INFORMATION_SCHEMA.SCHEMATA</td><td>USAGE</td></tr><tr><td>Crawling &#x26; Profiling</td><td>Tables</td><td>INFORMATION_SCHEMA.TABLES</td><td>SELECT</td></tr><tr><td>Crawling &#x26; Profiling</td><td>Tables</td><td><p>pg_catalog.pg_class</p><p>pg_catalog.pg_namespace</p><p>pg_catalog.pg_exttable</p><p>pg_catalog.pg_description</p></td><td>SELECT</td></tr><tr><td>Crawling &#x26; Profiling</td><td>Tables</td><td>pg_partitions</td><td>SELECT</td></tr><tr><td>Crawling &#x26; Profiling</td><td>Table Columns</td><td><p>pg_catalog.pg_attribute</p><p>pg_catalog.pg_class</p><p>pg_catalog.pg_namespace</p><p>pg_catalog.pg_description</p></td><td>SELECT</td></tr><tr><td>Crawling &#x26; Profiling</td><td>Table Columns</td><td>INFORMATION_SCHEMA.columns</td><td>SELECT</td></tr><tr><td>Crawling, Profiling , &#x26; Lineage Building</td><td>Views</td><td>pg_views</td><td>SELECT</td></tr><tr><td>Crawling, Profiling , &#x26; Lineage Building</td><td>Views</td><td>information_schema.VIEWS</td><td>SELECT</td></tr><tr><td>Crawling, Profiling , &#x26; Lineage Building</td><td><p>Functions</p><p>&#x26;</p><p>Stored Procedures</p></td><td><p>pg_namespace</p><p>pg_language</p><p>pg_type</p><p>pg_proc</p></td><td><p>EXECUTE</p><p><br></p></td></tr><tr><td>Crawling, Profiling , &#x26; Lineage Building</td><td><p>Functions</p><p>&#x26;</p><p>Stored Procedures</p></td><td>information_schema.ROUTINES</td><td><p>EXECUTE</p><p><br></p></td></tr><tr><td>Crawling</td><td>Indexes</td><td><p>pg_index</p><p>pg_catalog.pg_attribute</p><p>pg_catalog.pg_class</p><p>pg_catalog.pg_namespace</p></td><td>SELECT</td></tr><tr><td>Crawling</td><td>Relationships</td><td><p>information_schema.key_column_usage</p><p>information_schema.referential_constraints</p></td><td>REFERENCES</td></tr></tbody></table>

### Connection Configuration Steps

{% hint style="warning" %}
Users are required to have the Connector Creator role in order to configure a new connection.
{% endhint %}

1. Log in to OvalEdge, go to Administration > Connectors, click + (New Connector), search for Greenplum, and complete the required parameters.

{% hint style="info" %}
Fields marked with an asterisk (\*) are mandatory for establishing a connection.
{% endhint %}

<table><thead><tr><th width="220">Field Name</th><th>Description</th></tr></thead><tbody><tr><td>Connector Type</td><td>By default, "Greenplum" is displayed as the selected connector type.</td></tr><tr><td>Credential Manager*</td><td><p>Select the desired credentials manager from the drop-down list. Relevant parameters will be displayed based on the selection.</p><p>Supported Credential Managers:</p><ul><li>Database</li><li>AWS Secrets Manager</li><li>HashiCorp Vault</li><li>Azure Key Vault</li></ul><p>For more details, click<a href="https://docs.ovaledge.com/connectors/additional-requirements/credential-manager-configuration"> here</a>. </p></td></tr><tr><td>License Add Ons</td><td><ul><li>Select the checkbox for Auto Lineage Add-On to build data lineage automatically.</li><li>Select the checkbox for Data Quality Add-On to identify data quality issues using data quality rules and anomaly detection.</li></ul><p>For more details, click<a href="https://docs.ovaledge.com/connectors/introduction-to-connectors/setup-and-connectivity/license-types-and-add-ons"> here</a>. </p></td></tr><tr><td>Connector Name*</td><td><p>Enter a unique name for the Greenplum connection              </p><p>(Example: "Greenplum_Prod").</p></td></tr><tr><td>Connector Environment</td><td><p>Select the environment (Example: PROD, STG) configured for the connector.</p><p>For more details, click<a href="https://docs.ovaledge.com/connectors/introduction-to-connectors/setup-and-connectivity/prerequisites#connector-environment"> here</a>.</p></td></tr><tr><td>Connector description</td><td>Enter a brief description of the connector.</td></tr><tr><td>Server*</td><td>Enter the Greenplum database server name or IP address (Example: xxxx-drgd.xxxx4ijtzasl.xx-south-1.rds.wsdef.com or 1xx.xxx.1.x0).</td></tr><tr><td>Port*</td><td>By default, the port number for Greenplum, "5432" is auto-populated. If required, the port number can be modified as per the custom port number that is configured for Greenplum.</td></tr><tr><td>Database*</td><td>Enter the database name to which the service account user has access within Greenplum.</td></tr><tr><td>Driver*</td><td>By default, the Greenplum driver details are auto-populated. </td></tr><tr><td>Username*</td><td>Enter the service account username set up to access the Greenplum database (Example: "oesauser").</td></tr><tr><td>Password*</td><td>Enter the password associated with the service account user.</td></tr><tr><td>Connection String</td><td><p>Configure the connection string for the Greenplum database:</p><ul><li>Automatic Mode: The system generates a connection string based on the provided credentials.</li><li>Manual Mode: Enter a valid connection string manually.</li></ul><p>Replace placeholders with actual database details.</p><p>{sid} refers to Database Name.</p></td></tr><tr><td>Plugin Server</td><td>Enter the server’s name when running as a plugin server.</td></tr><tr><td>Plugin Port</td><td>Enter the port number on which the plugin is running.</td></tr></tbody></table>

**Default Governance Roles**

<table data-header-hidden><thead><tr><th width="220"></th><th></th></tr></thead><tbody><tr><td>Default Governance Roles*</td><td>Select the appropriate users or teams for each governance role from the drop-down list. All users and teams configured in OvalEdge Security are displayed for selection.</td></tr></tbody></table>

**Admin Roles**

<table data-header-hidden><thead><tr><th width="220"></th><th></th></tr></thead><tbody><tr><td>Admin Roles*</td><td>Select one or more users from the dropdown list for Integration Admin and Security &#x26; Governance Admin. All users configured in OvalEdge Security are available for selection.</td></tr></tbody></table>

**No of Archive Objects**

<table data-header-hidden><thead><tr><th width="219"></th><th></th></tr></thead><tbody><tr><td>No Of Archive Objects*</td><td><p>This shows the number of recent metadata changes to a dataset at the source. By default, it is off. To enable it, toggle the <strong>Archive</strong> button and specify the number of objects to archive.</p><p><strong>Example</strong>: Setting it to 4 retrieves the last four changes, displayed in the 'Version' column of the 'Metadata Changes' module.</p></td></tr></tbody></table>

**Bridge**

<table data-header-hidden><thead><tr><th width="220"></th><th></th></tr></thead><tbody><tr><td>Select Bridge*</td><td><p>If applicable, select the bridge from the drop-down list.</p><p>The drop-down list displays all active bridges configured in OvalEdge. These bridges enable communication between data sources and OvalEdge without altering firewall rules.</p></td></tr></tbody></table>

2. After entering all connection details, the following actions can be performed:
   1. Click **Validate** to verify the connection.
   2. Click **Save** to store the connection for future use.
   3. Click **Save & Configure** to apply additional settings before saving.
3. The saved connection will appear on the **Connectors** home page.

## Manage Connector Operations

### Crawl/Profile

{% hint style="warning" %}
To perform crawl and profile operations, users must be assigned the Integration Admin role.
{% endhint %}

The **Crawl/Profile** button allows users to select one or more schemas for crawling and profiling.&#x20;

1. Navigate to the **Connectors** page and click **Crawl/Profile**.
2. Select the schemas to crawl.
3. The **Crawl** option is selected by default. To perform both operations, click the **Crawl & Profile** radio button.
4. Click **Run** to collect metadata from the connected source and load it into the OvalEdge **Data Catalog**.
5. After a successful crawl, the information appears in the **Data Catalog** > **Databases** tab.

The **Schedule** checkbox allows automated crawling and profiling at defined intervals, from a minute to a year.

1. Click the **Schedule** checkbox to enable the **Select** Period drop-down.
2. Select a time period for the operation from the drop-down menu.
3. Click **Schedule** to initiate metadata collection from the connected source.
4. The system will automatically execute the selected operation (**Crawl** or **Crawl & Profile**) at the scheduled time.

#### Other Operations

The Connectors page in OvalEdge provides a centralized view of all configured connectors, including their health status.

**Managing connectors includes:**

* **Connectors Health**: Displays the current status of each connector using a **green** icon for active connections and a **red** icon for inactive connections, helping to monitor the connectivity with data sources.
* **Viewing**: Click the **Eye** icon next to the connector name to view connector details, including databases, tables, and columns.

**Nine Dots Menu Options:**

To view, edit, validate, build lineage, configure, or delete connectors, click on the **Nine Dots** menu.

* **Edit Connector**: Update and revalidate the data source.
* **Validate Connector**: Check the connection's integrity.
* **Settings**: Modify connector settings.
  * **Crawler**: Configure data extraction.
  * **Profiler**: Customize data profiling rules and methods.
  * **Query Policies**: Define query execution rules based on roles.
  * **Access Instructions**: Add notes on how data can be accessed.
  * **Business Glossary Settings**: Manage term associations at the connector level.
  * **Connection Pooling**: Manage and reuse active database connections to improve performance, reduce connection overhead, and optimize resource utilization during connector operations.
  * **Lineage**: Configure lineage generation settings by selecting a parsing method to analyze SQL or code artifacts and defining the confidence threshold for automatically merging AI-generated lineage suggestions.
  * **Others**: Configure notification recipients for metadata changes.
* **Build Lineage**: Automatically build data lineage using source code parsing.
* **Delete Connector**: Remove a connector with confirmation.

For more details on connector settings, click[ here](https://docs.ovaledge.com/connectors/introduction-to-connectors/setup-and-connectivity/connector-settings).

## Connectivity Troubleshooting

If incorrect parameters are entered, error messages may appear. Ensure all inputs are accurate to resolve these issues. If issues persist, contact the assigned support team.

<table><thead><tr><th width="83">S. No</th><th width="221">Error Message</th><th>Error Description &#x26; Resolution</th></tr></thead><tbody><tr><td>1</td><td>Test Connection fails in the connector setup screen</td><td><p><strong>Description</strong>: OvalEdge validates the connection by opening a JDBC session and running a simple health check (SELECT 1). Wrong credentials, network blocks, or an unreachable host can cause the connection test to fail.</p><p><strong>Resolution</strong>:</p><ul><li>Verify Server, Port (default 5432), Database, Username, and Password in the connector configuration.</li><li>Confirm the Greenplum server is reachable from the OvalEdge server.</li><li>Ask the DBA to confirm that the service account can log in.</li></ul></td></tr><tr><td>2</td><td>Connection works in a DB tool (DBeaver/pgAdmin) but fails in OvalEdge</td><td><p><strong>Description</strong>: External tools may use PostgreSQL settings, while OvalEdge expects Greenplum-specific JDBC configuration (jdbc:pivotal:greenplum://...).</p><p><strong>Resolution</strong>:</p><ul><li>Use the default driver and URL provided by OvalEdge.</li><li>Do not switch to a standard PostgreSQL driver.</li><li>Re-enter the settings using the OvalEdge Greenplum template.</li></ul></td></tr><tr><td>3</td><td>Connector saves but no schemas appear after crawl</td><td><p><strong>Description</strong>: Schema discovery reads Greenplum system metadata. Limited database permissions can prevent OvalEdge from listing schemas.</p><p><strong>Resolution</strong>:</p><ul><li>Re-run the crawl after fixing permissions.</li><li>Ensure the connector user can read pg_catalog and information_schema.</li><li>Ask the DBA to grant USAGE on schemas and SELECT on metadata views.</li></ul></td></tr><tr><td>4</td><td>Crawl completes but some tables are missing</td><td><p><strong>Description</strong>: Normal table crawl excludes certain inherited or partition child tables by design.</p><p><strong>Resolution</strong>:</p><ul><li>Confirm the correct schema is selected for crawl.</li><li>Check whether the missing objects are partition child tables or inherited tables.</li><li>Enable the partition table crawl option if available.</li></ul></td></tr><tr><td>5</td><td>Tables appear but columns are missing for some tables</td><td><p><strong>Description</strong>: Column metadata is fetched separately for each table. Permission or metadata access issues on specific tables can cause missing columns.</p><p><strong>Resolution</strong>:</p><ul><li>Re-run the crawl for the affected schema.</li><li>Ask the DBA to grant metadata read access on the affected tables.</li><li>Check crawl logs for column-fetch errors.</li></ul></td></tr><tr><td>6</td><td>Profiling shows 0 rows for an external table</td><td><p><strong>Description</strong>: OvalEdge cannot read or count data from WRITABLE external tables because Greenplum blocks data access for profiling.</p><p><strong>Resolution</strong>:</p><ul><li>Ensure the external table is READABLE.</li><li>Ask the DBA to recreate or change the table from WRITABLE to READABLE.</li><li>Exclude external tables from profiling if needed.</li></ul></td></tr><tr><td>7</td><td>Profiling skipped for some columns with “unsupported data type” message</td><td><p><strong>Description</strong>: Types such as JSON, BYTEA, ARRAY, BLOB/CLOB, and XID are excluded from full profiling.</p><p><strong>Resolution</strong>:</p><ul><li>Verify whether the column uses an unsupported data type.</li><li>Note that OvalEdge may still perform null-count analysis where possible.</li></ul></td></tr><tr><td>8</td><td>Row count or profile fails for tables with mixed-case or special-character names</td><td><p><strong>Description</strong>: Profiling builds SQL using database, schema, and table names. Mismatched database names or case-sensitive naming can cause object-not-found errors.</p><p><strong>Resolution</strong>:</p><ul><li>Use the exact schema and table names as they exist in Greenplum.</li><li>Prefer lowercase unquoted names where possible.</li><li>Ensure the Database field matches the database being queried.</li></ul></td></tr><tr><td>9</td><td>Views, functions, or procedures not appearing</td><td><p><strong>Description</strong>: Code objects are fetched only when the related crawl options are enabled and the user can read definition metadata.</p><p><strong>Resolution</strong>:</p><ul><li>Enable the required crawl options for views, functions, or procedures.</li><li>Confirm the user has permission to read object definitions.</li><li>Re-run the crawl.</li></ul></td></tr><tr><td>10</td><td>Query log / lineage from query history not available</td><td><p><strong>Description</strong>: Query log harvesting is not supported for Greenplum in the current connector.</p><p><strong>Resolution</strong>:</p><ul><li>Use manual lineage.</li><li>Use lineage from ETL tools.</li><li>Upload SQL separately if required.</li></ul></td></tr><tr><td>11</td><td>Query Sheet SELECT works but result count looks wrong</td><td><p><strong>Description</strong>: The application auto-wraps user queries to estimate row count. Complex SQL may not return an accurate count.</p><p><strong>Resolution</strong>:</p><ul><li>Use a simpler query.</li><li>Rely on the returned rows for validation.</li></ul></td></tr><tr><td>12</td><td>Data Quality / relationship match count shows 0</td><td><p><strong>Description</strong>: Match analysis compares column values. No overlapping data or incorrect mapping results in zero matches.</p><p><strong>Resolution</strong>:</p><ul><li>Confirm the columns contain matching values.</li><li>Verify the schema, table, and column mappings.</li><li>Check for null or mismatched mappings.</li></ul></td></tr><tr><td>13</td><td>Connection works on-prem but fails when OvalEdge uses Bridge</td><td><p><strong>Description</strong>: In Bridge mode, the connection is initiated from the Bridge server. Local-only network access or missing secrets can cause failures.</p><p><strong>Resolution</strong>:</p><ul><li>Ensure the Bridge server can reach Greenplum.</li><li>Verify network and firewall access from the Bridge environment.</li><li>Store credentials in the configured Credential Manager if used.</li></ul></td></tr><tr><td>14</td><td>Intermittent timeout during crawl or profiling on large tables</td><td><p><strong>Description</strong>: Large metadata or data scans can exceed query timeout settings or database workload limits.</p><p><strong>Resolution</strong>:</p><ul><li>Reduce the sample size in crawl or profile settings.</li><li>Crawl smaller schemas first.</li><li>Schedule crawl during off-peak hours.</li></ul></td></tr><tr><td>15</td><td>Test Connection passes but crawl fails immediately</td><td><p><strong>Description</strong>: Test Connection validates only login access. Crawl operations require additional metadata permissions.</p><p><strong>Resolution</strong>:</p><ul><li>Ask the DBA to grant read access to catalogs and target schemas.</li><li>Ensure the connector user has metadata permissions in addition to login rights.</li></ul></td></tr></tbody></table>

***

Copyright © 2026, OvalEdge LLC, Peachtree Corners, GA, USA.


---

# 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 dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.ovaledge.com/connectors/connector-repositories/data-warehouse/greenplum.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
