Start Free Trial

Alteryx Server Discussions

Find answers, ask questions, and share expertise about Alteryx Server.

Running Flows on Alteryx Server that Pull from Greenplum Database

AndyJay
8 - Asteroid

I am trying to upload and run flows that pull from a Greenplum database. I can run them perfectly fine on my desktop designer.

 

I have a DB connection that uses the Simba PostgreSQL ODBC Driver. We installed this same driver on the server machine, but the server machine does not have a username and password assigned to that database so we have to left it blank. When uploading the flow and running on the server, this is the error message received:

"Error SQLDriverConnect: [Simba][PostgreSQL] (70) Cannot establish a connection with empty PWD."

This makes sense, but I'm not sure what the next step would be. We want to avoid granting server machine access if possible. I was under the impression that as long as it's 'public', no access would be needed for the DBs.

 

We then tried using DataDirect 7.1 Greenplum Wire Protocol, and a different error is received: "Error SQLDriverConnect: [DataDirect][ODBC Greenplum Wire Protocol driver]Insufficient information to connect to the data source."

 

We made sure to keep all names and driver versions the same. The flows are only built to read from the DB, not write into them. Any troubleshooting tips are greatly appreciated.

5 REPLIES 5
cmaddern
5 - Atom

For the DataDirect Greenplum Wire Protocol driver error "Insufficient information to connect," verify that all required connection parameters (server, port, database, user, password) are included in the connection string. Missing any required fields can cause this error. Leaving the password blank is generally not supported by the ODBC drivers even if the database allows public access. The recommended approach is to configure a Run As user on the server with appropriate database permissions or create a service account with minimal read access and supply those credentials in the connection.

AndyJay
8 - Asteroid

We have an account for the server but no associated password. We had success with the SQL server connection that did not require read access, so I'm surprised that we would need it for the Greenplum.

 

Wouldn't Run As require the user to 'share' credentials?

cmaddern
5 - Atom
Run As does require specifying credentials for the user under which the workflows will run on the server. This means you need to provide a username and password for that Run As user account. The server then uses those credentials to authenticate to resources like databases.
If your server account has no associated password, you cannot use it as a Run As user because the server needs valid credentials to run workflows with that identity. Unlike SQL Server connections that might allow certain types of integrated or trusted authentication without explicit passwords, Greenplum (via the Simba PostgreSQL ODBC driver) requires authentication credentials, and the driver enforces a non-empty password.
So, to run workflows on the server that connect to Greenplum without embedding passwords in workflows, you typically need to:
  • Configure a Run As user with valid credentials that have database access, or
  • Work with your DBA to enable a form of passwordless or trusted authentication for the server's run context (if supported by Greenplum and the driver).
Without valid credentials or a supported authentication method, the connection will fail. Therefore, Run As does involve "sharing" credentials in the sense that the server must be configured with a user identity that has permission to access the database.
AndyJay
8 - Asteroid

Is this the same case if using DataDirect Greenplum Wire Protocol instead of the Simba PostgreSQL ODBC driver?

cmaddern
5 - Atom

Yes, the same general requirement applies when using the DataDirect Greenplum Wire Protocol driver: the connection needs sufficient authentication information, including a username and typically a password, to connect successfully. Without valid credentials or a supported authentication method, the driver will not establish a connection. So, just like with the Simba PostgreSQL ODBC driver, you cannot omit the password if the driver or database requires it.