Skip to content

Commit a909ca0

Browse files
committed
manifest: make virtual params field of TableMetadata a pointer
This field is also rare and only used for virtual sstables. Fixes: #2047
1 parent b0a0f0e commit a909ca0

File tree

4 files changed

+6
-6
lines changed

4 files changed

+6
-6
lines changed

data_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1303,7 +1303,7 @@ func runSSTablePropertiesCmd(t *testing.T, td *datadriven.TestData, d *DB) strin
13031303
props := r.Properties.String()
13041304
env := sstable.ReadEnv{}
13051305
if m != nil && m.Virtual {
1306-
env.Virtual = &m.VirtualParams
1306+
env.Virtual = m.VirtualParams
13071307
scaledProps := r.Properties.GetScaledProperties(m.FileBacking.Size, m.Size)
13081308
props = scaledProps.String()
13091309
}

file_cache.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -320,7 +320,7 @@ func createReader(v *fileCacheValue, meta *tableMetadata) (*sstable.Reader, ssta
320320
panic("virtual params not initialized")
321321
}
322322
}
323-
env.Virtual = &meta.VirtualParams
323+
env.Virtual = meta.VirtualParams
324324
env.IsSharedIngested = v.isShared && meta.SyntheticSeqNum() != 0
325325
}
326326
return r, env
@@ -349,7 +349,7 @@ func (h *fileCacheHandle) withReader(
349349
panic("virtual params not initialized")
350350
}
351351
}
352-
env.Virtual = &meta.VirtualParams
352+
env.Virtual = meta.VirtualParams
353353
env.IsSharedIngested = v.isShared && meta.SyntheticSeqNum() != 0
354354
}
355355

internal/manifest/version.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@ type TableMetadata struct {
402402
// table bounds.
403403
boundTypeSmallest, boundTypeLargest boundType
404404
// VirtualParams are set only when Virtual is true.
405-
VirtualParams virtual.VirtualReaderParams
405+
VirtualParams *virtual.VirtualReaderParams
406406

407407
// SyntheticPrefix is used to prepend a prefix to all keys and/or override all
408408
// suffixes in a table; used for some virtual tables.
@@ -614,7 +614,7 @@ func (m *TableMetadata) AttachVirtualBacking(backing *FileBacking) {
614614
if m.Smallest().UserKey == nil || m.Largest().UserKey == nil {
615615
panic("bounds must be set before attaching backing")
616616
}
617-
m.VirtualParams = virtual.VirtualReaderParams{
617+
m.VirtualParams = &virtual.VirtualReaderParams{
618618
Lower: m.Smallest(),
619619
Upper: m.Largest(),
620620
FileNum: m.FileNum,

internal/manifest/version_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -846,7 +846,7 @@ func TestTableMetadataSize(t *testing.T) {
846846
}
847847
structSize := unsafe.Sizeof(TableMetadata{})
848848

849-
const tableMetadataSize = 368
849+
const tableMetadataSize = 304
850850
if structSize != tableMetadataSize {
851851
t.Errorf("TableMetadata struct size (%d bytes) is not expected size (%d bytes)",
852852
structSize, tableMetadataSize)

0 commit comments

Comments
 (0)