MCPcopy Create free account
hub / github.com/cortexproject/cortex / decompressRequest

Function decompressRequest

pkg/util/http.go:182–198  ·  view source on GitHub ↗
(reader io.Reader, expectedSize, maxSize int, compression CompressionType, sp opentracing.Span)

Source from the content-addressed store, hash-verified

180}
181
182func decompressRequest(reader io.Reader, expectedSize, maxSize int, compression CompressionType, sp opentracing.Span) (body []byte, err error) {
183 defer func() {
184 if err != nil && len(body) > maxSize {
185 err = fmt.Errorf(messageSizeLargerErrFmt, len(body), maxSize)
186 }
187 }()
188 if expectedSize > maxSize {
189 return nil, fmt.Errorf(messageSizeLargerErrFmt, expectedSize, maxSize)
190 }
191 buffer, ok := tryBufferFromReader(reader)
192 if ok {
193 body, err = decompressFromBuffer(buffer, maxSize, compression, sp)
194 return
195 }
196 body, err = decompressFromReader(reader, expectedSize, maxSize, compression, sp)
197 return
198}
199
200func decompressFromReader(reader io.Reader, expectedSize, maxSize int, compression CompressionType, sp opentracing.Span) ([]byte, error) {
201 var (

Callers 1

ParseProtoReaderFunction · 0.85

Calls 3

tryBufferFromReaderFunction · 0.85
decompressFromBufferFunction · 0.85
decompressFromReaderFunction · 0.85

Tested by

no test coverage detected