Skip to content

Commit

Permalink
Merge pull request #4 from asymmetric-research/marctrem/fix-linereade…
Browse files Browse the repository at this point in the history
…r-on-multiple-buffered-reads

fix multiple buffered reads
  • Loading branch information
marctrem authored Oct 18, 2024
2 parents 71a04bf + 02ab8e9 commit fc3f912
Show file tree
Hide file tree
Showing 174 changed files with 326 additions and 7 deletions.
26 changes: 20 additions & 6 deletions io/linereader/linereader.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ type T struct {
readbufbase []byte
readbuf []byte
blocksize uint
readerErr error
}

func New(reader io.Reader, blockSize uint) *T {
Expand Down Expand Up @@ -39,6 +40,12 @@ func (lr *T) Read(dst []byte) (n int, err error) {
// ReadExtra reads as much as possible into p, until the next newline or EOF is reached.
// Every new call to read starts on a new line. The remainder of the previous line will be discarted.
func (lr *T) ReadExtra(dst []byte) (nread int, ndiscarted int, err error) {

// check if the reader is done
if len(lr.readbuf) == 0 && lr.readerErr != nil {
return 0, 0, lr.readerErr
}

// copy as much of read buffer as possible to dst
if len(lr.readbuf) > 0 {
// fast path: can we get a new line from the read buffer?
Expand All @@ -57,11 +64,15 @@ func (lr *T) ReadExtra(dst []byte) (nread int, ndiscarted int, err error) {
lr.readbuf = lr.readbuf[n:]
dst = dst[n:]

if len(lr.readbuf) == 0 && lr.readerErr != nil {
return nread, 0, nil
}
}

for i := uint(0); ; i++ {
readOffset := lr.blocksize * i
readLimit := armath.Min(readOffset+lr.blocksize, uint(len(dst)))
//readLimit := armath.Min(readOffset+lr.blocksize, uint(len(dst)))
readLimit := armath.Min(lr.blocksize, uint(len(dst)))

// dst has been filled and there hasn't been a new line yet
if readLimit <= readOffset {
Expand All @@ -71,19 +82,22 @@ func (lr *T) ReadExtra(dst []byte) (nread int, ndiscarted int, err error) {

dstClamp := dst[readOffset:readLimit]
var n int
n, err = lr.reader.Read(dstClamp)
n, lr.readerErr = lr.reader.Read(dstClamp)
dstClamp = dstClamp[:n]
nread += n

if err == io.EOF && n == 0 {
return
} else if err != nil {
return
if nread == 0 && lr.readerErr != nil {
return 0, 0, lr.readerErr
}

// is there a end of line in this block?
eolidx := bytes.IndexByte(dstClamp, '\n')

if lr.readerErr != nil && eolidx == -1 {
lr.readbuf = nil // there is no next read
return nread, 0, nil
}

if eolidx < 0 {
continue
}
Expand Down
47 changes: 46 additions & 1 deletion io/linereader/linereader_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,13 @@ package linereader_test
import (
"bytes"
"io"
"path"
"runtime"
"strings"
"testing"

"github.com/asymmetric-research/go-commons/io/linereader"
"github.com/asymmetric-research/go-commons/io/readchunkdump"
"github.com/stretchr/testify/require"

gocmd "github.com/go-cmd/cmd"
Expand All @@ -25,6 +28,9 @@ func TestLineReader(t *testing.T) {

for err != io.EOF {
n, _, err = r.ReadExtra(linesback[:])
if n == 0 && err == io.EOF {
continue
}
line = linesback[:n]
require.Equal(t, expectedLines[0], string(line))
expectedLines = expectedLines[1:]
Expand All @@ -44,8 +50,14 @@ func TestLinesOfReaderTruncation(t *testing.T) {
var err error
var n int

var i = 0
for err != io.EOF {
i += 1
n, _, err = r.ReadExtra(linesback[:])
if n == 0 && err == io.EOF {
break
}

if err != nil {
break
}
Expand All @@ -65,6 +77,32 @@ func TestLinesOfReaderTruncation(t *testing.T) {
require.Emptyf(t, expectedLines, "should have produced as many lines as expected")
}

func TestReplay(t *testing.T) {
_, currentFile, _, _ := runtime.Caller(0)
currentDir := path.Dir(currentFile)

r, err := readchunkdump.NewReplayer(
path.Join(currentDir, "readerchunks0"),
)
require.NoError(t, err)
lr := linereader.New(r, 1024*4) // 4K read buffer
backingBuf := [20 * 1024 * 1024]byte{} // 20MB max line

for i := 0; ; i++ {
n, dis, rerr := lr.ReadExtra(backingBuf[:])
_ = dis

rb := backingBuf[:n]

if bytes.ContainsRune(rb, '\x00') {
t.FailNow()
}
if rerr == io.EOF {
return
}
}
}

// Unbuffered Benchmarks
func BenchmarkLineReaderUnbuffered(b *testing.B) {
b.RunParallel(func(p *testing.PB) {
Expand Down Expand Up @@ -132,7 +170,8 @@ func runOurs(t require.TestingT, r io.Reader) {
_, _, err = rd.ReadExtra(lineBacking[:])
cnt += 1
}
require.Equal(t, 283, cnt)
cnt -= 1 // account for the last error
require.Equal(t, reportLineCount, cnt)
}

func runHashicorps(t require.TestingT, r io.Reader) {
Expand Down Expand Up @@ -492,3 +531,9 @@ func (l *LineByLineReader) Read(dst []byte) (int, error) {

return n, nil
}

var reportLineCount int

func init() {
reportLineCount = strings.Count(report, "\n") + 1
}
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-0
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Log at "/dev/null"
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-1
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
INFO: Running with entropic power schedule (0xFF, 100).
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-10
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#262144 pulse cov: 804 ft: 4079 corp: 1265/361Kb lim: 10805 exec/s: 37449 rss: 281Mb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-100
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
L: 918/8192 MS: 5 CrossOver-CrossOver-InsertByte-EraseBytes-CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-101
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#53850203 NEW cov: 828 ft: 4166 corp: 1306/392Kb lim: 20000 exec/s: 63056
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-102
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rss: 492Mb L: 1014/8192 MS: 1 InsertRepeatedBytes-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-103
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#53916946 NEW cov: 828 ft: 4167 corp: 1307/393Kb lim: 20000 exec/s: 63060
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-104
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rss: 493Mb L: 1526/8192 MS: 5 PersAutoDict-ChangeBit-CrossOver-ChangeByte-CopyPart- DE: "nan"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-105
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#53979567 NEW cov: 829 ft: 4168 corp: 1308/395Kb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-106
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 63060 rss: 495Mb L: 1999/8192 MS: 6 EraseBytes-CMP-ChangeBinInt-CopyPart-ChangeBinInt-ChangeBit- DE: "_-_"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-107
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#54026001 NEW cov: 829 ft: 4170 corp: 1309/397Kb lim: 20000
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-108
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
exec/s: 63040 rss: 495Mb L: 1672/8192 MS: 3 ChangeBit-CMP-CopyPart- DE: "\001\000\000\000\000\000\000\000"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-109
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#54319799 NEW cov: 830 ft: 4171 corp: 1310/397Kb lim: 20000
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-11
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#524288 pulse cov: 804 ft: 4079 corp: 1265/361Kb lim: 13418 exec/s: 37449
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-110
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
exec/s: 63089 rss: 499Mb L: 76/8192 MS: 1 CrossOver-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-111
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#54470066 NEW cov: 830 ft: 4173 corp: 1311/399Kb lim: 20000 exec/s: 63044
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-112
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rss: 499Mb L: 1812/8192 MS: 5 PersAutoDict-EraseBytes-CrossOver-ChangeASCIIInt-ShuffleBytes- DE: "nan"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-113
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#54740995 NEW cov: 830 ft: 4174 corp: 1312/399Kb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-114
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 63065 rss: 499Mb L: 76/8192 MS: 1 CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-115
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#54764070 NEW cov: 830 ft: 4176 corp: 1313
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-116
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/402Kb lim: 20000 exec/s: 63092 rss: 499Mb L: 3192/8192 MS: 3 ChangeByte-ChangeByte-CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-117
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#55139774 NEW cov: 830 ft: 4177 corp: 1314/404Kb lim: 20000 exec/s: 63161 rss: 505Mb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-118
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
L: 2361/8192 MS: 7 ChangeByte-ChangeByte-CrossOver-EraseBytes-CMP-InsertByte-CrossOver- DE: "\000\000\000\000"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-119
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#55456462 NEW cov: 831 ft: 4178 corp: 1315
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-12
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rss: 422Mb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-120
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/404Kb lim: 20000 exec/s: 63162 rss: 505Mb L: 76/8192 MS: 1 CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-121
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#55889446 NEW cov: 831 ft: 4179 corp: 1316/406Kb lim: 20000 exec/s: 63223 rss: 505Mb L: 1531/8192 MS: 6 PersAutoDict-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-122
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
CopyPart-ChangeBit-ChangeBit-PersAutoDict-CopyPart- DE: "08"-"nan"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-123
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#56800055 NEW cov: 831 ft: 4180 corp: 1317/408Kb lim: 20000
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-124
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
exec/s: 63322 rss: 505Mb L: 2387/8192 MS: 7 CrossOver-ChangeByte-InsertByte-ChangeASCIIInt-InsertRepeatedBytes-ChangeByte-CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-125
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#65251759 NEW cov: 831 ft: 4181 corp: 1318/412Kb lim: 20000 exec/s: 64097 rss: 505Mb L: 4046/8192 MS: 2 EraseBytes-CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-126
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-127
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#67108864 pulse cov: 831 ft: 4181 corp: 1318/412Kb lim: 20000 exec/s: 64219 rss: 507Mb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-128
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#69873520 NEW cov: 831 ft: 4182 corp: 1319/412Kb lim: 20000 exec/s: 64458
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-129
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rss: 507Mb L: 241/8192 MS: 4 InsertRepeatedBytes-ChangeBinInt-EraseBytes-CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-13
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#1048576 pulse cov: 804 ft: 4079 corp: 1265/361Kb lim: 18649 exec/s: 38836 rss: 426Mb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-130
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#71820849 NEW cov: 831 ft: 4183 corp: 1320/413Kb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-131
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 64587 rss: 507Mb L: 306/8192 MS: 6 InsertByte-ChangeByte-CrossOver-ChangeByte-PersAutoDict-CrossOver- DE: "\001\000\000\000\000\000\000\000"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-132
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#71882542 NEW cov: 831 ft: 4184 corp: 1321/413Kb lim: 20000 exec/s: 64584 rss: 507Mb L: 308/8192 MS: 2 ChangeByte-PersAutoDict-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-133
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DE: "\022\000"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-134
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#73789998 NEW cov: 831 ft: 4186 corp: 1322/414Kb lim: 20000 exec/s: 64784 rss: 507Mb L: 727/8192 MS: 5 CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-135
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ChangeASCIIInt-PersAutoDict-CrossOver-CopyPart- DE: "\377\001"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-136
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#73793605 NEW cov: 831 ft: 4188 corp: 1323/414Kb lim: 20000 exec/s: 64788
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-137
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rss: 507Mb L: 793/8192 MS: 2 PersAutoDict-InsertRepeatedBytes- DE: "\377\377\377\377\377\377\377\002"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-138
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#74130335 NEW cov: 831 ft: 4189 corp: 1324/415Kb lim: 20000 exec/s: 64799 rss: 513Mb L: 793/8192
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-139
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
MS: 2 ChangeByte-CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-14
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#2097152 pulse cov: 804 ft: 4079 corp: 1265/361Kb lim: 20000 exec/s: 41120
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-140
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#74292690 NEW cov: 831 ft: 4190 corp: 1325/417Kb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-141
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 64827 rss: 513Mb L: 1952/8192 MS: 4 CrossOver-EraseBytes-CopyPart-CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-142
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#74577353 NEW cov: 831 ft: 4193 corp: 1326/418Kb lim: 20000 exec/s: 64849 rss: 513Mb L: 1216/8192 MS: 1 CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-143
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#74589535 NEW cov: 831 ft: 4197 corp: 1327/420Kb lim: 20000 exec/s: 64860
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-144
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rss: 513Mb L: 1636/8192 MS: 2 ShuffleBytes-CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-145
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#74680319 NEW cov: 831 ft: 4204 corp: 1328/421Kb lim: 20000
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-146
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
exec/s: 64826 rss: 513Mb L: 1146/8192 MS: 1 EraseBytes-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-147
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#76140804 NEW cov: 831 ft: 4205 corp: 1329/421Kb lim: 20000
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-148
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
exec/s: 64745 rss: 513Mb L: 540/8192 MS: 5 InsertByte-CopyPart-CrossOver-ShuffleBytes-CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-149
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#76251223 NEW cov: 831 ft: 4206 corp: 1330/422Kb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-15
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rss: 426Mb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-150
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 64729 rss: 513Mb L: 540/8192 MS: 1 CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-151
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#77657429 NEW cov: 831 ft: 4207 corp: 1331/422Kb lim: 20000
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-152
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
exec/s: 64660 rss: 513Mb L: 247/8192 MS: 4 CMP-CopyPart-CrossOver-CrossOver- DE: "10"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-153
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#78120632 NEW cov: 831 ft: 4208 corp: 1332/424Kb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-154
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 64669 rss: 513Mb L: 1838/8192 MS: 6 InsertRepeatedBytes-ChangeASCIIInt-EraseBytes-ChangeBinInt-ChangeByte-CrossOver-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-155
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#81205030 NEW cov: 831 ft: 4210 corp: 1333/431Kb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-156
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 64499 rss: 513Mb L: 7379/8192 MS: 2 EraseBytes-CrossOver-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-157
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#82611010 NEW cov: 831 ft: 4212 corp: 1334/439Kb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-158
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 64288 rss: 531Mb L: 7734/8192 MS: 2 ChangeASCIIInt-CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-159
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#88652723 NEW cov: 831 ft: 4215 corp: 1335/440Kb lim: 20000 exec/s: 62475 rss: 545Mb L: 1484/8192 MS: 6 EraseBytes-ShuffleBytes-ChangeASCIIInt-CrossOver-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-16
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#4194304 pulse cov: 804 ft: 4079 corp: 1265/361Kb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-160
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ChangeByte-EraseBytes-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-161
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#90578412 NEW cov: 831 ft: 4216 corp: 1336/440Kb lim: 20000 exec/s: 61997 rss: 545Mb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-162
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
L: 195/8192 MS: 3 ChangeASCIIInt-PersAutoDict-ChangeByte- DE: "nan"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-163
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#104901159 NEW cov: 831 ft: 4217 corp: 1337/442Kb lim: 20000 exec/s: 60218
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-164
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rss: 545Mb L: 1262/8192 MS: 5 ShuffleBytes-ChangeBit-InsertRepeatedBytes-ShuffleBytes-CrossOver-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-165
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#110864481 NEW cov: 831 ft: 4219 corp: 1338/442Kb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-166
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 59765 rss: 545Mb L: 276/8192 MS: 1 CrossOver-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-167
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#134217728 pulse cov: 831 ft: 4219 corp: 1338/442Kb lim: 20000 exec/s: 59283 rss: 545Mb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-168
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#155165985 NEW cov: 831 ft: 4220 corp: 1339/442Kb lim: 20000 exec/s: 59201
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-169
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rss: 545Mb L: 33/8192 MS: 2 CopyPart-CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-17
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 46091 rss: 426Mb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-18
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#6763002 NEW cov: 804 ft: 4083 corp: 1266/361Kb lim: 20000 exec/s: 49364 rss: 427Mb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-19
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
L: 253/8192 MS: 4 CMP-ChangeASCIIInt-EraseBytes-CopyPart- DE: "nan"-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-2
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
INFO: Seed: 2758186962
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-20
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#6764382 NEW cov: 804 ft: 4084 corp: 1267/361Kb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-21
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 49375 rss: 427Mb L: 302/8192 MS: 1 CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-22
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#8388608 pulse cov: 804 ft: 4084 corp: 1267/361Kb lim: 20000 exec/s: 52758 rss: 437Mb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-23
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#13599446 NEW cov: 804 ft: 4085 corp: 1268/362Kb lim: 20000 exec/s: 58618 rss: 437Mb L: 209/8192
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-24
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
MS: 5 EraseBytes-EraseBytes-ShuffleBytes-CopyPart-CopyPart-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-25
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#13612484 NEW cov: 804 ft: 4087 corp: 1269/362Kb lim: 20000 exec/s: 58422
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-26
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rss: 437Mb L: 309/8192 MS: 4 ShuffleBytes-ChangeASCIIInt-CrossOver-InsertByte-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-27
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#16777216 pulse cov: 804 ft: 4087 corp: 1269/362Kb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-28
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 60349 rss: 439Mb
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-29
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#17322669 NEW cov: 804 ft: 4088 corp: 1270/362Kb
2 changes: 2 additions & 0 deletions io/linereader/readerchunks0/chunk-3
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
INFO: Loaded 1 modules (2703 inline 8-bit counters): 2703 [0x65156c3e9dc0, 0x65156c3ea84f),
INFO: Loaded 1 PC tables (2703 PCs): 2703 [0x65156c3ea850,0x65156c3f5140),
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-30
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lim: 20000 exec/s: 60568 rss: 439Mb L: 322/8192 MS: 3 ShuffleBytes-ChangeBit-CrossOver-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-31
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#29219144 NEW cov: 804 ft: 4089 corp: 1271
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-32
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/363Kb lim: 20000 exec/s: 62836 rss: 446Mb L: 328/8192 MS: 3 CrossOver-ChangeBit-CrossOver-
1 change: 1 addition & 0 deletions io/linereader/readerchunks0/chunk-33
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#30621945 NEW cov: 804 ft: 4090 corp: 1272/363Kb
Loading

0 comments on commit fc3f912

Please sign in to comment.