MCPcopy Create free account
hub / github.com/IceFireDB/IceFireDB / WriteObjects

Function WriteObjects

IceFireDB-Redis-Proxy/pkg/router/writer.go:58–87  ·  view source on GitHub ↗
(local *RESPHandle.WriterHandle, reply ...interface{})

Source from the content-addressed store, hash-verified

56}
57
58func WriteObjects(local *RESPHandle.WriterHandle, reply ...interface{}) (err error) {
59 if len(reply) > 1 {
60 var memoryWriterBuffer bytes.Buffer
61 memoryWriterHandle := RESPHandle.NewWriterHandle(&memoryWriterBuffer)
62 err = memoryWriterHandle.WriteObjects(reply...)
63
64 if err != nil {
65 logrus.Error("mget memoryWriterHandle error:", err)
66 return err
67 }
68 err = memoryWriterHandle.Flush()
69 if err != nil {
70 logrus.Error("mget memoryWriterHandle flush error:", err)
71 return err
72 }
73 _, err = local.Write(memoryWriterBuffer.Bytes())
74 } else {
75 err = local.WriteObjects(reply...)
76 }
77 if err != nil {
78 logrus.Error("Client write error:", err)
79 return ErrLocalWriter
80 }
81 err = local.Flush()
82 if err != nil {
83 logrus.Error("Client flush error:", err)
84 return ErrLocalFlush
85 }
86 return nil
87}
88
89func RecursivelyWriteObjects(local *RESPHandle.WriterHandle, reply ...interface{}) (err error) {
90 if len(reply) > 1 {

Callers 4

cmdCOMMANDMethod · 0.92
cmdCMDEXECMethod · 0.92
cmdCOMMANDMethod · 0.92
cmdCMDEXECMethod · 0.92

Calls 2

ErrorMethod · 0.45
BytesMethod · 0.45

Tested by

no test coverage detected