Skip to content

Commit 455e559

Browse files
committed
*: use crstrings.Lines[Seq], strings.SplitSeq
Use crstrings.LinesSeq, crstrings.Lines, strings.SplitSeq, strings.FieldsSeq where relevant.
1 parent 91d1ff9 commit 455e559

File tree

74 files changed

+223
-210
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+223
-210
lines changed

batchrepr/reader_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import (
1212
"testing"
1313
"unicode"
1414

15+
"github.com/cockroachdb/crlib/crstrings"
1516
"github.com/cockroachdb/datadriven"
1617
)
1718

@@ -50,7 +51,7 @@ func TestReader(t *testing.T) {
5051

5152
func readRepr(t testing.TB, str string) []byte {
5253
var reprBuf bytes.Buffer
53-
for _, l := range strings.Split(str, "\n") {
54+
for l := range crstrings.LinesSeq(str) {
5455
// Remove any trailing comments behind #.
5556
if i := strings.IndexRune(l, '#'); i >= 0 {
5657
l = l[:i]

cmd/pebble/ycsb.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ func ycsbParseWorkload(w string) (ycsbWeights, error) {
156156
return weights, nil
157157
}
158158
iWeights := make([]int, ycsbNumOps)
159-
for _, p := range strings.Split(w, ",") {
159+
for p := range strings.SplitSeq(w, ",") {
160160
parts := strings.Split(p, "=")
161161
if len(parts) != 2 {
162162
return nil, errors.Errorf("malformed weights: %s", errors.Safe(w))

cockroachkvs/cockroachkvs_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ func TestComparerFuncs(t *testing.T) {
9393
var dst []byte
9494
for line := range crstrings.LinesSeq(td.Input) {
9595
keys = keys[:0]
96-
for _, formattedKey := range strings.Fields(line) {
96+
for formattedKey := range strings.FieldsSeq(line) {
9797
k := ParseFormattedKey(formattedKey)
9898
keys = append(keys, k)
9999
}

compaction_picker_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ func loadVersion(
5151
// and whose compensated file sizes total to `size`+`compensation`. If
5252
// size is sufficiently large, only one single file is created. See
5353
// the TODO below.
54-
for _, data := range strings.Split(d.Input, "\n") {
54+
for data := range crstrings.LinesSeq(d.Input) {
5555
parts := strings.Split(data, " ")
5656
parts[0] = strings.TrimSuffix(strings.TrimSpace(parts[0]), ":")
5757
if len(parts) < 2 {
@@ -1162,7 +1162,7 @@ func TestPickedCompactionExpandInputs(t *testing.T) {
11621162
if len(d.Input) == 0 {
11631163
return ""
11641164
}
1165-
for _, data := range strings.Split(d.Input, "\n") {
1165+
for data := range crstrings.LinesSeq(d.Input) {
11661166
meta := parseMeta(data)
11671167
meta.TableNum = base.TableNum(len(files))
11681168
files = append(files, meta)

compaction_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1407,7 +1407,7 @@ func runCompactionTest(
14071407
levels = append(levels, levelArg)
14081408
td.MaybeScanArgs(t, "extraLevels", &extraLevelsStr)
14091409
if extraLevelsStr != "" {
1410-
for _, levelStr := range strings.Split(extraLevelsStr, ",") {
1410+
for levelStr := range strings.SplitSeq(extraLevelsStr, ",") {
14111411
level, err := strconv.Atoi(levelStr)
14121412
if err != nil {
14131413
return fmt.Sprintf("invalid extraLevels: %s", err)
@@ -1509,7 +1509,7 @@ func runCompactionTest(
15091509

15101510
case "set-span-policies":
15111511
var spanPolicies []SpanAndPolicy
1512-
for _, line := range strings.Split(td.Input, "\n") {
1512+
for line := range crstrings.LinesSeq(td.Input) {
15131513
line = strings.TrimSpace(line)
15141514
args := strings.Fields(line)
15151515
if len(args) < 2 {
@@ -1825,7 +1825,7 @@ func TestCompactionDeleteOnlyHints(t *testing.T) {
18251825
defer d.mu.Unlock()
18261826
d.mu.compact.deletionHints = d.mu.compact.deletionHints[:0]
18271827
var buf bytes.Buffer
1828-
for _, data := range strings.Split(td.Input, "\n") {
1828+
for data := range crstrings.LinesSeq(td.Input) {
18291829
parts := strings.FieldsFunc(strings.TrimSpace(data),
18301830
func(r rune) bool { return r == '-' || r == ' ' || r == '.' })
18311831

@@ -2501,7 +2501,7 @@ func TestCompactionErrorOnUserKeyOverlap(t *testing.T) {
25012501
var files []manifest.NewTableEntry
25022502
tableNum := base.TableNum(1)
25032503

2504-
for _, data := range strings.Split(d.Input, "\n") {
2504+
for data := range crstrings.LinesSeq(d.Input) {
25052505
meta := parseMeta(data)
25062506
meta.TableNum = tableNum
25072507
tableNum++
@@ -2653,7 +2653,7 @@ func TestCompactionCheckOrdering(t *testing.T) {
26532653
parsingSublevel = false
26542654
}
26552655

2656-
for _, data := range strings.Split(d.Input, "\n") {
2656+
for data := range crstrings.LinesSeq(d.Input) {
26572657
if data[0] == 'L' && len(data) == 4 {
26582658
// Format L0.{sublevel}.
26592659
switchSublevel()

data_test.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ func runGetCmd(t testing.TB, td *datadriven.TestData, d *DB) string {
5858
}
5959

6060
var buf bytes.Buffer
61-
for _, data := range strings.Split(td.Input, "\n") {
61+
for data := range crstrings.LinesSeq(td.Input) {
6262
v, closer, err := snap.Get([]byte(data))
6363
if err != nil {
6464
fmt.Fprintf(&buf, "%s: %s\n", data, err)
@@ -79,7 +79,7 @@ func runIterCmd(d *datadriven.TestData, iter *Iterator, closeIter bool) string {
7979
}()
8080
}
8181
var b bytes.Buffer
82-
for _, line := range strings.Split(d.Input, "\n") {
82+
for line := range crstrings.LinesSeq(d.Input) {
8383
parts := strings.Fields(line)
8484
if len(parts) == 0 {
8585
continue
@@ -1393,7 +1393,7 @@ func runSSTablePropertiesCmd(t *testing.T, td *datadriven.TestData, d *DB) strin
13931393
return buf.String()
13941394
}
13951395
propsSlice := strings.Split(props.String(), "\n")
1396-
for _, requestedProp := range strings.Split(td.Input, "\n") {
1396+
for requestedProp := range crstrings.LinesSeq(td.Input) {
13971397
fmt.Fprintf(&buf, "%s:\n", requestedProp)
13981398
for _, prop := range propsSlice {
13991399
if strings.Contains(prop, requestedProp) {
@@ -1578,7 +1578,7 @@ func runIngestExternalCmd(
15781578
t testing.TB, td *datadriven.TestData, d *DB, st remote.Storage, locator string,
15791579
) error {
15801580
var external []ExternalFile
1581-
for _, line := range strings.Split(td.Input, "\n") {
1581+
for line := range crstrings.LinesSeq(td.Input) {
15821582
usageErr := func(info interface{}) {
15831583
t.Helper()
15841584
td.Fatalf(t, "error parsing %q: %v; "+

db_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import (
2121
"testing"
2222
"time"
2323

24+
"github.com/cockroachdb/crlib/crstrings"
2425
"github.com/cockroachdb/crlib/fifo"
2526
"github.com/cockroachdb/datadriven"
2627
"github.com/cockroachdb/errors"
@@ -1531,7 +1532,7 @@ func TestTracing(t *testing.T) {
15311532
return ""
15321533

15331534
case "get":
1534-
for _, key := range strings.Split(td.Input, "\n") {
1535+
for key := range crstrings.LinesSeq(td.Input) {
15351536
v, closer, err := db.Get([]byte(key))
15361537
require.NoError(t, err)
15371538
fmt.Fprintf(buf, "%s:%s\n", key, v)

download_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import (
1212
"strings"
1313
"testing"
1414

15+
"github.com/cockroachdb/crlib/crstrings"
1516
"github.com/cockroachdb/datadriven"
1617
"github.com/cockroachdb/pebble/internal/base"
1718
"github.com/cockroachdb/pebble/internal/manifest"
@@ -47,7 +48,7 @@ func TestDownloadCursor(t *testing.T) {
4748
bounds := base.UserKeyBoundsEndExclusive([]byte(lower), []byte(upper))
4849

4950
var buf strings.Builder
50-
for _, line := range strings.Split(td.Input, "\n") {
51+
for line := range crstrings.LinesSeq(td.Input) {
5152
fields := strings.Fields(line)
5253
fmt.Fprintf(&buf, "%s:\n", fields[0])
5354
switch cmd := fields[0]; cmd {
@@ -131,7 +132,7 @@ func TestDownloadTask(t *testing.T) {
131132
// Parse a list of tables that are compacting and set compacting status on
132133
// all tables in the current version.
133134
compacting := make(map[base.TableNum]struct{})
134-
for _, f := range strings.Fields(td.Input) {
135+
for f := range strings.FieldsSeq(td.Input) {
135136
n, err := strconv.Atoi(f)
136137
require.NoError(t, err)
137138
compacting[base.TableNum(n)] = struct{}{}

excise_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import (
1414
"testing"
1515
"time"
1616

17+
"github.com/cockroachdb/crlib/crstrings"
1718
"github.com/cockroachdb/datadriven"
1819
"github.com/cockroachdb/pebble/internal/base"
1920
"github.com/cockroachdb/pebble/internal/keyspan"
@@ -217,7 +218,7 @@ func TestExcise(t *testing.T) {
217218
}
218219
name := td.CmdArgs[0].Key
219220
var keyRanges []KeyRange
220-
for _, line := range strings.Split(td.Input, "\n") {
221+
for line := range crstrings.LinesSeq(td.Input) {
221222
fields := strings.Fields(line)
222223
if len(fields) != 2 {
223224
return "expected two fields for file-only snapshot KeyRanges"
@@ -700,7 +701,7 @@ func TestConcurrentExcise(t *testing.T) {
700701
}
701702
name := td.CmdArgs[0].Key
702703
var keyRanges []KeyRange
703-
for _, line := range strings.Split(td.Input, "\n") {
704+
for line := range crstrings.LinesSeq(td.Input) {
704705
fields := strings.Fields(line)
705706
if len(fields) != 2 {
706707
return "expected two fields for file-only snapshot KeyRanges"

ingest_test.go

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import (
2323
"testing"
2424
"time"
2525

26+
"github.com/cockroachdb/crlib/crstrings"
2627
"github.com/cockroachdb/datadriven"
2728
"github.com/cockroachdb/errors"
2829
"github.com/cockroachdb/errors/oserror"
@@ -53,7 +54,7 @@ func TestSSTableKeyCompare(t *testing.T) {
5354
switch td.Cmd {
5455
case "cmp":
5556
buf.Reset()
56-
for _, line := range strings.Split(td.Input, "\n") {
57+
for line := range crstrings.LinesSeq(td.Input) {
5758
fields := strings.Fields(line)
5859
a := base.ParseInternalKey(fields[0])
5960
b := base.ParseInternalKey(fields[1])
@@ -109,7 +110,7 @@ func TestIngestLoad(t *testing.T) {
109110
}
110111
var bv blobtest.Values
111112
w := sstable.NewRawWriter(objstorageprovider.NewFileWritable(f), writerOpts)
112-
for _, data := range strings.Split(td.Input, "\n") {
113+
for data := range crstrings.LinesSeq(td.Input) {
113114
if strings.HasPrefix(data, "Span: ") {
114115
data = strings.TrimPrefix(data, "Span: ")
115116
err := w.EncodeSpan(keyspan.ParseSpan(data))
@@ -297,7 +298,7 @@ func TestIngestSortAndVerify(t *testing.T) {
297298
if cmp == nil {
298299
return fmt.Sprintf("%s unknown comparer: %s", d.Cmd, cmpName)
299300
}
300-
for i, data := range strings.Split(d.Input, "\n") {
301+
for i, data := range crstrings.Lines(d.Input) {
301302
parts := strings.Split(data, "-")
302303
if len(parts) != 2 {
303304
return fmt.Sprintf("malformed test case: %s", d.Input)
@@ -963,7 +964,7 @@ func testIngestSharedImpl(
963964
}
964965
name := td.CmdArgs[0].Key
965966
var keyRanges []KeyRange
966-
for _, line := range strings.Split(td.Input, "\n") {
967+
for line := range crstrings.LinesSeq(td.Input) {
967968
fields := strings.Fields(line)
968969
if len(fields) != 2 {
969970
return "expected two fields for file-only snapshot KeyRanges"
@@ -1491,11 +1492,10 @@ func TestIngestMemtableOverlaps(t *testing.T) {
14911492

14921493
case "overlaps":
14931494
var buf bytes.Buffer
1494-
for _, data := range strings.Split(d.Input, "\n") {
1495+
for data := range crstrings.LinesSeq(d.Input) {
14951496
var keyRanges []bounded
1496-
for _, part := range strings.Fields(data) {
1497-
meta := parseMeta(part)
1498-
keyRanges = append(keyRanges, meta)
1497+
for part := range strings.FieldsSeq(data) {
1498+
keyRanges = append(keyRanges, parseMeta(part))
14991499
}
15001500
var overlaps bool
15011501
mem.computePossibleOverlaps(func(bounded) shouldContinue {
@@ -1643,7 +1643,7 @@ func TestIngestTargetLevel(t *testing.T) {
16431643
suggestSplit = true
16441644
}
16451645
}
1646-
for _, target := range strings.Split(td.Input, "\n") {
1646+
for target := range crstrings.LinesSeq(td.Input) {
16471647
meta, err := manifest.ParseTableMetadataDebug(target)
16481648
require.NoError(t, err)
16491649
overlapChecker := &overlapChecker{
@@ -2608,7 +2608,7 @@ func TestIngest_UpdateSequenceNumber(t *testing.T) {
26082608
w := sstable.NewRawWriter(objstorageprovider.NewFileWritable(f), sstable.WriterOptions{
26092609
TableFormat: sstable.TableFormatMax,
26102610
})
2611-
for _, data := range strings.Split(input, "\n") {
2611+
for data := range crstrings.LinesSeq(input) {
26122612
if strings.HasPrefix(data, "Span: ") {
26132613
data = strings.TrimPrefix(data, "Span: ")
26142614
err := w.EncodeSpan(keyspan.ParseSpan(data))

0 commit comments

Comments
 (0)