Переглянути джерело

Fixed WORK_FAIL needing 2 arguments

According to http://gearman.org/protocol/ , WORK_FAIL only has 1 argument: the handle
tags/0.2
Gabriel Cristian Alecu 9 роки тому
джерело
коміт
e005ea4442
1 змінених файлів з 9 додано та 1 видалено
  1. +9
    -1
      client/response.go

+ 9
- 1
client/response.go Переглянути файл

@@ -76,7 +76,7 @@ func decodeResponse(data []byte) (resp *Response, l int, err error) {
case dtJobCreated:
resp.Handle = string(dt)
case dtStatusRes, dtWorkData, dtWorkWarning, dtWorkStatus,
dtWorkComplete, dtWorkFail, dtWorkException:
dtWorkComplete, dtWorkException:
s := bytes.SplitN(dt, []byte{'\x00'}, 2)
if len(s) >= 2 {
resp.Handle = string(s[0])
@@ -85,6 +85,14 @@ func decodeResponse(data []byte) (resp *Response, l int, err error) {
err = fmt.Errorf("Invalid data: %v", data)
return
}
case dtWorkFail:
s := bytes.SplitN(dt, []byte{'\x00'}, 2)
if len(s) >= 1 {
resp.Handle = string(s[0])
} else {
err = fmt.Errorf("Invalid data: %v", data)
return
}
case dtEchoRes:
fallthrough
default:


Завантаження…
Відмінити
Зберегти