mongo to JsonListener to informix
Posted in 2015
Topics: Storage & Space Management, Connectivity: ODBC / JDBC / .NET, Security, Permissions & Auditing, Platform-Specific Issues, Java & JDBC Development, Internationalization & Character Sets
HI,
We are testing Mongodb shell talking to Informix 12.10 FC4.
Program Name: onstat
Build Version: 12.10.FC4W1X1
Build Number: N028
Build Host: lxvm-l172
Build OS: Linux 2.6.18-128.el5
Build Date: Tue Sep 16 15:07:24 CDT 2014
Build Timestamp: 16-Sep-2014.14:53:46UTC-05
GLS Version: glslib-6.00.FC4
my jsonListener.properties is configured as ,
url=jdbc:informix-sqli://localhost:9113/sysmaster:INFORMIXSERVER=nsofops_tcp;USE
R=informix;PASSWORD=xxxxx
update.client.strategy=deleteInsert
sharding.enable=true
security.sql.passthrough=true
listener.port=27017
database.dbspace=dbdw0
9113 is the port number of informix server nsofops_tcp.
I started JsonListener, it looks fine,
---console command and output :
[informix@maggie bin]$ java -jar /usr/informix/bin/jsonListener.jar
-config /usr/informix/etc/jsonListener.properties -logfile
/dbbackup/info/json/jsonlisten.log -start
starting mongo listener on port 27017
---JsonListener log:
2015-01-20 20:56:47 [JsonListener-1] INFO
com.ibm.nosql.informix.server.mongo.MongoListener - JSON server listening
on port: 27017, 0.0.0.0/0.0.0.0
Then I started mongo shell,
---console command and output :
[informix@maggie bin]$ mongo
MongoDB shell version: 2.6.7
connecting to: test
mongos>
---JsonListener log:
2015-01-20 21:00:41 [JsonListener-1] INFO
com.ibm.nosql.informix.server.mongo.MongoListener - connection accepted
from /127.0.0.1:41140
2015-01-20 21:00:41 [JsonListener-1-thread-1] INFO
com.ibm.nosql.informix.server.mongo.MongoListenerMessageHandler -
connection accepted from: 127.0.0.1:41140 , sessionNumer: 1 ,
listenerNumber: 8
Seems so far so good.
But .... When I run mongo shell command,
---console command and output :
mongos> show dbs
2015-01-20T21:41:09.428+0000 listDatabases failed:{
"code" : null,
"ok" : 0,
"errmsg" : "Unable to get databases | Unable to connect to
sysmaster database | com.informix.asf.IfxASFException: Attempt to connect
to database server (nsofops_tcp) failed. (SQL Code: -908, SQL State: 08004)
| Attempt to connect to database server (nsofops_tcp) failed. | Connection
refused"
} at src/mongo/shell/mongo.js:47
mongos>
---JsonListener log:
2015-01-20 21:41:09 [JsonListener-1-thread-1] ERROR Session-1 - Unable to
list databases
com.ibm.nosql.informix.json.api.MongoException: Unable to get databases
at
com.ibm.nosql.informix.internal.InformixDatabaseUtils.getDatabases(InformixDatab
aseUtils.java:282)
at
com.ibm.nosql.informix.internal.command.diagnostic.ListDatabasesCommand.process(
ListDatabasesCommand.java:53)
at
com.ibm.nosql.informix.internal.command.CommandRegistry.process(CommandRegistry.
java:214)
at
com.ibm.nosql.informix.internal.request.InformixRequestHandler.processCommand(In
formixRequestHandler.java:498)
at
com.ibm.nosql.informix.internal.request.InformixRequestHandler.processQuery(Info
rmixRequestHandler.java:478)
at
com.ibm.nosql.informix.internal.request.QueryRequest.process(QueryRequest.java:2
50)
at
com.ibm.nosql.informix.server.mongo.MongoListenerMessageHandler.handleMessage(Mo
ngoListenerMessageHandler.java:305)
at
com.ibm.nosql.informix.server.mongo.MongoListenerMessageHandler.run(MongoListene
rMessageHandler.java:128)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: com.ibm.nosql.informix.json.api.MongoException: Unable to
connect to sysmaster database
at
com.ibm.nosql.informix.json.api.Session.getConnectionToSysmaster(Session.java:36
3)
at
com.ibm.nosql.informix.internal.InformixDatabaseUtils.getDatabases(InformixDatab
aseUtils.java:252)
... 10 more
Caused by: java.sql.SQLException: com.informix.asf.IfxASFException: Attempt
to connect to database server (nsofops_tcp) failed.
at com.informix.jdbc.IfxSqliConnect.<init>(IfxSqliConnect.java:1521)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorI
mpl.java:57)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorA
ccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at
com.informix.jdbcx.IfxDataSource.getSqliConnection(IfxDataSource.java:188)
at
com.informix.jdbcx.IfxDataSource.getConnection(IfxDataSource.java:111)
at
com.ibm.arcs.database.universal.connection.pool.UniversalConnectionPoolDataSourc
e.getPooledConnection(UniversalConnectionPoolDataSource.java:45)
at
com.ibm.arcs.database.universal.connection.pool.AbstractConnectionPool.getConnec
tionInternal(AbstractConnectionPool.java:246)
at
com.ibm.arcs.database.universal.connection.pool.AbstractConnectionPool.getConnec
tion(AbstractConnectionPool.java:156)
at
com.ibm.nosql.informix.json.api.Session.getConnectionToSysmaster(Session.java:36
1)
... 11 more
Caused by: com.informix.asf.IfxASFException: Attempt to connect to database
server (nsofops_tcp) failed.
at
com.informix.util.IfxErrMsg.getLocIfxASFException(IfxErrMsg.java:751)
at com.informix.asf.Connection.openSocket(Connection.java:1778)
at com.informix.asf.Connection.<init>(Connection.java:393)
at com.informix.jdbc.IfxSqliConnect.<init>(IfxSqliConnect.java:1241)
... 21 more
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at
java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at
java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:2
00)
at
java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at com.informix.asf.Connection.getSocket(Connection.java:2122)
at com.informix.asf.Connection.openSocket(Connection.java:1740)
... 23 more
I do not see any info of connection request rejected in Iinformix online
log. So, it seems the JsonListener did not even try to connect to infomix.
Any idea or comments ?
Thanks
Frank
--001a11351944717aa2050d1c62d4
Your exception stack is java.sql.SQLException: com.informix.asf.IfxASFException: Attempt to connect to database server (nsofops_tcp) failed. | com.informix.asf.IfxASFException: Attempt to connect to database server (nsofops_tcp) failed. | java.net.ConnectException: Connection refused Basically, the listener cannot get a JDBC connection to your server. On these errors, you should check the obvious: make sure your connection url is valid (no typos), that you have the correct port number to Informix, that your Informix server is up. You'll also want to make sure your hostname can be correctly resolved. In this case, since you are using localhost, make sure your machine is setup to resolve localhost to the loopback IP address 127.0.0.1.
Thank You Erika !! Fixed and worked . The reason was , "localhost" could not be resolved. After changed to domain name, all is great . Frank On Tue, Jan 20, 2015 at 9:49 PM, ERIKA VON BARGEN <vonbarg@us.ibm.com> wrote: > Your exception stack is > java.sql.SQLException: com.informix.asf.IfxASFException: Attempt > to connect to database server (nsofops_tcp) failed. > | com.informix.asf.IfxASFException: Attempt to connect to database server > (nsofops_tcp) failed. > | java.net.ConnectException: Connection refused > > Basically, the listener cannot get a JDBC connection to your server. On > these > errors, you should check the obvious: make sure your connection url is > valid > (no typos), that you have the correct port number to Informix, that your > Informix server is up. You'll also want to make sure your hostname can be > correctly resolved. In this case, since you are using localhost, make sure > your machine is setup to resolve localhost to the loopback IP address > 127.0.0.1. > > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > > --089e0149d2dc913fc4050d2e44d7
Related threads
- partitioning performance
- Two Backslash Unload Error Load Mainframe
- query to find partition size in fragmented table