Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix multiple buffered reads #4

Merged
merged 1 commit into from
Oct 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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
Loading