- pkt, rerr := NewPkt(pktType, replyNice, bytes.Join(path, []byte{0}))
- if rerr != nil {
- return rerr
- }
- var size int64
-
- if !noCompress && !useTmp {
- var compressed bytes.Buffer
- compressor, err := zstd.NewWriter(
- &compressed,
- zstd.WithEncoderLevel(zstd.SpeedDefault),
- )
- if err != nil {
- return err
- }
- if _, err = io.Copy(compressor, in); err != nil {
- compressor.Close()
- return err
- }
- if err = compressor.Close(); err != nil {
- return err
- }
- size = int64(compressed.Len())
- _, rerr = ctx.Tx(node, pkt, nice, size, minSize, &compressed, handle, areaId)
- }
- if noCompress && !useTmp {
- var data bytes.Buffer
- if _, err := io.Copy(&data, in); err != nil {
- return err
- }
- size = int64(data.Len())
- _, rerr = ctx.Tx(node, pkt, nice, size, minSize, &data, handle, areaId)