Comments (2)
Verified my fixed branch works with go mod edit -replace
from lz4.
Repro code:
package main
import (
"bytes"
"encoding/hex"
"fmt"
"io"
"os"
"testing"
lzv3 "github.com/pierrec/lz4/v3"
lzv4 "github.com/pierrec/lz4/v4"
)
type Generator func(io.WriteCloser) io.WriteCloser
func TestFoo(t *testing.T) {
for i, gen := range []Generator{initV3, initV4} {
fmt.Printf("\n===Generator %d, piecemeal===\n", i)
dumper := hex.Dumper(os.Stdout)
coder := gen(dumper)
for _, v := range inStream {
n, err := io.CopyN(coder, bytes.NewReader(v), int64(len(v)))
if n != int64(len(v)) || err != nil {
fmt.Printf("Failed to write %v\n", err)
}
}
coder.Close()
dumper.Close()
fmt.Printf("\n===Generator %d, clean buffered===\n", i)
var allAtOnce bytes.Buffer
for _, v := range inStream {
n, err := io.CopyN(&allAtOnce, bytes.NewReader(v), int64(len(v)))
if n != int64(len(v)) || err != nil {
fmt.Printf("Failed to write: %v\n", err)
break
}
}
dumper2 := hex.Dumper(os.Stdout)
coder2 := gen(dumper2)
io.Copy(coder2, bytes.NewReader(allAtOnce.Bytes()))
coder2.Close()
dumper2.Close()
}
fmt.Println()
}
func initV3(out io.WriteCloser) io.WriteCloser {
lz4Writer := lzv3.NewWriter(out)
return lz4Writer
}
func initV4(out io.WriteCloser) io.WriteCloser {
lz4Writer := lzv4.NewWriter(out)
return lz4Writer
}
var inStream = [][]byte{
{5, 0, 4, 0, 0, 0, 116, 104, 105, 115, 2, 0, 0, 0, 105, 115, 1, 0, 0, 0, 97, 4, 0, 0, 0, 116, 101, 115, 116, 8, 0, 0, 0, 112, 114, 111, 98, 97, 98, 108, 121},
{1, 0, 0, 0, 13, 0, 0, 0},
{255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15},
}
from lz4.
Related Issues (20)
- lz4 reader read block until buf is full? HOT 5
- Data race when using concurrency > 1
- [RSVP] What is the source of xxh32zero.go? HOT 2
- lz4: invalid source or destination buffer too short HOT 3
- jsonlz4: lz4: invalid source or destination buffer too short HOT 1
- I got error 403 HOT 1
- avoid uncompressed duplicates in testdata to make module smaller
- commit bc1239b broke decompressing legacy-compressed bytes in normal mode HOT 1
- Dictionary support in compression HOT 1
- [arm64] Performance regression from removal of 4x loop decoding HOT 2
- .unity3d lz4 compression and decompression HOT 1
- Invalid magic number when decompressing. Headers not added when compressing
- when i use lz4 compress and java use lz4 uncompress HOT 2
- Reader oriented encoder HOT 3
- CLI: Only compression level 0 supported, others give error "lz4: invalid compression level: 1" HOT 3
- Uncompressing quite slow in sparsely compressed data HOT 2
- Help decoding a lz4 block format HOT 4
- Slower than Snappy for smaller sizes. HOT 1
- Seems compress rate alway same for level1 to level9
- Did not return byte buffer when reader read to EOF ( from v4.1.1)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lz4.