MongoDB connection issues

I am trying to connect anonymously to MongoDB, and get every time an unable to connect to source.
I am trying to connect without user/password, but it should work, as I can easily connect through java for example.

Unfortunately, there is nothing in the logs rather than stating this failure, the verbosity is not good enough.
I am using the last 1.2.2 version.

Which version of MongoDB?

Where are MongoDB and Dremio installed? When you say you can connect with
java, where was that process running?

Version 2.7
Dremio is installed on Centos 6, and the mongoDB is installed on another host over windows.
I was able to connect also with RoboMongo.

The main issue, which bothers me, is that instead of getting the java exception stack-trace of the connection,
which is something I can work with, I am getting this annoying cannot connect to host, which means nothing to me.
I also have no idea what does Dremio try to do, as it seems like some of the connection parameters are missing.

Sorry to hear about your issues.
Few general points here:

  1. Does Mongo server has anything in the logs?
  2. You can always increase verbosity of the Dremio logging by modifying following in logback.xml (should be in either /etc/dremio dir - if you installed using rpm or in ‘install_dir’/conf dir if you installed via tar):
<logger name="com.dremio">
   <level value="${dremio.log.level:-info}"/>
</logger>

and/or

<level value="${dremio.log.root.level:-error}"/>

It doesn’t help.
I installed now Dremio 1.3, still the same issue.
I have a MongoDB, no problem to connect to it through any driver, but Dremio still insists that it is unable to connect,
and still giving the same UserException coming from Builder.Build.

It seems to me like a problem which should bother anyone trying to deal with mongoDB.
Cause nothing is very complex there.
I’ve raised the log-level to debug, and still nothing.

Yes, this is surprising. We use Dremio connected to MongoDB most days, so unclear what is going on in your case.

Could you share your connection string that you’re using via Java?

Couple of things now that I’m thinking about it:

  1. 2.7 was a developer build (even numbers are production releases). This was a precursor to 2.8, which was actually renamed 3.0. I believe this build is before the addition of WiredTiger as a storage engine option. 2.6 was end-of-life in October 2016. Did you mean RoboMongo 2.7?

  2. which java driver version are you using. Dremio uses the java driver as well, so it may help us narrow down possible issues.

  3. still interested in your connection string

Thanks,
Kelly

Even RoboMongo application is easily connecting to this mongo, no idea what is going on. Unfortunately, no idea what is going on in Dremio, since it has no relevant logs. Only getting the UserException.

version is 2.6.3 of MongoDB.
The connection string is java, is the very standard one.
I am telling again, if I would be able to get the real exception occuring in Dremio when trying to connect, I believe I will be able to solve the issue.
Getting just cannot connect to source, doesn’t help at all.
Why can’t I see the relevant logs of the driver beneath ? It would solve the issue in seconds.

I installed mongo 2.6 on OSX and when I try to connect from Dremio I see:

Here is the error in the Dremio server.log:

2017-12-05 04:40:56,390 [qtp779119558-183] INFO c.d.plugins.mongo.MongoStoragePlugin - Created connection to [address=localhost:27017, user=null].
2017-12-05 04:40:56,391 [qtp779119558-183] INFO c.d.plugins.mongo.MongoStoragePlugin - Number of open connections 1.
2017-12-05 04:40:56,392 [qtp779119558-183] INFO c.d.plugins.mongo.MongoStoragePlugin - MongoClientOptions:
MongoClientOptions{description=‘null’, readPreference=primary, writeConcern=WriteConcern{w=1, wtimeout=0, fsync=false, j=false, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@21c472a1, minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=2000, maxWaitTime=120000, maxConnectionIdleTime=0, maxConnectionLifeTime=0, connectTimeout=10000, socketTimeout=0, socketKeepAlive=false, sslEnabled=false, sslInvalidHostNamesAllowed=false, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName=‘null’, dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@59fd5664, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@75ebfa34, socketFactory=javax.net.DefaultSocketFactory@805f23e, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=0, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000}, socketSettings=SocketSettings{connectTimeoutMS=10000, readTimeoutMS=0, keepAlive=false, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=false, receiveBufferSize=0, sendBufferSize=0}}
2017-12-05 04:40:56,393 [qtp779119558-183] INFO c.d.plugins.mongo.MongoStoragePlugin - MongoCredential:null
2017-12-05 04:40:56,393 [qtp779119558-183] INFO c.d.plugins.mongo.MongoStoragePlugin - Skipping authentication
2017-12-05 04:40:56,533 [qtp779119558-183] INFO c.d.plugins.mongo.MongoStoragePlugin - Connected as anonymous user, databases size 1
2017-12-05 04:40:56,584 [qtp779119558-183] INFO c.d.e.s.StoragePluginRegistryImpl - User Error Occurred [ErrorId: fbace8bc-d440-4346-bb5e-f0576b470519]
com.dremio.common.exceptions.UserException: Unable to connect to source mongo26
at com.dremio.common.exceptions.UserException$Builder.build(UserException.java:648) ~[dremio-common-1.2.1-201710030121530889-8e49316.jar:1.2.1-201710030121530889-8e49316]
at com.dremio.exec.store.StoragePluginRegistryImpl.create(StoragePluginRegistryImpl.java:432) [dremio-sabot-kernel-1.2.1-201710030121530889-8e49316.jar:1.2.1-201710030121530889-8e49316]
at com.dremio.exec.store.StoragePluginRegistryImpl.createOrUpdate(StoragePluginRegistryImpl.java:290) [dremio-sabot-kernel-1.2.1-201710030121530889-8e49316.jar:1.2.1-201710030121530889-8e49316]
at com.dremio.dac.service.source.SourceService.registerSourceWithRuntime(SourceService.java:115) [dremio-dac-backend-1.2.1-201710030121530889-8e49316.jar:1.2.1-201710030121530889-8e49316]
at com.dremio.dac.resource.PutSourceResource.putSource(PutSourceResource.java:81) [dremio-dac-backend-1.2.1-201710030121530889-8e49316.jar:1.2.1-201710030121530889-8e49316]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_121]

Is this the error you’re getting?

I don’t know that we have ever tested Dremio on mongo 2.6 as it was EOL by MongoDB Inc over a year ago. However, we can look to see if there is a configuration we can change to make this work. Please confirm this is the error you are getting.

Yes, this is the error

I am in an authenticated MongoDB v 3.4 and I am getting this same exact error message. All your tutorials use un-authenticated local mongodb. Your documentation is not much of help either. Has there been any progress around this issue?