mirror of
https://bitbucket.org/s_l_teichmann/mtsatellite
synced 2025-01-11 09:20:17 +01:00
Simplified error handling in Redis connection handler.
This also reduces the diff size to the syndtr-goleveldb branch.
This commit is contained in:
parent
5fb85c3c68
commit
b74671ae63
@ -50,8 +50,9 @@ func (c *Connection) Run() {
|
|||||||
log.Println("client disconnected")
|
log.Println("client disconnected")
|
||||||
}
|
}
|
||||||
|
|
||||||
func logError(err error) {
|
func logError(err error) bool {
|
||||||
log.Printf("ERROR: %s", err)
|
log.Printf("ERROR: %s\n", err)
|
||||||
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Connection) Hget(hash, key []byte) bool {
|
func (c *Connection) Hget(hash, key []byte) bool {
|
||||||
@ -122,14 +123,12 @@ func (c *Connection) Hkeys(hash []byte) bool {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if _, err := c.conn.Write(redisLength('*', n)); err != nil {
|
if _, err := c.conn.Write(redisLength('*', n)); err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
|
|
||||||
for key := range keys {
|
for key := range keys {
|
||||||
if err = c.writeBulkString(key); err != nil {
|
if err = c.writeBulkString(key); err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
@ -137,8 +136,7 @@ func (c *Connection) Hkeys(hash []byte) bool {
|
|||||||
|
|
||||||
func (c *Connection) Ping() bool {
|
func (c *Connection) Ping() bool {
|
||||||
if _, err := c.conn.Write(redisPong); err != nil {
|
if _, err := c.conn.Write(redisPong); err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
@ -157,18 +155,15 @@ func (c *Connection) HSpatial(hash, first, second []byte) bool {
|
|||||||
|
|
||||||
for block := range blocks {
|
for block := range blocks {
|
||||||
if err = c.writeBulkString(block.Key); err != nil {
|
if err = c.writeBulkString(block.Key); err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
if err = c.writeBulkString(block.Data); err != nil {
|
if err = c.writeBulkString(block.Data); err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if err = c.writeBulkString(nil); err != nil {
|
if err = c.writeBulkString(nil); err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
@ -176,16 +171,14 @@ func (c *Connection) HSpatial(hash, first, second []byte) bool {
|
|||||||
func (c *Connection) writeError(err error) bool {
|
func (c *Connection) writeError(err error) bool {
|
||||||
logError(err)
|
logError(err)
|
||||||
if _, err = c.conn.Write(redisError); err != nil {
|
if _, err = c.conn.Write(redisError); err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Connection) writeEmptyArray() bool {
|
func (c *Connection) writeEmptyArray() bool {
|
||||||
if _, err := c.conn.Write(redisEmptyArray); err != nil {
|
if _, err := c.conn.Write(redisEmptyArray); err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
@ -198,8 +191,7 @@ func (c *Connection) writeBool(b bool) bool {
|
|||||||
_, err = c.conn.Write(redisFalse)
|
_, err = c.conn.Write(redisFalse)
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
@ -211,8 +203,7 @@ func redisLength(prefix byte, s int) []byte {
|
|||||||
|
|
||||||
func (c *Connection) writeBoolArray(arr []bool) bool {
|
func (c *Connection) writeBoolArray(arr []bool) bool {
|
||||||
if _, err := c.conn.Write(redisLength('*', len(arr))); err != nil {
|
if _, err := c.conn.Write(redisLength('*', len(arr))); err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
for _, b := range arr {
|
for _, b := range arr {
|
||||||
if !c.writeBool(b) {
|
if !c.writeBool(b) {
|
||||||
@ -224,24 +215,21 @@ func (c *Connection) writeBoolArray(arr []bool) bool {
|
|||||||
|
|
||||||
func (c *Connection) writeOk() bool {
|
func (c *Connection) writeOk() bool {
|
||||||
if _, err := c.conn.Write(redisOk); err != nil {
|
if _, err := c.conn.Write(redisOk); err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Connection) writeQueued() bool {
|
func (c *Connection) writeQueued() bool {
|
||||||
if _, err := c.conn.Write(redisQueued); err != nil {
|
if _, err := c.conn.Write(redisQueued); err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Connection) writeBlock(data []byte) bool {
|
func (c *Connection) writeBlock(data []byte) bool {
|
||||||
if err := c.writeBulkString(data); err != nil {
|
if err := c.writeBulkString(data); err != nil {
|
||||||
logError(err)
|
return logError(err)
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user