BradRuderman / pyhs2

MIT License
207 stars 108 forks source link

Could not connect #11

Closed rahmanwaliur closed 10 years ago

rahmanwaliur commented 10 years ago

Ever time I run the client I am getting the following error:

Traceback (most recent call last): File "/home/suman/Documents/APIConsumer/APIConsumer/getcodes.py", line 19, in submitjob.newjob(hivequery) File "/home/suman/Documents/APIConsumer/APIConsumer/submitjob.py", line 5, in newjob conn = pyhs2.connect(host='ZZ.XX.SS.QQ', port = 10000, authMechanism = "PLAIN", user='wrahman', password='**_', database='default') File "/usr/local/lib/python2.7/dist-packages/pyhs2/init.py", line 7, in connect return Connection(_args, kwargs) File "/usr/local/lib/python2.7/dist-packages/pyhs2/connections.py", line 36, in init** transport.open() File "/usr/local/lib/python2.7/dist-packages/pyhs2/cloudera/thrift_sasl.py", line 55, in open self._trans.open() File "/usr/local/lib/python2.7/dist-packages/thrift/transport/TSocket.py", line 99, in open message=message) thrift.transport.TTransport.TTransportException: Could not connect to ZZ.XX.SS.QQ:10000

Please help.

BradRuderman commented 10 years ago

Is the server accessible? Can you include the HS2 logs?

rahmanwaliur commented 10 years ago

Yes the server is accessible from my ubuntu command line using ssh login. And I can start the hiveserver2 as usual which listens to the port 10000. Do you mean hiveserver2 logs?

BradRuderman commented 10 years ago

Yes. Please provide the hive server 2 logs. I don't think this issue is related to the wrapper itself.

On Mon, Feb 17, 2014 at 9:10 AM, rahmanwaliur notifications@github.comwrote:

Yes the server is accessible from my ubuntu command line using ssh login. And I can start the hiveserver2 as usual which listens to the port 10000. Do you mean hiveserver2 logs?

Reply to this email directly or view it on GitHubhttps://github.com/BradRuderman/pyhs2/issues/11#issuecomment-35303356 .

rahmanwaliur commented 10 years ago

I solved the configuration problem at hive side. Now I can run the pyhs2 client successfully.

However, sometimes it takes very long time for a job to finish and I was wondering if it is possible to retrieve job status instead of job result and send the finished job notification to someone's email.

I read an article on http://hadoopi.wordpress.com/2013/09/18/hadoop-get-a-callback-on-mapreduce-job-completion/ but can't understand how to implement it with pyhs2.

Could you please help?

BradRuderman commented 10 years ago

Hi, I recieved your email. The best approach would be to create an asynchronous method with a callback. In the callback you could do whatever you want such as email. I can look into this, not sure what thrift supports. It might be as simple as wrapping into a new thread.