Awesome glad to hear it.

On Tue, Mar 24, 2015 at 10:00 PM, xiaokun <xiaokun...@gmail.com> wrote:

> After set the timeout value, the tcp request become stable.
>
> 2015-03-23 23:26 GMT+08:00 John Omernik <j...@omernik.com>:
>
>> So per my HA-Proxy logs, I am getting a condition where the client
>> side time expired while waiting for the client to send or receive
>> data, and this is occurring during the DATA phase. (the two letter
>> HAProxy code is cD . To test, I expanded the timeout (on all things)
>> to 100000.
>>
>> This was interesting in that it showed me the problem a bit clearer.
>> Now, as long as I submit and results for a query in the 100 second
>> range, my connection stays open and happy.  If I let it sit for 100
>> seconds, and then try a query, then it breaks again.
>>
>> It appears HA proxy gets irritable when things aren't being sent over
>> a connection for a long period of time.  For services like Minecraft,
>> this is not an issue, when a client is connected, there is always data
>> there, and no issues occur. For Thrift, there may be multiple long
>> pauses as an analyst thinks through the next query etc.  I wonder what
>> would be the best way to handle that on a per container level. (not
>> all containers need this sort of customization...)
>>
>>
>>
>> On Mon, Mar 23, 2015 at 5:44 AM, xiaokun <xiaokun...@gmail.com> wrote:
>> > I have a similar error when launch jenkins in mesos cluster. And I use
>> > HA-Proxy to route jenkins URL(and JNLP port) to a fixed one. But from
>> time
>> > to time, connection between jenkins master and jenkins slave will lost,
>> > while will cause jobs fail.
>> >
>> > I will try to set timeout value for HAProxy
>> >
>> > 2015-03-23 4:18 GMT+08:00 John Omernik <j...@omernik.com>:
>> >>
>> >> Yep all three are going through HAProxy and seem to be working well.
>> >> I should do some testing to determine if I run a thrift server that
>> >> connects to metastore in HAProxy to determine if that's the broken
>> >> link, but I believe it's between the thrift server. I will check out
>> >> the link you posted to get a better idea out of how it works. I am
>> >> running this all on a MapR cluster which is Great for Docker/Mesos as
>> >> I used the MapR FS, mounted locally on each node's NFS to put the data
>> >> for MySQL, the logs for the metastore/thift server, and my world files
>> >> for Minecraft.  So far it's all really slick.
>> >>
>> >> On Sun, Mar 22, 2015 at 10:44 AM, Ben Whitehead
>> >> <ben.whiteh...@mesosphere.io> wrote:
>> >> > It sounds like you may be running into the connection timeout that is
>> >> > configured for the HAProxy instance.
>> >> >
>> >> > You can see an instance of this in Marathon's
>> >> > HAProxy-marathon-bridge[1].
>> >> > You may need to raise the timeout values.
>> >> >
>> >> > Are you accessing MySql, Hive metastore and minecraft through
>> HAProxy as
>> >> > well? I know that Minecraft running in docker on mesos works well,
>> >> > though
>> >> > I've always used a direct connection not a proxied one.
>> >> >
>> >> >
>> >> > [1]
>> >> >
>> >> >
>> https://github.com/mesosphere/marathon/blob/master/bin/haproxy-marathon-bridge#L113-L119
>> >> >
>> >> > On Sat, Mar 21, 2015 at 1:50 PM, John Omernik <j...@omernik.com>
>> wrote:
>> >> >>
>> >> >> I have a nice setup with a Hive thrift server running in a docker
>> >> >> container on Mesos. It works pretty well, but something, I believe
>> in
>> >> >> how HAProxy works with the connection, is causing the thrift server
>> >> >> connection  to die after a time.  Basically, I can run a few
>> queries,
>> >> >> but after 2 or 3, or specifically after a longer query, I get the
>> >> >> error below indicating End of File on the connection.  Then no more
>> >> >> connections work until I reestablish the connection to the thrift
>> >> >> server. I've tried looking in logs. the thrift server std err logs
>> >> >> show no issues. I am guess I need to dig into haproxy logs, but I am
>> >> >> not seeing any issues in syslog so far.  I'd love any pointers on
>> how
>> >> >> to trouble shoot this.  By the way, I have MySQl, hive metastore,
>> and
>> >> >> a minecraft server all running on Mesos/Docker with no issues, not
>> >> >> sure why the thrift server is so sensitive.
>> >> >>
>> >> >> :)
>> >> >>
>> >> >>
>> >> >> pyhs2 connection string:
>> >> >>
>> >> >> hs2 =
>> >> >>
>> >> >>
>> pyhs2.connect(host='marathonmaster',port=10000,authMechanism='PLAIN',user='bestuser',password='removed',database='default')
>> >> >>
>> >> >>
>> >> >> Error
>> >> >>
>> >> >> /usr/local/lib/python2.7/dist-packages/thrift/transport/TSocket.pyc
>> in
>> >> >> read(self, sz)
>> >> >>     118     if len(buff) == 0:
>> >> >>     119       raise
>> >> >> TTransportException(type=TTransportException.END_OF_FILE,
>> >> >> --> 120                                 message='TSocket read 0
>> bytes')
>> >> >>     121     return buff
>> >> >>     122
>> >> >>
>> >> >> TTransportException: TSocket read 0 bytes
>> >> >
>> >> >
>> >
>> >
>>
>
>

Reply via email to