add write timeout feature to ruby driver