0

Error while creating a federated server with target server as DB2 on Cloud and federation source as DB2 Warehouse on Cloud

Error message (on running second command below):

A communication error "104" occurred sending or receiving data from the remote database.. SQLCODE=-30080, SQLSTATE=08001, DRIVER=4.24.92

Commands run on DB2 Warehouse on Cloud console:

CREATE WRAPPER DRDA;  
CREATE SERVER DP_DB_SERVER TYPE DASHDB VERSION 11.1 WRAPPER DRDA AUTHORIZATION "bluadmin" PASSWORD "*****" OPTIONS (
    HOST '******.dal.bluemix.net', PORT '50001', DBNAME 'BLUDB');

FYI- Target DB is Transaction DB on Cloud with Flex Plan. I am able to connect to target db and run queries using jdbc client tool (SQL Workbench/J). Also I am able to create server other way around ie., target as DB2 Warehouse on Cloud and federated source as DB2 on Cloud.

update: Tried changing port to 50000, got different communication error - A

communication error "110" occurred sending or receiving data from the remote database.. SQLCODE=-30080, SQLSTATE=08001, DRIVER=4.24.92

Appreciate if you can help on this. Thanks.

2 Answers2

0

The documentation gives the following information for Communication Error 104 (Connection Reset) on Linux.

Suggest you go through each step and eliminate each possibility.

Since both source and target are on cloud, you should verify that the relevant port(s) are opened between them.

The Connected partner has closed the connection.

Check any timeout limit on partner side.

E.g. Firewall, Application, DB2 CLI layer and etc

If error is reported on client application which uses ODBC/CLI to connect to DB2 UDB server:

Disable DB2's CLI timeout:

Add 'QUERYTIMEOUTINTERVAL=0' to the db2cli.ini file on the client's side.

Check if there's any firewall between client and server.

If it has any time limit on open connection

Check if applications have any timeout.

e.g. ADO timeout, VB timeout.

This error can also be caused by the issue described in technote_1395285

When a local database connection is catalogued using a different alias name than the database name, you might get error SQL30081 when you try to connect to that database using a TCPIP connection.

If you get that error when when you try to connect to a database, make sure that on the machine where that database resides the database is not catalogued using a different alias name than the database name.

mao
  • 11,321
  • 2
  • 13
  • 29
  • Thanks for the reply. FYI - I am able to connect to target db and run queries using jdbc client tool (SQL Workbench/J) and both ports(50000,50001) work fine. Also I am able to create server other way around ie., target as DB2 Warehouse on Cloud and federated source as DB2 on Cloud. – Vamshi Krishna Mar 20 '19 at 16:52
  • The required path is not from your jdbc client to the target-database, but instead from the source-database to the target-database in your federated setup. That is the connectivity you must set up. – mao Mar 20 '19 at 16:53
  • You should open a Case with IBM Support - your Db2oC system may have no connectivity to your Db2WoC system due to firewall rules. – Mark Barinstein Mar 20 '19 at 18:41
  • sure. Thanks Mark. – Vamshi Krishna Mar 21 '19 at 11:33
0

Try port 50000 in the CREATE SERVER definition

The What's New for Db2 Warehouse on Cloud entry for federation in 8 September 2017 says

Federation

Federation (formerly called "fluid query") capability is now available for Db2-based sources over non-SSL connections.

Note the non-SSL connections restriction

Community
  • 1
  • 1
Paul Vernon
  • 3,818
  • 1
  • 10
  • 23
  • Thanks Paul. I tried using port 50000 as well, below is the error thrown - A communication error "110" occurred sending or receiving data from the remote database.. SQLCODE=-30080, SQLSTATE=08001, DRIVER=4.24.92 – Vamshi Krishna Mar 21 '19 at 11:28
  • Have you opened a support ticket with IBM Cloud? – Paul Vernon Mar 21 '19 at 21:56
  • AFAIU, Error code 110 is `ETIMEDOUT` - "Connection timeout" https://www-01.ibm.com/support/docview.wss?uid=swg21164785 – Paul Vernon Mar 21 '19 at 21:59