This is an automated email from the ASF dual-hosted git repository.

zeroshade pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg-go.git


The following commit(s) were added to refs/heads/main by this push:
     new 28cb44a91 refactor(manifest)!: use explicit sequence number API names 
(#2315)
28cb44a91 is described below

commit 28cb44a91c728a1b9a2c7b5365d333c76292a6a8
Author: Minh Vu <[email protected]>
AuthorDate: Mon Oct 26 19:55:12 2026 +0100

    refactor(manifest)!: use explicit sequence number API names (#2315)
    
    * refactor(manifest)!: use explicit sequence number API names
    
    Signed-off-by: Minh Vu <[email protected]>
    
    * chore: sync release notes with main to resolve conflicts
    
    ---------
    
    Signed-off-by: Minh Vu <[email protected]>
    Co-authored-by: Matt Topol <[email protected]>
---
 catalog/rest/scan_planning_parity_test.go          |  4 +-
 manifest.go                                        | 41 +++++++------
 manifest_list_version_test.go                      | 24 ++++----
 manifest_projection_test.go                        |  4 +-
 manifest_test.go                                   | 68 +++++++++++-----------
 table/all_manifests_internal_test.go               |  2 +-
 table/compaction/eq_delete_collect.go              |  4 +-
 table/compaction/eq_delete_decision.go             |  8 +--
 table/compaction/eq_delete_decision_test.go        |  2 +-
 table/conflict_validation_bench_test.go            |  2 +-
 table/conflict_validation_test.go                  |  4 +-
 table/dv_rewrite_test.go                           | 12 ++--
 table/equality_delete_index.go                     | 10 ++--
 table/equality_delete_range_index.go               |  2 +-
 table/equality_delete_range_index_test.go          | 12 ++--
 table/equality_delete_sequence_guard_test.go       |  4 +-
 table/incremental_append_scan.go                   |  2 +-
 table/incremental_changelog_scan.go                |  2 +-
 table/inspect_entries.go                           |  4 +-
 table/inspect_internal_test.go                     | 30 +++++-----
 table/maintenance/manifest_test_helpers_test.go    |  4 +-
 table/partition_conflict_test.go                   |  2 +-
 table/partition_residual_read_test.go              |  2 +-
 table/partition_residual_test.go                   |  2 +-
 table/pos_delete_collect.go                        |  4 +-
 table/positional_delete_index.go                   | 10 ++--
 table/positional_delete_index_bench_test.go        |  4 +-
 table/positional_delete_index_test.go              |  4 +-
 table/replace_files_test.go                        | 28 ++++-----
 table/rewrite_data_files_test.go                   |  2 +-
 table/rewrite_files_test.go                        |  6 +-
 .../scan_task_finalization_planfiles_bench_test.go |  4 +-
 table/scanner.go                                   | 12 ++--
 table/scanner_empty_manifest_bench_test.go         |  2 +-
 table/scanner_internal_test.go                     | 24 ++++----
 table/scanner_manifest_projection_test.go          |  2 +-
 table/scanner_plan_tasks_bench_test.go             |  4 +-
 table/scanner_row_limit_bench_test.go              |  4 +-
 table/snapshot_producers.go                        |  4 +-
 table/snapshot_producers_test.go                   |  4 +-
 table/table_test.go                                |  2 +-
 table/transaction.go                               |  8 +--
 table/updates_test.go                              |  4 +-
 43 files changed, 193 insertions(+), 190 deletions(-)

diff --git a/catalog/rest/scan_planning_parity_test.go 
b/catalog/rest/scan_planning_parity_test.go
index 4a640a243..13281c388 100644
--- a/catalog/rest/scan_planning_parity_test.go
+++ b/catalog/rest/scan_planning_parity_test.go
@@ -198,7 +198,7 @@ func newPlanningParityTable(t *testing.T) (table.Metadata, 
*iceio.MemFS) {
                b.SplitOffsets([]int64{4, 40, 70})
                b.LowerBoundValues(map[int][]byte{2: 
lo}).UpperBoundValues(map[int][]byte{2: hi})
                b.ValueCounts(map[int]int64{1: 10, 2: 
10}).NullValueCounts(map[int]int64{1: 0, 2: 0})
-               entries = append(entries, 
iceberg.NewManifestEntryBuilder(iceberg.EntryStatusADDED, new(int64(10)), 
b.Build()).SequenceNum(1).Build())
+               entries = append(entries, 
iceberg.NewManifestEntryBuilder(iceberg.EntryStatusADDED, new(int64(10)), 
b.Build()).DataSequenceNumber(1).Build())
        }
        var data bytes.Buffer
        mf, err := iceberg.WriteManifest("mem://parity/data.avro", &data, 2, 
spec, schema, 10, entries)
@@ -218,7 +218,7 @@ func newPlanningParityTable(t *testing.T) (table.Metadata, 
*iceio.MemFS) {
                        if content == iceberg.EntryContentEqDeletes {
                                b.EqualityFieldIDs([]int{2})
                        }
-                       require.NoError(t, 
writer.Add(iceberg.NewManifestEntryBuilder(iceberg.EntryStatusADDED, 
new(int64(20)), b.Build()).SequenceNum(2).Build()))
+                       require.NoError(t, 
writer.Add(iceberg.NewManifestEntryBuilder(iceberg.EntryStatusADDED, 
new(int64(20)), b.Build()).DataSequenceNumber(2).Build()))
                }
        }
        require.NoError(t, writer.Close())
diff --git a/manifest.go b/manifest.go
index d9ca43c6a..029de6eee 100644
--- a/manifest.go
+++ b/manifest.go
@@ -96,7 +96,8 @@ func NewManifestBuilder(version int, path string, length 
int64, partitionSpecID
        }
 }
 
-func (b *ManifestBuilder) SequenceNum(num, minSeqNum int64) *ManifestBuilder {
+// SequenceNumber sets the manifest sequence number and minimum live data 
sequence number.
+func (b *ManifestBuilder) SequenceNumber(num, minSeqNum int64) 
*ManifestBuilder {
        b.m.SeqNumber, b.m.MinSeqNumber = num, minSeqNum
 
        return b
@@ -385,8 +386,8 @@ func (m *manifestFile) DeletedDataFiles() int32          { 
return m.DeletedFiles
 func (m *manifestFile) AddedRows() int64                 { return 
m.AddedRowsCount }
 func (m *manifestFile) ExistingRows() int64              { return 
m.ExistingRowsCount }
 func (m *manifestFile) DeletedRows() int64               { return 
m.DeletedRowsCount }
-func (m *manifestFile) SequenceNum() int64               { return m.SeqNumber }
-func (m *manifestFile) MinSequenceNum() int64            { return 
m.MinSeqNumber }
+func (m *manifestFile) SequenceNumber() int64            { return m.SeqNumber }
+func (m *manifestFile) MinSequenceNumber() int64         { return 
m.MinSeqNumber }
 func (m *manifestFile) KeyMetadata() []byte {
        if m.Key == nil {
                return nil
@@ -548,12 +549,12 @@ type ManifestFile interface {
        // DeletedRows returns the number of rows in all files of the manifest
        // which have status EntryStatusDELETED.
        DeletedRows() int64
-       // SequenceNum returns the sequence number when this manifest was
+       // SequenceNumber returns the sequence number when this manifest was
        // added to the table. Will be 0 for v1 manifest lists.
-       SequenceNum() int64
-       // MinSequenceNum is the minimum data sequence number of all live data
+       SequenceNumber() int64
+       // MinSequenceNumber is the minimum data sequence number of all live 
data
        // or delete files in the manifest. Will be 0 for v1 manifest lists.
-       MinSequenceNum() int64
+       MinSequenceNumber() int64
        // KeyMetadata returns implementation-specific key metadata for 
encryption
        // if it exists in the manifest list.
        KeyMetadata() []byte
@@ -2010,7 +2011,7 @@ func (w *ManifestWriter) addEntry(entry *manifestEntry) 
error {
        }
 
        if status == EntryStatusADDED || status == EntryStatusEXISTING {
-               if seq := entry.SequenceNum(); seq >= 0 && (w.minSeqNum < 0 || 
seq < w.minSeqNum) {
+               if seq := entry.DataSequenceNumber(); seq >= 0 && (w.minSeqNum 
< 0 || seq < w.minSeqNum) {
                        w.minSeqNum = seq
                }
        }
@@ -2025,14 +2026,14 @@ func (w *ManifestWriter) Add(entry ManifestEntry) error 
{
 }
 
 func (w *ManifestWriter) Delete(entry ManifestEntry) error {
-       w.reusedEntry.wrap(EntryStatusDELETED, &w.snapshotID, 
entry.(*manifestEntry).SeqNum, entry.FileSequenceNum(), entry.DataFile())
+       w.reusedEntry.wrap(EntryStatusDELETED, &w.snapshotID, 
entry.(*manifestEntry).SeqNum, entry.FileSequenceNumber(), entry.DataFile())
 
        return w.addEntry(&w.reusedEntry)
 }
 
 func (w *ManifestWriter) Existing(entry ManifestEntry) error {
        snapshotID := entry.SnapshotID()
-       w.reusedEntry.wrap(EntryStatusEXISTING, &snapshotID, 
entry.(*manifestEntry).SeqNum, entry.FileSequenceNum(), entry.DataFile())
+       w.reusedEntry.wrap(EntryStatusEXISTING, &snapshotID, 
entry.(*manifestEntry).SeqNum, entry.FileSequenceNumber(), entry.DataFile())
 
        return w.addEntry(&w.reusedEntry)
 }
@@ -2966,13 +2967,15 @@ func NewManifestEntryBuilder(status 
ManifestEntryStatus, snapshotID *int64, data
        }
 }
 
-func (b *ManifestEntryBuilder) SequenceNum(num int64) *ManifestEntryBuilder {
+// DataSequenceNumber sets the data sequence number of the file.
+func (b *ManifestEntryBuilder) DataSequenceNumber(num int64) 
*ManifestEntryBuilder {
        b.m.SeqNum = &num
 
        return b
 }
 
-func (b *ManifestEntryBuilder) FileSequenceNum(num int64) 
*ManifestEntryBuilder {
+// FileSequenceNumber sets the file sequence number of the entry.
+func (b *ManifestEntryBuilder) FileSequenceNumber(num int64) 
*ManifestEntryBuilder {
        b.m.FileSeqNum = &num
 
        return b
@@ -2999,7 +3002,7 @@ func (m *manifestEntry) SnapshotID() int64 {
        return *m.Snapshot
 }
 
-func (m *manifestEntry) SequenceNum() int64 {
+func (m *manifestEntry) DataSequenceNumber() int64 {
        if m.SeqNum == nil {
                return -1
        }
@@ -3007,7 +3010,7 @@ func (m *manifestEntry) SequenceNum() int64 {
        return *m.SeqNum
 }
 
-func (m *manifestEntry) FileSequenceNum() *int64 {
+func (m *manifestEntry) FileSequenceNumber() *int64 {
        if m.FileSeqNum == nil {
                return nil
        }
@@ -3025,7 +3028,7 @@ func (m *manifestEntry) inherit(manifest ManifestFile) {
                m.Snapshot = &snap
        }
 
-       manifestSequenceNum := manifest.SequenceNum()
+       manifestSequenceNum := manifest.SequenceNumber()
        if manifestSequenceNum != -1 {
                if m.SeqNum == nil && (manifestSequenceNum == 
initialSequenceNumber || m.EntryStatus == EntryStatusADDED) {
                        m.SeqNum = &manifestSequenceNum
@@ -3344,14 +3347,14 @@ type ManifestEntry interface {
        // SnapshotID is the id where the file was added, or deleted,
        // if null it is inherited from the manifest list.
        SnapshotID() int64
-       // SequenceNum returns the data sequence number of the file.
+       // DataSequenceNumber returns the data sequence number of the file.
        // If it was null and the status is EntryStatusADDED then it
        // is inherited from the manifest list.
-       SequenceNum() int64
-       // FileSequenceNum returns the file sequence number indicating
+       DataSequenceNumber() int64
+       // FileSequenceNumber returns the file sequence number indicating
        // when the file was added. If it was null and the status is
        // EntryStatusADDED then it is inherited from the manifest list.
-       FileSequenceNum() *int64
+       FileSequenceNumber() *int64
        // DataFile provides the information about the data file indicated
        // by this manifest entry.
        DataFile() DataFile
diff --git a/manifest_list_version_test.go b/manifest_list_version_test.go
index c7870d791..cc45a756c 100644
--- a/manifest_list_version_test.go
+++ b/manifest_list_version_test.go
@@ -126,7 +126,7 @@ func TestReadManifestListInfersVersionWhenKeyAbsent(t 
*testing.T) {
        t.Run("v2", func(t *testing.T) {
                deletes := NewManifestBuilder(2, 
"s3://bucket/metadata/deletes-m0.avro", 100, 0, 42).
                        Content(ManifestContentDeletes).
-                       SequenceNum(5, 3).
+                       SequenceNumber(5, 3).
                        Build()
 
                var buf bytes.Buffer
@@ -139,19 +139,19 @@ func TestReadManifestListInfersVersionWhenKeyAbsent(t 
*testing.T) {
 
                assert.Equal(t, 2, got[0].Version())
                assert.Equal(t, ManifestContentDeletes, 
got[0].ManifestContent())
-               assert.Equal(t, int64(5), got[0].SequenceNum())
-               assert.Equal(t, int64(3), got[0].MinSequenceNum())
+               assert.Equal(t, int64(5), got[0].SequenceNumber())
+               assert.Equal(t, int64(3), got[0].MinSequenceNumber())
                assert.Equal(t, int64(42), got[0].SnapshotID())
        })
 
        t.Run("v3", func(t *testing.T) {
                data := NewManifestBuilder(3, 
"s3://bucket/metadata/data-m0.avro", 100, 0, 42).
                        AddedRows(10).
-                       SequenceNum(5, 5).
+                       SequenceNumber(5, 5).
                        Build()
                deletes := NewManifestBuilder(3, 
"s3://bucket/metadata/deletes-m1.avro", 100, 0, 42).
                        Content(ManifestContentDeletes).
-                       SequenceNum(5, 3).
+                       SequenceNumber(5, 3).
                        Build()
 
                var buf bytes.Buffer
@@ -168,8 +168,8 @@ func TestReadManifestListInfersVersionWhenKeyAbsent(t 
*testing.T) {
                assert.Equal(t, int64(100), *got[0].FirstRowID())
 
                assert.Equal(t, ManifestContentDeletes, 
got[1].ManifestContent())
-               assert.Equal(t, int64(5), got[1].SequenceNum())
-               assert.Equal(t, int64(3), got[1].MinSequenceNum())
+               assert.Equal(t, int64(5), got[1].SequenceNumber())
+               assert.Equal(t, int64(3), got[1].MinSequenceNumber())
                assert.Nil(t, got[1].FirstRowID())
        })
 }
@@ -212,15 +212,15 @@ func TestReadManifestListDuckDBFixture(t *testing.T) {
 
        assert.Equal(t, 3, got[0].Version())
        assert.Equal(t, ManifestContentData, got[0].ManifestContent())
-       assert.Equal(t, int64(1), got[0].SequenceNum())
-       assert.Equal(t, int64(1), got[0].MinSequenceNum())
+       assert.Equal(t, int64(1), got[0].SequenceNumber())
+       assert.Equal(t, int64(1), got[0].MinSequenceNumber())
        require.NotNil(t, got[0].FirstRowID())
        assert.Equal(t, int64(0), *got[0].FirstRowID())
 
        assert.Equal(t, 3, got[1].Version())
        assert.Equal(t, ManifestContentDeletes, got[1].ManifestContent())
-       assert.Equal(t, int64(2), got[1].SequenceNum())
-       assert.Equal(t, int64(2), got[1].MinSequenceNum())
+       assert.Equal(t, int64(2), got[1].SequenceNumber())
+       assert.Equal(t, int64(2), got[1].MinSequenceNumber())
 }
 
 // TestReadManifestListKeyContradictsSchema: a "format-version" key claiming
@@ -240,7 +240,7 @@ func TestReadManifestListKeyContradictsSchema(t *testing.T) 
{
        for _, tc := range cases {
                mf := NewManifestBuilder(tc.writeVersion, 
"s3://bucket/metadata/deletes-m0.avro", 100, 0, 42).
                        Content(ManifestContentDeletes).
-                       SequenceNum(5, 3).
+                       SequenceNumber(5, 3).
                        Build()
 
                var buf bytes.Buffer
diff --git a/manifest_projection_test.go b/manifest_projection_test.go
index 42e8f9a2d..3195f6a61 100644
--- a/manifest_projection_test.go
+++ b/manifest_projection_test.go
@@ -149,8 +149,8 @@ func TestManifestEntryProjectionDropsTransientStats(t 
*testing.T) {
 
        assert.Equal(t, entry.Status(), projected.Status())
        assert.Equal(t, entry.SnapshotID(), projected.SnapshotID())
-       assert.Equal(t, entry.SequenceNum(), projected.SequenceNum())
-       assert.Equal(t, entry.FileSequenceNum(), projected.FileSequenceNum())
+       assert.Equal(t, entry.DataSequenceNumber(), 
projected.DataSequenceNumber())
+       assert.Equal(t, entry.FileSequenceNumber(), 
projected.FileSequenceNumber())
        assert.Equal(t, "data.parquet", projected.DataFile().FilePath())
        assert.Equal(t, int64(3), projected.DataFile().Count())
        assert.Equal(t, int64(128), projected.DataFile().FileSizeBytes())
diff --git a/manifest_test.go b/manifest_test.go
index 41ee590b5..41469ccd6 100644
--- a/manifest_test.go
+++ b/manifest_test.go
@@ -69,7 +69,7 @@ var (
                NewManifestBuilder(2, 
"/home/iceberg/warehouse/nyc/taxis_partitioned/metadata/0125c686-8aa6-4502-bdcc-b6d17ca41a3b-m0.avro",
                        7989, 0, snapshotID).
                        Content(ManifestContentDeletes).
-                       SequenceNum(3, 3).
+                       SequenceNumber(3, 3).
                        AddedFiles(3).
                        ExistingFiles(0).
                        DeletedFiles(0).
@@ -88,7 +88,7 @@ var (
                NewManifestBuilder(3, 
"/home/iceberg/warehouse/nyc/taxis_partitioned/metadata/0125c686-8aa6-4502-bdcc-b6d17ca41a3b-m0.avro",
                        7989, 0, snapshotID).
                        Content(ManifestContentData).
-                       SequenceNum(5, 5).
+                       SequenceNumber(5, 5).
                        AddedFiles(3).
                        ExistingFiles(0).
                        DeletedFiles(0).
@@ -947,9 +947,9 @@ func (m *ManifestTestSuite) TestManifestEntriesV1() {
 
        m.Equal(EntryStatusADDED, entry1.Status())
        m.EqualValues(8744736658442914487, entry1.SnapshotID())
-       m.Zero(entry1.SequenceNum())
-       m.NotNil(entry1.FileSequenceNum())
-       m.Zero(*entry1.FileSequenceNum())
+       m.Zero(entry1.DataSequenceNumber())
+       m.NotNil(entry1.FileSequenceNumber())
+       m.Zero(*entry1.FileSequenceNumber())
 
        datafile := entry1.DataFile()
        m.Equal(EntryContentData, datafile.ContentType())
@@ -1070,8 +1070,8 @@ func (m *ManifestTestSuite) TestReadManifestListV1() {
        m.Equal(1, list[0].Version())
        m.EqualValues(7989, list[0].Length())
        m.Equal(ManifestContentData, list[0].ManifestContent())
-       m.Zero(list[0].SequenceNum())
-       m.Zero(list[0].MinSequenceNum())
+       m.Zero(list[0].SequenceNumber())
+       m.Zero(list[0].MinSequenceNumber())
        m.EqualValues(9182715666859759686, list[0].SnapshotID())
        m.EqualValues(3, list[0].AddedDataFiles())
        m.True(list[0].HasAddedFiles())
@@ -1101,8 +1101,8 @@ func (m *ManifestTestSuite) TestReadManifestListV2() {
        m.Equal(2, list[0].Version())
        m.EqualValues(7989, list[0].Length())
        m.Equal(ManifestContentDeletes, list[0].ManifestContent())
-       m.EqualValues(3, list[0].SequenceNum())
-       m.EqualValues(3, list[0].MinSequenceNum())
+       m.EqualValues(3, list[0].SequenceNumber())
+       m.EqualValues(3, list[0].MinSequenceNumber())
        m.EqualValues(9182715666859759686, list[0].SnapshotID())
        m.EqualValues(3, list[0].AddedDataFiles())
        m.True(list[0].HasAddedFiles())
@@ -1131,8 +1131,8 @@ func (m *ManifestTestSuite) TestReadManifestListV3() {
        m.Equal(3, list[0].Version())
        m.EqualValues(7989, list[0].Length())
        m.Equal(ManifestContentData, list[0].ManifestContent())
-       m.EqualValues(5, list[0].SequenceNum())
-       m.EqualValues(5, list[0].MinSequenceNum())
+       m.EqualValues(5, list[0].SequenceNumber())
+       m.EqualValues(5, list[0].MinSequenceNumber())
 
        m.EqualValues(9182715666859759686, list[0].SnapshotID())
        m.EqualValues(3, list[0].AddedDataFiles())
@@ -2096,8 +2096,8 @@ func (m *ManifestTestSuite) TestManifestEntriesV2() {
 
        m.Equal(EntryStatusADDED, entry1.Status())
        m.Equal(entrySnapshotID, entry1.SnapshotID())
-       m.Zero(entry1.SequenceNum())
-       m.Zero(*entry1.FileSequenceNum())
+       m.Zero(entry1.DataSequenceNumber())
+       m.Zero(*entry1.FileSequenceNumber())
 
        datafile := entry1.DataFile()
        m.Equal(EntryContentData, datafile.ContentType())
@@ -2250,8 +2250,8 @@ func (m *ManifestTestSuite) TestManifestEntriesV3() {
        m.Zero(manifest.AddedRows())
        m.Equal(EntryStatusADDED, entry1.Status())
        m.Equal(entrySnapshotID, entry1.SnapshotID())
-       m.Zero(entry1.SequenceNum())
-       m.Zero(*entry1.FileSequenceNum())
+       m.Zero(entry1.DataSequenceNumber())
+       m.Zero(*entry1.FileSequenceNumber())
        datafile := entry1.DataFile()
        m.Equal(EntryContentData, datafile.ContentType())
        
m.Equal("/home/iceberg/warehouse/nyc/taxis_partitioned/data/VendorID=null/00000-633-d8a4223e-dc97-45a1-86e1-adaba6e8abd7-00001.parquet",
 datafile.FilePath())
@@ -2557,8 +2557,8 @@ func (m *ManifestTestSuite) TestManifestEntryBuilder() {
        m.Assert().Equal(EntryStatusEXISTING, entry.Status())
        m.Assert().EqualValues(1, entry.SnapshotID())
        // unassigned sequence number
-       m.Assert().Equal(int64(-1), entry.SequenceNum())
-       m.Assert().Nil(entry.FileSequenceNum())
+       m.Assert().Equal(int64(-1), entry.DataSequenceNumber())
+       m.Assert().Nil(entry.FileSequenceNumber())
        data := entry.DataFile()
        m.Assert().Equal(EntryContentData, data.ContentType())
        m.Assert().Equal("sample.parquet", data.FilePath())
@@ -2602,12 +2602,12 @@ func (m *ManifestTestSuite) 
TestManifestEntryFileSequenceNumReturnsCopy() {
                Data:        &dataFile{Path: "/data/sample.parquet"},
        }
 
-       got := entry.FileSequenceNum()
+       got := entry.FileSequenceNumber()
        m.Require().NotNil(got)
        m.Assert().Equal(entryFileSeqNum, *got)
        *got = 20
 
-       current := entry.FileSequenceNum()
+       current := entry.FileSequenceNumber()
        m.Require().NotNil(current)
        m.Assert().Equal(int64(10), *current)
 }
@@ -2750,7 +2750,7 @@ func (m *ManifestTestSuite) 
TestV2ManifestKeepsReferencedDataFile() {
                WithManifestWriterContent(ManifestContentDeletes))
        m.Require().NoError(err)
        m.Require().NoError(writer.Add(
-               NewManifestEntryBuilder(EntryStatusADDED, &snapshotID, 
deleteFile).SequenceNum(1).Build()))
+               NewManifestEntryBuilder(EntryStatusADDED, &snapshotID, 
deleteFile).DataSequenceNumber(1).Build()))
        m.Require().NoError(writer.Close())
 
        manifest, err := writer.ToManifestFile("manifest.avro", 
int64(out.Len()))
@@ -3388,7 +3388,7 @@ func (m *ManifestTestSuite) 
TestV3ManifestListWriterAssignedRowIDDelta() {
        m.Require().NoError(err)
        manifests := []ManifestFile{
                NewManifestBuilder(3, "current.avro", 100, 1, 
commitSnapID).AddedRows(10).ExistingRows(5).Build(),
-               NewManifestBuilder(3, "carried.avro", 200, 1, 
otherSnapID).SequenceNum(0, 0).AddedRows(100).ExistingRows(50).Build(),
+               NewManifestBuilder(3, "carried.avro", 200, 1, 
otherSnapID).SequenceNumber(0, 0).AddedRows(100).ExistingRows(50).Build(),
                NewManifestBuilder(3, "current2.avro", 300, 1, 
commitSnapID).AddedRows(20).Build(),
        }
        err = writer.AddManifests(manifests)
@@ -3954,7 +3954,7 @@ func (m *ManifestTestSuite) 
TestManifestEntryPresentEmptyListSurvivesRewrite() {
 
        // First round trip mirrors reading an existing manifest: a 
present-empty
        // array decodes to a non-nil pointer over a nil slice.
-       first := writeAndRead(NewManifestEntryBuilder(EntryStatusADDED, 
&snapshotID, built).SequenceNum(1).Build())
+       first := writeAndRead(NewManifestEntryBuilder(EntryStatusADDED, 
&snapshotID, built).DataSequenceNumber(1).Build())
        m.Require().NotNil(first.ColSizes, "decoded column_sizes must stay 
present, not null")
        m.Require().NotNil(first.ValCounts, "decoded value_counts must stay 
present, not null")
        m.Require().NotNil(first.NullCounts, "decoded null_value_counts must 
stay present, not null")
@@ -3967,7 +3967,7 @@ func (m *ManifestTestSuite) 
TestManifestEntryPresentEmptyListSurvivesRewrite() {
 
        // Re-encoding the decoded entry is what a manifest rewrite/merge does. 
The
        // present-empty lists must not collapse to null here.
-       second := writeAndRead(NewManifestEntryBuilder(EntryStatusADDED, 
&snapshotID, first).SequenceNum(1).Build())
+       second := writeAndRead(NewManifestEntryBuilder(EntryStatusADDED, 
&snapshotID, first).DataSequenceNumber(1).Build())
        m.Require().NotNil(second.ColSizes,
                "present-empty column_sizes must survive a decode -> re-encode 
rewrite as a present array")
        m.Require().NotNil(second.ValCounts,
@@ -4093,7 +4093,7 @@ func (m *ManifestTestSuite) 
TestDecodedDataFileMetadataIsIsolatedFromSourceAndGe
 
        var buf bytes.Buffer
        manifest, err := WriteManifest("/manifest.avro", &buf, 3, spec, schema, 
snapshotID,
-               []ManifestEntry{NewManifestEntryBuilder(EntryStatusADDED, 
&snapshotID, dataFile).SequenceNum(1).Build()})
+               []ManifestEntry{NewManifestEntryBuilder(EntryStatusADDED, 
&snapshotID, dataFile).DataSequenceNumber(1).Build()})
        m.Require().NoError(err)
        encoded := buf.Bytes()
        entries, err := ReadManifest(manifest, bytes.NewReader(encoded), false)
@@ -4212,8 +4212,8 @@ func (m *ManifestTestSuite) 
TestV2ManifestListAcceptsV1Manifests() {
        m.Equal(manifestFileRecordsV1[0].FilePath(), entry.FilePath())
        m.Equal(manifestFileRecordsV1[0].Length(), entry.Length())
        m.Equal(ManifestContentData, entry.ManifestContent(), "v1 inheritance: 
content must be data")
-       m.Equal(int64(0), entry.SequenceNum(), "v1 inheritance: sequence_number 
must be 0")
-       m.Equal(int64(0), entry.MinSequenceNum(), "v1 inheritance: 
min_sequence_number must be 0")
+       m.Equal(int64(0), entry.SequenceNumber(), "v1 inheritance: 
sequence_number must be 0")
+       m.Equal(int64(0), entry.MinSequenceNumber(), "v1 inheritance: 
min_sequence_number must be 0")
        m.Equal(manifestFileRecordsV1[0].AddedRows(), entry.AddedRows())
 }
 
@@ -4245,8 +4245,8 @@ func (m *ManifestTestSuite) 
TestManifestWriterPreservesMinSequenceNumberZero() {
        var manifestBuf bytes.Buffer
        mf, err := WriteManifest("carried-forward-v1.avro", &manifestBuf, 2, 
partitionSpec, testSchema, snapshotID, entries)
        m.Require().NoError(err)
-       m.Equal(int64(0), mf.MinSequenceNum(), "min_sequence_number must be 0 
for v1-inherited live entries")
-       m.Equal(int64(-1), mf.SequenceNum(), "manifest-level sequence_number is 
assigned by the manifest list writer")
+       m.Equal(int64(0), mf.MinSequenceNumber(), "min_sequence_number must be 
0 for v1-inherited live entries")
+       m.Equal(int64(-1), mf.SequenceNumber(), "manifest-level sequence_number 
is assigned by the manifest list writer")
 
        commitSeq := int64(42)
        var listBuf bytes.Buffer
@@ -4256,8 +4256,8 @@ func (m *ManifestTestSuite) 
TestManifestWriterPreservesMinSequenceNumberZero() {
        list, err := ReadManifestList(&listBuf)
        m.Require().NoError(err)
        m.Require().Len(list, 1)
-       m.Equal(int64(0), list[0].MinSequenceNum(), "manifest list must 
preserve min_sequence_number 0")
-       m.Equal(commitSeq, list[0].SequenceNum(), "manifest list assigns 
sequence_number from the commit")
+       m.Equal(int64(0), list[0].MinSequenceNumber(), "manifest list must 
preserve min_sequence_number 0")
+       m.Equal(commitSeq, list[0].SequenceNumber(), "manifest list assigns 
sequence_number from the commit")
 }
 
 // TestV3ManifestListAcceptsV1AndV2Manifests verifies that a v3 manifest list
@@ -4281,8 +4281,8 @@ func (m *ManifestTestSuite) 
TestV3ManifestListAcceptsV1AndV2Manifests() {
        v1Entry := got[0]
        m.Equal(manifestFileRecordsV1[0].FilePath(), v1Entry.FilePath())
        m.Equal(ManifestContentData, v1Entry.ManifestContent())
-       m.Equal(int64(0), v1Entry.SequenceNum())
-       m.Equal(int64(0), v1Entry.MinSequenceNum())
+       m.Equal(int64(0), v1Entry.SequenceNumber())
+       m.Equal(int64(0), v1Entry.MinSequenceNumber())
        m.Require().NotNil(v1Entry.FirstRowID(), "v3 list must assign 
first_row_id for data manifests")
        m.Equal(firstRowID, *v1Entry.FirstRowID())
 
@@ -4920,8 +4920,8 @@ func TestToManifestFileInheritsWriterContent(t 
*testing.T) {
                        assert.Equal(t, int64(len(data)), mf.Length())
                        assert.Equal(t, int32(1), mf.PartitionSpecID())
                        assert.Equal(t, int64(1234), mf.SnapshotID())
-                       assert.Equal(t, int64(-1), mf.SequenceNum())
-                       assert.Equal(t, int64(1), mf.MinSequenceNum())
+                       assert.Equal(t, int64(-1), mf.SequenceNumber())
+                       assert.Equal(t, int64(1), mf.MinSequenceNumber())
                        assert.Equal(t, int32(1), mf.AddedDataFiles())
                        assert.Zero(t, mf.ExistingDataFiles())
                        assert.Zero(t, mf.DeletedDataFiles())
diff --git a/table/all_manifests_internal_test.go 
b/table/all_manifests_internal_test.go
index e7c16f965..397e4caf1 100644
--- a/table/all_manifests_internal_test.go
+++ b/table/all_manifests_internal_test.go
@@ -199,7 +199,7 @@ func tableWithManifestListsUsingIO(t *testing.T, 
snapshotCount int, readIOFn fun
                seqNum := snapshotID
                manifestPath := fmt.Sprintf("%s/metadata/manifest-%02d.avro", 
tableLocation, snapshotID)
                manifest := iceberg.NewManifestBuilder(2, manifestPath, 1, 0, 
snapshotID).
-                       SequenceNum(seqNum, seqNum).
+                       SequenceNumber(seqNum, seqNum).
                        AddedFiles(1).
                        AddedRows(1).
                        Build()
diff --git a/table/compaction/eq_delete_collect.go 
b/table/compaction/eq_delete_collect.go
index 200d46a3d..6f75bb333 100644
--- a/table/compaction/eq_delete_collect.go
+++ b/table/compaction/eq_delete_collect.go
@@ -132,9 +132,9 @@ func collectDeadEqualityDeletes(
                        }
                        partition := internal.BorrowedDataFilePartition(df)
                        if specs == nil {
-                               survey.AddSurvivor(partition, e.SequenceNum())
+                               survey.AddSurvivor(partition, 
e.DataSequenceNumber())
                        } else {
-                               survey.AddSurvivorWithSpec(df.SpecID(), 
partition, e.SequenceNum())
+                               survey.AddSurvivorWithSpec(df.SpecID(), 
partition, e.DataSequenceNumber())
                        }
                }
        }
diff --git a/table/compaction/eq_delete_decision.go 
b/table/compaction/eq_delete_decision.go
index 25144289f..34de3c5b0 100644
--- a/table/compaction/eq_delete_decision.go
+++ b/table/compaction/eq_delete_decision.go
@@ -148,10 +148,10 @@ func DecideDeadEqualityDeletes(survey *SurvivorSurvey, 
candidates []iceberg.Mani
                if _, ok := seen[path]; ok {
                        continue
                }
-               if e.SequenceNum() < 0 {
+               if e.DataSequenceNumber() < 0 {
                        continue
                }
-               if minSeq >= e.SequenceNum() {
+               if minSeq >= e.DataSequenceNumber() {
                        seen[path] = struct{}{}
                        dead = append(dead, df)
                }
@@ -199,7 +199,7 @@ func DecideDeadEqualityDeletesWithSpecs(
                if _, ok := seen[path]; ok {
                        continue
                }
-               if e.SequenceNum() < 0 {
+               if e.DataSequenceNumber() < 0 {
                        continue
                }
                isUnpartitioned, ok := unpartitionedBySpecID[df.SpecID()]
@@ -214,7 +214,7 @@ func DecideDeadEqualityDeletesWithSpecs(
                }
                if survey.specAwareApplicableMinSeq(
                        df.SpecID(), internal.BorrowedDataFilePartition(df), 
isUnpartitioned,
-               ) >= e.SequenceNum() {
+               ) >= e.DataSequenceNumber() {
                        seen[path] = struct{}{}
                        dead = append(dead, df)
                }
diff --git a/table/compaction/eq_delete_decision_test.go 
b/table/compaction/eq_delete_decision_test.go
index 626d93f83..94d78a82c 100644
--- a/table/compaction/eq_delete_decision_test.go
+++ b/table/compaction/eq_delete_decision_test.go
@@ -412,7 +412,7 @@ func makeEqDeleteEntry(
        df := builder.Build()
 
        entryBuilder := 
iceberg.NewManifestEntryBuilder(iceberg.EntryStatusADDED, nil, df)
-       entryBuilder.SequenceNum(seq)
+       entryBuilder.DataSequenceNumber(seq)
 
        return entryBuilder.Build()
 }
diff --git a/table/conflict_validation_bench_test.go 
b/table/conflict_validation_bench_test.go
index c0d66a7c3..e80fa098e 100644
--- a/table/conflict_validation_bench_test.go
+++ b/table/conflict_validation_bench_test.go
@@ -207,7 +207,7 @@ func newConflictValidationBenchmarkContext(b *testing.B, 
entryCount int) *confli
                        b.Fatal(err)
                }
                entries[i] = 
iceberg.NewManifestEntryBuilder(iceberg.EntryStatusADDED, &snapshotID, 
dataFile.Build()).
-                       SequenceNum(1).
+                       DataSequenceNumber(1).
                        Build()
        }
 
diff --git a/table/conflict_validation_test.go 
b/table/conflict_validation_test.go
index ee5a6a0ca..0cb824c78 100644
--- a/table/conflict_validation_test.go
+++ b/table/conflict_validation_test.go
@@ -55,7 +55,7 @@ func writeTestDeleteManifest(
        t.Helper()
 
        entry := iceberg.NewManifestEntryBuilder(iceberg.EntryStatusADDED, 
&snapshotID, delFile).
-               SequenceNum(1).
+               DataSequenceNumber(1).
                Build()
 
        manifestPath := filepath.ToSlash(filepath.Join(dir, 
fmt.Sprintf("delete-manifest-%d.avro", snapshotID)))
@@ -838,7 +838,7 @@ func writeTestMetricsManifestWithValues(
        }
        df := builder.Build()
        entry := iceberg.NewManifestEntryBuilder(iceberg.EntryStatusADDED, 
&snapshotID, df).
-               SequenceNum(1).
+               DataSequenceNumber(1).
                Build()
 
        manifestPath := filepath.Join(dir, "metrics-manifest.avro")
diff --git a/table/dv_rewrite_test.go b/table/dv_rewrite_test.go
index f18ae5d02..dbae9dc8c 100644
--- a/table/dv_rewrite_test.go
+++ b/table/dv_rewrite_test.go
@@ -203,7 +203,7 @@ func 
TestRewriteFiles_ExplicitDeleteRewriteIgnoresAutomaticDVRemoval(t *testing.
                                continue
                        }
                        oldEquality = entry.DataFile()
-                       oldEqualitySequence = entry.SequenceNum()
+                       oldEqualitySequence = entry.DataSequenceNumber()
                }
        }
        require.NotNil(t, oldEquality)
@@ -226,7 +226,7 @@ func 
TestRewriteFiles_ExplicitDeleteRewriteIgnoresAutomaticDVRemoval(t *testing.
        tbl, err = tx.Commit(ctx)
        require.NoError(t, err)
 
-       assert.Equal(t, oldEqualitySequence, currentManifestEntry(t, tbl, 
newEqualityPath).SequenceNum())
+       assert.Equal(t, oldEqualitySequence, currentManifestEntry(t, tbl, 
newEqualityPath).DataSequenceNumber())
        assert.Empty(t, deleteEntriesReferencing(t, tbl, rewritten))
        assertRowCount(t, tbl, 3)
 }
@@ -247,7 +247,7 @@ func 
TestRewriteFiles_DataSequenceNumberKeepsDVApplicableToReplacement(t *testin
        require.NoError(t, err)
        require.Len(t, tasks, 1)
        oldData := tasks[0].File
-       oldDataSequence := currentManifestEntry(t, tbl, 
oldDataPath).SequenceNum()
+       oldDataSequence := currentManifestEntry(t, tbl, 
oldDataPath).DataSequenceNumber()
 
        oldDeletePath := tbl.Location() + "/data/old-pos-delete.parquet"
        writeParquetFile(t, oldDeletePath, table.PositionalDeleteArrowSchema,
@@ -261,7 +261,7 @@ func 
TestRewriteFiles_DataSequenceNumberKeepsDVApplicableToReplacement(t *testin
        require.NoError(t, 
tx.NewRowDelta(nil).AddDeletes(oldDelete).Commit(t.Context()))
        tbl, err = tx.Commit(t.Context())
        require.NoError(t, err)
-       oldDeleteSequence := currentManifestEntry(t, tbl, 
oldDeletePath).SequenceNum()
+       oldDeleteSequence := currentManifestEntry(t, tbl, 
oldDeletePath).DataSequenceNumber()
 
        tx = tbl.NewTransaction()
        require.NoError(t, tx.UpgradeFormatVersion(3))
@@ -303,8 +303,8 @@ func 
TestRewriteFiles_DataSequenceNumberKeepsDVApplicableToReplacement(t *testin
        tbl, err = tx.Commit(t.Context())
        require.NoError(t, err)
 
-       assert.Equal(t, oldDataSequence, currentManifestEntry(t, tbl, 
newDataPath).SequenceNum())
-       assert.Equal(t, oldDeleteSequence, currentManifestEntry(t, tbl, 
newDVs[0].FilePath()).SequenceNum())
+       assert.Equal(t, oldDataSequence, currentManifestEntry(t, tbl, 
newDataPath).DataSequenceNumber())
+       assert.Equal(t, oldDeleteSequence, currentManifestEntry(t, tbl, 
newDVs[0].FilePath()).DataSequenceNumber())
        assert.Equal(t, []int64{2}, scanIDs(t, tbl),
                "the deletion vector must remain applicable to the replacement 
data file")
 }
diff --git a/table/equality_delete_index.go b/table/equality_delete_index.go
index 030fa6cc7..0b5c96278 100644
--- a/table/equality_delete_index.go
+++ b/table/equality_delete_index.go
@@ -495,7 +495,7 @@ func buildEqualityDeleteIndex(
 
        sortBySequence := func(entries []equalityDeleteIndexEntry) {
                slices.SortStableFunc(entries, func(a, b 
equalityDeleteIndexEntry) int {
-                       return cmp.Compare(a.entry.SequenceNum(), 
b.entry.SequenceNum())
+                       return cmp.Compare(a.entry.DataSequenceNumber(), 
b.entry.DataSequenceNumber())
                })
        }
        sortBySequence(idx.global)
@@ -536,12 +536,12 @@ func (idx *equalityDeleteIndex) forDataFile(dataEntry 
iceberg.ManifestEntry) ([]
                }
        }
 
-       dataSeqNum := dataEntry.SequenceNum()
+       dataSeqNum := dataEntry.DataSequenceNumber()
        // Equality deletes are sorted by sequence within each list. When even
        // the newest delete is not newer than the data file, no delete applies.
        // Avoid initializing or copying column statistics in that common case.
-       if (len(idx.global) == 0 || 
idx.global[len(idx.global)-1].entry.SequenceNum() <= dataSeqNum) &&
-               (len(partitionEntries) == 0 || 
partitionEntries[len(partitionEntries)-1].entry.SequenceNum() <= dataSeqNum) {
+       if (len(idx.global) == 0 || 
idx.global[len(idx.global)-1].entry.DataSequenceNumber() <= dataSeqNum) &&
+               (len(partitionEntries) == 0 || 
partitionEntries[len(partitionEntries)-1].entry.DataSequenceNumber() <= 
dataSeqNum) {
                return nil, nil
        }
        var dataStats *equalityDeleteDataFileStats
@@ -563,7 +563,7 @@ func firstEqualityDeleteAfter(
        dataSeqNum int64,
 ) int {
        return sort.Search(len(entries), func(i int) bool {
-               return entries[i].entry.SequenceNum() > dataSeqNum
+               return entries[i].entry.DataSequenceNumber() > dataSeqNum
        })
 }
 
diff --git a/table/equality_delete_range_index.go 
b/table/equality_delete_range_index.go
index d71b53494..f72b7ec3e 100644
--- a/table/equality_delete_range_index.go
+++ b/table/equality_delete_range_index.go
@@ -96,7 +96,7 @@ func (idx *equalityDeleteRangeIndex) build() {
                        entryIndex: entryIndex,
                        lower:      field.lowerValue,
                        upper:      field.upperValue,
-                       sequence:   entries[entryIndex].entry.SequenceNum(),
+                       sequence:   
entries[entryIndex].entry.DataSequenceNumber(),
                })
                if _, found := fieldsByID[field.fieldID]; !found {
                        fieldsByID[field.fieldID] = *field
diff --git a/table/equality_delete_range_index_test.go 
b/table/equality_delete_range_index_test.go
index 61f0fa42b..338d1f950 100644
--- a/table/equality_delete_range_index_test.go
+++ b/table/equality_delete_range_index_test.go
@@ -35,7 +35,7 @@ func appendEqualityDeletesAfterLinear(
        dataStats *equalityDeleteDataFileStats,
 ) []iceberg.DataFile {
        for _, entry := range entries {
-               if entry.entry.SequenceNum() > dataSeqNum && 
equalityDeleteCanContainData(dataStats, entry.fields) {
+               if entry.entry.DataSequenceNumber() > dataSeqNum && 
equalityDeleteCanContainData(dataStats, entry.fields) {
                        out = append(out, entry.entry.DataFile())
                }
        }
@@ -119,11 +119,11 @@ func TestEqualityDeleteRangeIndexMatchesLinearReference(t 
*testing.T) {
 
                        stats := 
equalityDeleteDataFileStatsFor(dataEntry.DataFile())
                        want := appendEqualityDeletesAfterLinear(
-                               nil, entries, dataEntry.SequenceNum(), &stats)
+                               nil, entries, dataEntry.DataSequenceNumber(), 
&stats)
                        assert.Equal(t, equalityDeleteMetricPaths(want), 
equalityDeleteMetricPaths(got))
-                       start := firstEqualityDeleteAfter(entries, 
dataEntry.SequenceNum())
+                       start := firstEqualityDeleteAfter(entries, 
dataEntry.DataSequenceNumber())
                        if len(entries)-start >= 
equalityDeleteRangeIndexMinLookupEntries {
-                               candidates, ok := 
idx.rangeIndexesByPartition[key].candidates(start, dataEntry.SequenceNum(), 
&stats)
+                               candidates, ok := 
idx.rangeIndexesByPartition[key].candidates(start, 
dataEntry.DataSequenceNumber(), &stats)
                                assert.Equal(t, tt.indexed, ok, "the expected 
fast path must actually run")
                                if ok {
                                        assert.Less(t, len(candidates), 
len(entries)-start)
@@ -214,10 +214,10 @@ func BenchmarkEqualityDeleteRangeIndexLookup(b 
*testing.B) {
                                var files []iceberg.DataFile
                                if indexed {
                                        files = 
appendEqualityDeletesAfterIndexed(
-                                               nil, entries, 
dataEntry.SequenceNum(), &stats, rangeIndex)
+                                               nil, entries, 
dataEntry.DataSequenceNumber(), &stats, rangeIndex)
                                } else {
                                        files = 
appendEqualityDeletesAfterIndexed(
-                                               nil, entries, 
dataEntry.SequenceNum(), &stats, nil)
+                                               nil, entries, 
dataEntry.DataSequenceNumber(), &stats, nil)
                                }
                                matched += len(files)
                        }
diff --git a/table/equality_delete_sequence_guard_test.go 
b/table/equality_delete_sequence_guard_test.go
index 2fd7e8fee..7fe80313f 100644
--- a/table/equality_delete_sequence_guard_test.go
+++ b/table/equality_delete_sequence_guard_test.go
@@ -83,7 +83,7 @@ func TestEqualityDeleteIndexSkipsUnusedDataFileStatistics(t 
*testing.T) {
                        entry := 
newEqualityDeleteMetricsTestEntry("data.parquet", 1, tc.partition,
                                iceberg.EntryContentData, tc.seq, nil, nil, 
nil, nil, nil, nil)
                        if tc.skipStats {
-                               seq := entry.SequenceNum()
+                               seq := entry.DataSequenceNumber()
                                entry = 
iceberg.NewManifestEntry(iceberg.EntryStatusADDED, nil, &seq, nil,
                                        
equalityDeleteStatsForbiddenFile{entry.DataFile()})
                        }
@@ -120,7 +120,7 @@ func TestEqualityDeleteIndexSkipsUnusedDataFileStatistics(t 
*testing.T) {
 
                data := newEqualityDeleteMetricsTestEntry("data.parquet", 1, 
partA,
                        iceberg.EntryContentData, 5, nil, nil, nil, nil, nil, 
nil)
-               seq := data.SequenceNum()
+               seq := data.DataSequenceNumber()
                entry := iceberg.NewManifestEntry(iceberg.EntryStatusADDED, 
nil, &seq, nil,
                        equalityDeleteStatsForbiddenFile{data.DataFile()})
                matched, err := globalIdx.forDataFile(entry)
diff --git a/table/incremental_append_scan.go b/table/incremental_append_scan.go
index d682d4ca8..277caec92 100644
--- a/table/incremental_append_scan.go
+++ b/table/incremental_append_scan.go
@@ -218,7 +218,7 @@ func (s *IncrementalAppendScan) PlanFiles(ctx 
context.Context) ([]FileScanTask,
                task := FileScanTask{File: file, Start: 0, Length: 
file.FileSizeBytes()}
                task.Residual = residual
                task.FirstRowID = file.FirstRowID()
-               if sequenceNumber := entry.SequenceNum(); sequenceNumber >= 0 {
+               if sequenceNumber := entry.DataSequenceNumber(); sequenceNumber 
>= 0 {
                        task.DataSequenceNumber = &sequenceNumber
                }
                tasks = append(tasks, task)
diff --git a/table/incremental_changelog_scan.go 
b/table/incremental_changelog_scan.go
index f3b418102..7ec37d123 100644
--- a/table/incremental_changelog_scan.go
+++ b/table/incremental_changelog_scan.go
@@ -322,7 +322,7 @@ func newChangelogScanTask(entry iceberg.ManifestEntry, 
ordinal int, residual ice
                task.Length = file.FileSizeBytes()
                task.Residual = residual
                task.FirstRowID = file.FirstRowID()
-               if sequenceNumber := entry.SequenceNum(); sequenceNumber >= 0 {
+               if sequenceNumber := entry.DataSequenceNumber(); sequenceNumber 
>= 0 {
                        task.DataSequenceNumber = &sequenceNumber
                }
        }
diff --git a/table/inspect_entries.go b/table/inspect_entries.go
index c4fdb86ae..225524459 100644
--- a/table/inspect_entries.go
+++ b/table/inspect_entries.go
@@ -80,8 +80,8 @@ func newInspectEntryAppender(
 
                
bldr.Field(0).(*array.Int32Builder).Append(int32(entry.Status()))
                appendEntriesOptionalInt64(bldr.Field(1).(*array.Int64Builder), 
entry.SnapshotID())
-               appendEntriesOptionalInt64(bldr.Field(2).(*array.Int64Builder), 
entry.SequenceNum())
-               appendInspectOptionalInt64(bldr.Field(3).(*array.Int64Builder), 
entry.FileSequenceNum())
+               appendEntriesOptionalInt64(bldr.Field(2).(*array.Int64Builder), 
entry.DataSequenceNumber())
+               appendInspectOptionalInt64(bldr.Field(3).(*array.Int64Builder), 
entry.FileSequenceNumber())
                dataFileBuilder.Append(true)
 
                return contentFileBuilder.append(entry.DataFile())
diff --git a/table/inspect_internal_test.go b/table/inspect_internal_test.go
index d7d3da7a0..1b26c60e3 100644
--- a/table/inspect_internal_test.go
+++ b/table/inspect_internal_test.go
@@ -1198,7 +1198,7 @@ func TestInspectAllManifestsPreservesSnapshotReferences(t 
*testing.T) {
        require.NoError(t, err)
 
        manifest := iceberg.NewManifestBuilder(2, 
tableLocation+"/metadata/shared-manifest.avro", 100, 0, 1).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                AddedFiles(1).
                KeyMetadata([]byte{1, 2, 3}).
                Build()
@@ -1251,7 +1251,7 @@ func TestInspectAllManifestsStreamsRecordBatches(t 
*testing.T) {
                manifests[idx] = iceberg.NewManifestBuilder(2,
                        
fmt.Sprintf("mem://default/table-location/metadata/manifest-%04d.avro", idx),
                        100, 0, 1).
-                       SequenceNum(1, 1).
+                       SequenceNumber(1, 1).
                        AddedFiles(1).
                        Build()
        }
@@ -1287,7 +1287,7 @@ func TestInspectAllManifestsAllocator(t *testing.T) {
                                manifests[idx] = iceberg.NewManifestBuilder(2,
                                        
fmt.Sprintf("mem://default/table-location/metadata/manifest-%04d.avro", idx),
                                        100, 0, 1).
-                                       SequenceNum(1, 1).
+                                       SequenceNumber(1, 1).
                                        AddedFiles(1).
                                        Build()
                        }
@@ -1370,7 +1370,7 @@ func TestInspectManifestsContainsNaN(t *testing.T) {
        require.NoError(t, err)
        manifest := iceberg.NewManifestBuilder(2, 
"mem://default/table-location/metadata/contains-nan.avro",
                100, int32(spec.ID()), 1).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                Partitions([]iceberg.FieldSummary{{
                        ContainsNaN: &containsNaN,
                        LowerBound:  &bound,
@@ -1429,7 +1429,7 @@ func TestInspectManifestsPromotedPartitionSummaryBounds(t 
*testing.T) {
                        require.NoError(t, err)
                        manifest := iceberg.NewManifestBuilder(2, 
"mem://default/table-location/metadata/promoted.avro",
                                100, int32(spec.ID()), 1).
-                               SequenceNum(1, 1).
+                               SequenceNumber(1, 1).
                                Partitions([]iceberg.FieldSummary{{LowerBound: 
&bound, UpperBound: &bound}}).
                                Build()
                        tbl := inspectTableWithManifestListAndSchemas(t, 
initialSchema, currentSchema,
@@ -1459,7 +1459,7 @@ func TestInspectManifestsDroppedPartitionSource(t 
*testing.T) {
        require.NoError(t, err)
        manifest := iceberg.NewManifestBuilder(2, 
"mem://default/table-location/metadata/dropped-source.avro",
                100, int32(spec.ID()), 1).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                Partitions([]iceberg.FieldSummary{{LowerBound: &bound, 
UpperBound: &bound}}).
                Build()
        tbl := inspectTableWithManifestListAndSchemas(t, initialSchema, 
currentSchema,
@@ -1484,7 +1484,7 @@ func TestInspectManifestsDeleteCounts(t *testing.T) {
        manifest := iceberg.NewManifestBuilder(2, 
"mem://default/table-location/metadata/delete-manifest.avro",
                100, int32(spec.ID()), 1).
                Content(iceberg.ManifestContentDeletes).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                AddedFiles(2).
                ExistingFiles(3).
                DeletedFiles(4).
@@ -1615,7 +1615,7 @@ func 
TestInspectManifestsRejectsNegativeCountsForV2AndV3(t *testing.T) {
                        manifest := iceberg.NewManifestBuilder(tt.version, 
"mem://default/table-location/metadata/negative-count.avro",
                                100, int32(spec.ID()), 1).
                                Content(tt.content).
-                               SequenceNum(1, 1).
+                               SequenceNumber(1, 1).
                                AddedFiles(tt.added).
                                ExistingFiles(tt.existing).
                                DeletedFiles(tt.deleted).
@@ -1633,7 +1633,7 @@ func TestInspectManifestsRejectsMissingPartitionSpec(t 
*testing.T) {
        spec := partitionedSpec()
        manifest := iceberg.NewManifestBuilder(2, 
"mem://default/table-location/metadata/missing-spec.avro",
                100, 999, 1).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                Partitions([]iceberg.FieldSummary{{}}).
                Build()
        tbl := inspectTableWithManifestList(t, spec, 2, 
[]iceberg.ManifestFile{manifest})
@@ -1647,7 +1647,7 @@ func 
TestInspectManifestsAllowsMissingPartitionSpecWithoutSummaries(t *testing.T
        spec := partitionedSpec()
        manifest := iceberg.NewManifestBuilder(2, 
"mem://default/table-location/metadata/missing-spec.avro",
                100, 999, 1).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                Build()
        tbl := inspectTableWithManifestList(t, spec, 2, 
[]iceberg.ManifestFile{manifest})
 
@@ -1668,7 +1668,7 @@ func 
TestInspectManifestsReportsPartitionFieldNameInBoundErrors(t *testing.T) {
        invalidBound := []byte{0x01}
        manifest := iceberg.NewManifestBuilder(2, 
"mem://default/table-location/metadata/invalid-bound.avro",
                100, int32(spec.ID()), 1).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                Partitions([]iceberg.FieldSummary{{LowerBound: &invalidBound}}).
                Build()
        tbl := inspectTableWithManifestList(t, spec, 2, 
[]iceberg.ManifestFile{manifest})
@@ -1681,7 +1681,7 @@ func TestInspectManifestsWrapsFileIOFactoryError(t 
*testing.T) {
        spec := partitionedSpec()
        manifest := iceberg.NewManifestBuilder(2, 
"mem://default/table-location/metadata/manifest.avro",
                100, int32(spec.ID()), 1).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                Build()
        tbl := inspectTableWithManifestList(t, spec, 2, 
[]iceberg.ManifestFile{manifest})
        factoryErr := errors.New("factory failed")
@@ -1712,7 +1712,7 @@ func TestInspectManifestsRejectsExtraPartitionSummaries(t 
*testing.T) {
        spec := partitionedSpec()
        manifest := iceberg.NewManifestBuilder(2, 
"mem://default/table-location/metadata/extra-summary.avro",
                100, int32(spec.ID()), 1).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                Partitions([]iceberg.FieldSummary{{}, {}}).
                Build()
        tbl := inspectTableWithManifestList(t, spec, 2, 
[]iceberg.ManifestFile{manifest})
@@ -1727,7 +1727,7 @@ func TestInspectManifestsRejectsUnknownContent(t 
*testing.T) {
        manifest := iceberg.NewManifestBuilder(2, 
"mem://default/table-location/metadata/unknown-content.avro",
                100, int32(spec.ID()), 1).
                Content(iceberg.ManifestContent(2)).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                Build()
        tbl := inspectTableWithManifestList(t, spec, 2, 
[]iceberg.ManifestFile{manifest})
 
@@ -2867,7 +2867,7 @@ func 
TestInspectPartitionsLeavesSpecIDUnsetForExpiredSnapshot(t *testing.T) {
        require.NoError(t, err)
        require.NoError(t, memIO.WriteFile(manifestPath, manifestBuf.Bytes()))
        manifest := iceberg.NewManifestBuilder(2, manifestPath, 
int64(manifestBuf.Len()), int32(spec.ID()), expiredSnapshotID).
-               SequenceNum(sequenceNumber, sequenceNumber).
+               SequenceNumber(sequenceNumber, sequenceNumber).
                AddedFiles(1).
                AddedRows(1).
                Build()
diff --git a/table/maintenance/manifest_test_helpers_test.go 
b/table/maintenance/manifest_test_helpers_test.go
index d84f913da..3d844eb39 100644
--- a/table/maintenance/manifest_test_helpers_test.go
+++ b/table/maintenance/manifest_test_helpers_test.go
@@ -127,7 +127,7 @@ func writeManifest(t testing.TB, tio *trackingIO, 
snapshotID, seqNum int64, mani
        require.NoError(t, err)
 
        entry := iceberg.NewManifestEntryBuilder(iceberg.EntryStatusADDED, 
&snapshotID, df.Build()).
-               SequenceNum(seqNum).
+               DataSequenceNumber(seqNum).
                Build()
 
        var buf bytes.Buffer
@@ -136,7 +136,7 @@ func writeManifest(t testing.TB, tio *trackingIO, 
snapshotID, seqNum int64, mani
        require.NoError(t, tio.WriteFile(manifestPath, buf.Bytes()))
 
        return iceberg.NewManifestBuilder(2, manifestPath, int64(buf.Len()), 0, 
snapshotID).
-               SequenceNum(seqNum, seqNum).
+               SequenceNumber(seqNum, seqNum).
                AddedFiles(1).
                AddedRows(1).
                Build()
diff --git a/table/partition_conflict_test.go b/table/partition_conflict_test.go
index 2341f8c82..6daaaadac 100644
--- a/table/partition_conflict_test.go
+++ b/table/partition_conflict_test.go
@@ -98,7 +98,7 @@ func writeTestManifest(
        require.NoError(t, err)
 
        entry := iceberg.NewManifestEntryBuilder(iceberg.EntryStatusADDED, 
&snapshotID, df.Build()).
-               SequenceNum(1).
+               DataSequenceNumber(1).
                Build()
 
        manifestPath := filepath.ToSlash(filepath.Join(dir, 
fmt.Sprintf("manifest-%d.avro", snapshotID)))
diff --git a/table/partition_residual_read_test.go 
b/table/partition_residual_read_test.go
index 5fb45a2ea..2cb84bb1f 100644
--- a/table/partition_residual_read_test.go
+++ b/table/partition_residual_read_test.go
@@ -72,7 +72,7 @@ func TestReadTasksUsesIdentityPartitionResidual(t *testing.T) 
{
                iceberg.EntryStatusADDED,
                &snapshotID,
                dataFileBuilder.Build(),
-       ).SequenceNum(1).Build()
+       ).DataSequenceNumber(1).Build()
        manifestPath := tableLocation + "/metadata/manifest.avro"
        var manifestBuffer bytes.Buffer
        manifest, err := iceberg.WriteManifest(
diff --git a/table/partition_residual_test.go b/table/partition_residual_test.go
index 58eb8a4da..ed0f74708 100644
--- a/table/partition_residual_test.go
+++ b/table/partition_residual_test.go
@@ -372,7 +372,7 @@ func TestPlanFilesLocalPopulatesPartitionResidual(t 
*testing.T) {
        dataFile := newTestDataFile(t, spec, dataPath, map[int]any{1000: 
int32(5)})
        entry := iceberg.NewManifestEntryBuilder(
                iceberg.EntryStatusADDED, &snapshotID, dataFile,
-       ).SequenceNum(1).Build()
+       ).DataSequenceNumber(1).Build()
 
        var manifestBuffer bytes.Buffer
        manifest, err := iceberg.WriteManifest(
diff --git a/table/pos_delete_collect.go b/table/pos_delete_collect.go
index 198d24a4e..dec778543 100644
--- a/table/pos_delete_collect.go
+++ b/table/pos_delete_collect.go
@@ -106,7 +106,7 @@ func collectPositionDeleteCandidates(ctx context.Context, 
fs iceio.IO, manifests
                        }
 
                        // An unset delete sequence cannot be compared safely. 
Retain it.
-                       if seq := e.SequenceNum(); seq >= 0 {
+                       if seq := e.DataSequenceNumber(); seq >= 0 {
                                partitionKey, err := 
canonicalPartitionKey(df.SpecID(), dataFilePartition(df))
                                if err != nil {
                                        return nil, false, fmt.Errorf("building 
partition key for position delete %s (spec %d): %w", df.FilePath(), 
df.SpecID(), err)
@@ -147,7 +147,7 @@ func minSurvivorSeqByPartition(ctx context.Context, fs 
iceio.IO, manifests []ice
 
                        // Unknown survivor sequence numbers are treated as old 
as possible,
                        // retaining every delete whose applicability is 
uncertain.
-                       seq := max(e.SequenceNum(), 0)
+                       seq := max(e.DataSequenceNumber(), 0)
                        key, err := canonicalPartitionKey(df.SpecID(), 
dataFilePartition(df))
                        if err != nil {
                                return nil, fmt.Errorf("building partition key 
for surviving data file %s (spec %d): %w", df.FilePath(), df.SpecID(), err)
diff --git a/table/positional_delete_index.go b/table/positional_delete_index.go
index fa358a692..476a01b35 100644
--- a/table/positional_delete_index.go
+++ b/table/positional_delete_index.go
@@ -166,7 +166,7 @@ func buildPositionalDeleteIndex(entries 
[]iceberg.ManifestEntry) (*positionalDel
 
        sortBySequence := func(entries []iceberg.ManifestEntry) {
                slices.SortStableFunc(entries, func(a, b iceberg.ManifestEntry) 
int {
-                       return cmp.Compare(a.SequenceNum(), b.SequenceNum())
+                       return cmp.Compare(a.DataSequenceNumber(), 
b.DataSequenceNumber())
                })
        }
        for _, pathEntries := range idx.byPath {
@@ -174,7 +174,7 @@ func buildPositionalDeleteIndex(entries 
[]iceberg.ManifestEntry) (*positionalDel
        }
        sortPartitionBySequence := func(entries 
[]positionalPartitionDeleteEntry) {
                slices.SortStableFunc(entries, func(a, b 
positionalPartitionDeleteEntry) int {
-                       return cmp.Compare(a.entry.SequenceNum(), 
b.entry.SequenceNum())
+                       return cmp.Compare(a.entry.DataSequenceNumber(), 
b.entry.DataSequenceNumber())
                })
        }
        for _, partitionEntries := range idx.byPartition {
@@ -210,7 +210,7 @@ func (idx *positionalDeleteIndex) forDataFile(dataEntry 
iceberg.ManifestEntry) (
                }
        }
 
-       dataSeqNum := dataEntry.SequenceNum()
+       dataSeqNum := dataEntry.DataSequenceNumber()
        out, err := appendPartitionDeletesFromSequence(
                nil, partitionEntries, dataSeqNum, dataFile.FilePath())
        if err != nil {
@@ -229,7 +229,7 @@ func appendPartitionDeletesFromSequence(
        dataFilePath string,
 ) ([]iceberg.DataFile, error) {
        start := sort.Search(len(entries), func(i int) bool {
-               return entries[i].entry.SequenceNum() >= dataSeqNum
+               return entries[i].entry.DataSequenceNumber() >= dataSeqNum
        })
        if start == len(entries) {
                return out, nil
@@ -258,7 +258,7 @@ func appendPositionalDeletesFromSequence(
        dataSeqNum int64,
 ) []iceberg.DataFile {
        start := sort.Search(len(entries), func(i int) bool {
-               return entries[i].SequenceNum() >= dataSeqNum
+               return entries[i].DataSequenceNumber() >= dataSeqNum
        })
        for _, entry := range entries[start:] {
                out = append(out, entry.DataFile())
diff --git a/table/positional_delete_index_bench_test.go 
b/table/positional_delete_index_bench_test.go
index dd5ed66c2..5fcbee04d 100644
--- a/table/positional_delete_index_bench_test.go
+++ b/table/positional_delete_index_bench_test.go
@@ -398,7 +398,7 @@ func matchPositionalDeletesByMetrics(
        deleteEntries []iceberg.ManifestEntry,
 ) ([]iceberg.DataFile, error) {
        start := sort.Search(len(deleteEntries), func(i int) bool {
-               return deleteEntries[i].SequenceNum() >= dataEntry.SequenceNum()
+               return deleteEntries[i].DataSequenceNumber() >= 
dataEntry.DataSequenceNumber()
        })
        evaluator, err := 
newInclusiveMetricsEvaluator(iceberg.PositionalDeleteSchema,
                iceberg.EqualTo(iceberg.Reference("file_path"), 
dataEntry.DataFile().FilePath()),
@@ -432,7 +432,7 @@ func matchPositionalDeletesByPartition(
        }
 
        start := sort.Search(len(deleteEntries), func(i int) bool {
-               return deleteEntries[i].SequenceNum() >= dataEntry.SequenceNum()
+               return deleteEntries[i].DataSequenceNumber() >= 
dataEntry.DataSequenceNumber()
        })
        evaluator, err := 
newInclusiveMetricsEvaluator(iceberg.PositionalDeleteSchema,
                iceberg.EqualTo(iceberg.Reference("file_path"), 
dataFile.FilePath()),
diff --git a/table/positional_delete_index_test.go 
b/table/positional_delete_index_test.go
index 88478bce2..3f40700f6 100644
--- a/table/positional_delete_index_test.go
+++ b/table/positional_delete_index_test.go
@@ -257,7 +257,7 @@ func 
TestPositionalDeleteIndexMatchesReferenceApplicability(t *testing.T) {
 
        for _, dataEntry := range dataEntries {
                t.Run(fmt.Sprintf("%s/spec=%d/sequence=%d",
-                       dataEntry.DataFile().FilePath(), 
dataEntry.DataFile().SpecID(), dataEntry.SequenceNum()), func(t *testing.T) {
+                       dataEntry.DataFile().FilePath(), 
dataEntry.DataFile().SpecID(), dataEntry.DataSequenceNumber()), func(t 
*testing.T) {
                        matched, err := idx.forDataFile(dataEntry)
                        require.NoError(t, err)
 
@@ -280,7 +280,7 @@ func referencePositionalDeleteApplies(
        deleteEntry iceberg.ManifestEntry,
        pathFieldID int,
 ) bool {
-       if deleteEntry.SequenceNum() < dataEntry.SequenceNum() {
+       if deleteEntry.DataSequenceNumber() < dataEntry.DataSequenceNumber() {
                return false
        }
 
diff --git a/table/replace_files_test.go b/table/replace_files_test.go
index 2a2bf491c..065aed728 100644
--- a/table/replace_files_test.go
+++ b/table/replace_files_test.go
@@ -217,7 +217,7 @@ func 
TestReplaceFilesWithDeleteFilesPreservesDataSequenceNumber(t *testing.T) {
        require.NoError(t, err)
 
        oldDelete := oldDeleteBuilder.Build()
-       oldSequence := currentManifestEntry(t, tbl, 
oldDelete.FilePath()).SequenceNum()
+       oldSequence := currentManifestEntry(t, tbl, 
oldDelete.FilePath()).DataSequenceNumber()
        newDeletePath := tbl.Location() + "/data/new-pos-delete.parquet"
        writeParquetFile(t, newDeletePath, table.PositionalDeleteArrowSchema,
                fmt.Sprintf(`[{"file_path":%q,"pos":0}]`, dataPath))
@@ -236,7 +236,7 @@ func 
TestReplaceFilesWithDeleteFilesPreservesDataSequenceNumber(t *testing.T) {
        tbl, err = tx.Commit(t.Context())
        require.NoError(t, err)
 
-       assert.Equal(t, oldSequence, currentManifestEntry(t, tbl, 
newDeletePath).SequenceNum(),
+       assert.Equal(t, oldSequence, currentManifestEntry(t, tbl, 
newDeletePath).DataSequenceNumber(),
                "rewritten delete files must retain the replaced data sequence 
number")
        assert.NotEqual(t, tbl.CurrentSnapshot().SequenceNumber, oldSequence,
                "the new snapshot sequence must not replace the delete data 
sequence")
@@ -366,7 +366,7 @@ func 
TestReplaceFilesWithDeleteFilesValidatesDeletionVectorIdentity(t *testing.T
                require.NoError(t, 
tx.NewRowDelta(nil).AddDeletes(sourceDelete).Commit(t.Context()))
                sharedTbl, err := tx.Commit(t.Context())
                require.NoError(t, err)
-               sequence := currentManifestEntry(t, sharedTbl, 
sourceDelete.FilePath()).SequenceNum()
+               sequence := currentManifestEntry(t, sharedTbl, 
sourceDelete.FilePath()).DataSequenceNumber()
 
                tx = sharedTbl.NewTransaction()
                require.NoError(t, tx.UpgradeFormatVersion(3))
@@ -458,7 +458,7 @@ func 
TestReplaceFilesWithDeleteFilesValidatesExistingPaths(t *testing.T) {
                        }
                        tbl, err = tx.Commit(t.Context())
                        require.NoError(t, err)
-                       sequence := currentManifestEntry(t, tbl, 
source.FilePath()).SequenceNum()
+                       sequence := currentManifestEntry(t, tbl, 
source.FilePath()).DataSequenceNumber()
 
                        for _, tt := range []struct {
                                name string
@@ -529,7 +529,7 @@ func 
TestReplaceFilesWithDeleteFilesRejectsPartialPositionDeleteToDVRewrite(t *t
        tbl, err = tx.Commit(t.Context())
        require.NoError(t, err)
 
-       sequence := currentManifestEntry(t, tbl, 
oldDeletes[0].FilePath()).SequenceNum()
+       sequence := currentManifestEntry(t, tbl, 
oldDeletes[0].FilePath()).DataSequenceNumber()
        offset, length := int64(8), int64(16)
        replacement := newRewriteDeletionVector(t, 
tbl.Location()+"/data/replacement.puffin", dataPath, &offset, &length)
 
@@ -572,7 +572,7 @@ func 
TestReplaceFilesWithDeleteFilesRejectsDeletionVectorPartitionMismatch(t *te
        require.NoError(t, 
tx.NewRowDelta(nil).AddDeletes(oldDelete).Commit(t.Context()))
        tbl, err = tx.Commit(t.Context())
        require.NoError(t, err)
-       deleteSequence := currentManifestEntry(t, tbl, 
oldDeletePath).SequenceNum()
+       deleteSequence := currentManifestEntry(t, tbl, 
oldDeletePath).DataSequenceNumber()
 
        tx = tbl.NewTransaction()
        require.NoError(t, tx.UpgradeFormatVersion(3))
@@ -624,7 +624,7 @@ func 
TestReplaceFilesWithDeleteFilesIgnoresOlderSurvivingPositionDelete(t *testi
        require.NoError(t, 
tx.NewRowDelta(nil).AddDeletes(oldPartitionDelete).Commit(t.Context()))
        tbl, err = tx.Commit(t.Context())
        require.NoError(t, err)
-       oldPartitionDeleteSequence := currentManifestEntry(t, tbl, 
oldPartitionDeletePath).SequenceNum()
+       oldPartitionDeleteSequence := currentManifestEntry(t, tbl, 
oldPartitionDeletePath).DataSequenceNumber()
 
        dataBPath := tbl.Location() + "/data/data-b.parquet"
        dataBBuilder, err := iceberg.NewDataFileBuilder(
@@ -635,7 +635,7 @@ func 
TestReplaceFilesWithDeleteFilesIgnoresOlderSurvivingPositionDelete(t *testi
        require.NoError(t, tx.AddDataFiles(t.Context(), 
[]iceberg.DataFile{dataBBuilder.Build()}, nil))
        tbl, err = tx.Commit(t.Context())
        require.NoError(t, err)
-       dataBSequence := currentManifestEntry(t, tbl, dataBPath).SequenceNum()
+       dataBSequence := currentManifestEntry(t, tbl, 
dataBPath).DataSequenceNumber()
        require.Greater(t, dataBSequence, oldPartitionDeleteSequence)
 
        filePathField, ok := 
iceberg.PositionalDeleteSchema.FindFieldByName("file_path")
@@ -655,7 +655,7 @@ func 
TestReplaceFilesWithDeleteFilesIgnoresOlderSurvivingPositionDelete(t *testi
        require.NoError(t, 
tx.NewRowDelta(nil).AddDeletes(newPositionDelete).Commit(t.Context()))
        tbl, err = tx.Commit(t.Context())
        require.NoError(t, err)
-       newPositionDeleteSequence := currentManifestEntry(t, tbl, 
newPositionDeletePath).SequenceNum()
+       newPositionDeleteSequence := currentManifestEntry(t, tbl, 
newPositionDeletePath).DataSequenceNumber()
 
        tx = tbl.NewTransaction()
        require.NoError(t, tx.UpgradeFormatVersion(3))
@@ -681,7 +681,7 @@ func 
TestReplaceFilesWithDeleteFilesIgnoresOlderSurvivingPositionDelete(t *testi
                "an older position delete cannot apply to the newer target data 
file")
        tbl, err = tx.Commit(t.Context())
        require.NoError(t, err)
-       assert.Equal(t, newPositionDeleteSequence, currentManifestEntry(t, tbl, 
replacement.FilePath()).SequenceNum())
+       assert.Equal(t, newPositionDeleteSequence, currentManifestEntry(t, tbl, 
replacement.FilePath()).DataSequenceNumber())
 }
 
 func TestReplaceFilesWithDeleteFilesRejectsSurvivingDeletionVector(t 
*testing.T) {
@@ -711,7 +711,7 @@ func 
TestReplaceFilesWithDeleteFilesRejectsSurvivingDeletionVector(t *testing.T)
 
        offset, length := int64(8), int64(16)
        replacement := newRewriteDeletionVector(t, 
tbl.Location()+"/data/replacement-dv.puffin", target, &offset, &length)
-       sequence := currentManifestEntry(t, tbl, 
siblingDVs[0].FilePath()).SequenceNum()
+       sequence := currentManifestEntry(t, tbl, 
siblingDVs[0].FilePath()).DataSequenceNumber()
        tx = tbl.NewTransaction()
        err = tx.ReplaceFilesWithDeleteFiles(t.Context(), nil, nil,
                []iceberg.DataFile{siblingDVs[0]},
@@ -733,7 +733,7 @@ func 
TestReplaceFilesWithDeleteFilesAllowsDroppedEqualityField(t *testing.T) {
        require.NoError(t, 
tx.NewRowDelta(nil).AddDeletes(oldDelete).Commit(t.Context()))
        tbl, err = tx.Commit(t.Context())
        require.NoError(t, err)
-       sequence := currentManifestEntry(t, tbl, 
oldDelete.FilePath()).SequenceNum()
+       sequence := currentManifestEntry(t, tbl, 
oldDelete.FilePath()).DataSequenceNumber()
 
        tx = tbl.NewTransaction()
        require.NoError(t, tx.UpdateSchema(true, 
false).DeleteColumn([]string{"data"}).Commit())
@@ -1269,7 +1269,7 @@ func 
TestReplaceFilesRejectsDeletionVectorSupersededByCurrentSnapshot(t *testing
                                        []iceberg.DataFile{superseded},
                                        []table.DeleteFileAddition{{
                                                File:               
rewritten[0],
-                                               DataSequenceNumber: 
currentManifestEntry(t, tbl, superseded.FilePath()).SequenceNum(),
+                                               DataSequenceNumber: 
currentManifestEntry(t, tbl, superseded.FilePath()).DataSequenceNumber(),
                                        }}, nil)
                        },
                },
@@ -1324,7 +1324,7 @@ func 
TestReplaceFilesRemovesLiveDeletionVectorNotSupersededEntry(t *testing.T) {
                        []iceberg.DataFile{liveDV},
                        []table.DeleteFileAddition{{
                                File:               rewritten[0],
-                               DataSequenceNumber: currentManifestEntry(t, 
tbl, liveDV.FilePath()).SequenceNum(),
+                               DataSequenceNumber: currentManifestEntry(t, 
tbl, liveDV.FilePath()).DataSequenceNumber(),
                        }}, nil))
                tbl, err = tx.Commit(t.Context())
                require.NoError(t, err)
diff --git a/table/rewrite_data_files_test.go b/table/rewrite_data_files_test.go
index 0ba78aa92..ef2e168ae 100644
--- a/table/rewrite_data_files_test.go
+++ b/table/rewrite_data_files_test.go
@@ -1345,7 +1345,7 @@ func readKeySeqNums(t *testing.T, tbl *table.Table) 
(eqDelete, smallMin, preserv
                                continue
                        }
                        path := e.DataFile().FilePath()
-                       seq := e.SequenceNum()
+                       seq := e.DataSequenceNumber()
                        switch {
                        case e.DataFile().ContentType() == 
iceberg.EntryContentEqDeletes:
                                eqDelete = seq
diff --git a/table/rewrite_files_test.go b/table/rewrite_files_test.go
index fb4189f4c..df2c512e8 100644
--- a/table/rewrite_files_test.go
+++ b/table/rewrite_files_test.go
@@ -327,7 +327,7 @@ func 
TestRewriteFiles_PreservesIndependentPositionDeleteSequences(t *testing.T)
                tbl, err = tx.Commit(t.Context())
                require.NoError(t, err)
                oldDeletes = append(oldDeletes, builder)
-               oldSequences = append(oldSequences, currentManifestEntry(t, 
tbl, path).SequenceNum())
+               oldSequences = append(oldSequences, currentManifestEntry(t, 
tbl, path).DataSequenceNumber())
        }
        require.NotEqual(t, oldSequences[0], oldSequences[1])
 
@@ -349,7 +349,7 @@ func 
TestRewriteFiles_PreservesIndependentPositionDeleteSequences(t *testing.T)
        require.NoError(t, err)
 
        for i, df := range newDeletes {
-               assert.Equal(t, oldSequences[i], currentManifestEntry(t, tbl, 
df.FilePath()).SequenceNum())
+               assert.Equal(t, oldSequences[i], currentManifestEntry(t, tbl, 
df.FilePath()).DataSequenceNumber())
        }
        assert.Empty(t, scanIDs(t, tbl),
                "each replacement must retain the applicability of its 
corresponding old position delete")
@@ -814,7 +814,7 @@ func 
TestRewriteFiles_RejectsConcurrentDeleteForAddedDVTarget(t *testing.T) {
        require.NoError(t, 
tx.NewRowDelta(nil).AddDeletes(oldDelete).Commit(t.Context()))
        tbl, err = tx.Commit(t.Context())
        require.NoError(t, err)
-       oldDeleteSequence := currentManifestEntry(t, tbl, 
oldDelete.FilePath()).SequenceNum()
+       oldDeleteSequence := currentManifestEntry(t, tbl, 
oldDelete.FilePath()).DataSequenceNumber()
 
        tx = tbl.NewTransaction()
        require.NoError(t, tx.UpgradeFormatVersion(3))
diff --git a/table/scan_task_finalization_planfiles_bench_test.go 
b/table/scan_task_finalization_planfiles_bench_test.go
index 8fc19eeaf..1ceec7efa 100644
--- a/table/scan_task_finalization_planfiles_bench_test.go
+++ b/table/scan_task_finalization_planfiles_bench_test.go
@@ -137,7 +137,7 @@ func newPlanFilesFinalizationBenchmarkTable(b testing.TB, 
splitOffsets bool) *Ta
                                iceberg.EntryStatusADDED,
                                &snapshotID,
                                fileBuilder.Build(),
-                       ).SequenceNum(sequenceNum).Build()
+                       ).DataSequenceNumber(sequenceNum).Build()
                }
 
                manifestPath := fmt.Sprintf("%s/metadata/manifest-%d.avro", 
tableLocation, manifestIndex)
@@ -151,7 +151,7 @@ func newPlanFilesFinalizationBenchmarkTable(b testing.TB, 
splitOffsets bool) *Ta
                }
                manifests[manifestIndex] = iceberg.NewManifestBuilder(
                        2, manifestPath, int64(manifestBuffer.Len()), 
int32(manifestSpec.ID()), snapshotID,
-               ).SequenceNum(sequenceNum, sequenceNum).
+               ).SequenceNumber(sequenceNum, sequenceNum).
                        
AddedFiles(int32(planFilesFinalizationBenchmarkFilesPerManifest)).
                        
AddedRows(int64(planFilesFinalizationBenchmarkFilesPerManifest)).
                        Build()
diff --git a/table/scanner.go b/table/scanner.go
index 5194ecf2b..968c93b47 100644
--- a/table/scanner.go
+++ b/table/scanner.go
@@ -938,14 +938,14 @@ func (scan *Scan) partitionFiltersForSchema(schema 
*iceberg.Schema) *keyDefaultM
 func (scan *Scan) checkSequenceNumber(minSeqNum int64, manifest 
iceberg.ManifestFile) bool {
        return manifest.ManifestContent() == iceberg.ManifestContentData ||
                (manifest.ManifestContent() == iceberg.ManifestContentDeletes &&
-                       manifest.SequenceNum() >= minSeqNum)
+                       manifest.SequenceNumber() >= minSeqNum)
 }
 
 func minSequenceNum(manifests []iceberg.ManifestFile) int64 {
        var n int64 = math.MaxInt64
        for _, m := range manifests {
                if m.ManifestContent() == iceberg.ManifestContentData {
-                       n = min(n, m.MinSequenceNum())
+                       n = min(n, m.MinSequenceNumber())
                }
        }
        if n == math.MaxInt64 {
@@ -964,14 +964,14 @@ func minSequenceNum(manifests []iceberg.ManifestFile) 
int64 {
 // snapshot as the equality deletes are not affected — this is how RowDelta
 // atomically adds new rows alongside deletes for old rows.
 func matchEqualityDeletesToData(dataEntry iceberg.ManifestEntry, 
eqDeleteEntries []iceberg.ManifestEntry) []iceberg.DataFile {
-       dataSeqNum := dataEntry.SequenceNum()
+       dataSeqNum := dataEntry.DataSequenceNumber()
        dataPartition := dataEntry.DataFile().Partition()
 
        out := make([]iceberg.DataFile, 0)
        for _, del := range eqDeleteEntries {
                // Equality deletes only apply to data files with a strictly 
lower
                // sequence number.
-               if del.SequenceNum() <= dataSeqNum {
+               if del.DataSequenceNumber() <= dataSeqNum {
                        continue
                }
 
@@ -1031,7 +1031,7 @@ func matchDVToData(dataEntry iceberg.ManifestEntry, 
dvIndex map[string]iceberg.M
        if !ok {
                return nil
        }
-       if dvSeq := dvEntry.SequenceNum(); dvSeq < 0 || dataEntry.SequenceNum() 
<= dvSeq {
+       if dvSeq := dvEntry.DataSequenceNumber(); dvSeq < 0 || 
dataEntry.DataSequenceNumber() <= dvSeq {
                return []iceberg.DataFile{dvEntry.DataFile()}
        }
 
@@ -1609,7 +1609,7 @@ func fileScanTaskForDataEntry(
        // _last_updated_sequence_number is the manifest entry's data sequence
        // number (field id 3), not file sequence number (field id 4).
        task.FirstRowID = dataFile.FirstRowID()
-       if seq := entry.SequenceNum(); seq >= 0 {
+       if seq := entry.DataSequenceNumber(); seq >= 0 {
                task.DataSequenceNumber = &seq
        }
 
diff --git a/table/scanner_empty_manifest_bench_test.go 
b/table/scanner_empty_manifest_bench_test.go
index af4634343..7cf80ca6f 100644
--- a/table/scanner_empty_manifest_bench_test.go
+++ b/table/scanner_empty_manifest_bench_test.go
@@ -152,7 +152,7 @@ func writeEmptyManifestBenchmarkManifest(
                )
                require.NoError(b, err)
                entries[i] = iceberg.NewManifestEntryBuilder(status, 
&snapshotID, dataFile.Build()).
-                       SequenceNum(sequenceNum).
+                       DataSequenceNumber(sequenceNum).
                        Build()
        }
 
diff --git a/table/scanner_internal_test.go b/table/scanner_internal_test.go
index 92580d549..59467f3ed 100644
--- a/table/scanner_internal_test.go
+++ b/table/scanner_internal_test.go
@@ -46,14 +46,14 @@ import (
 func newDataManifest(minSeqNum int64) iceberg.ManifestFile {
        return iceberg.NewManifestBuilder(2, "/path/to/manifest.avro", 1000, 0, 
1).
                Content(iceberg.ManifestContentData).
-               SequenceNum(minSeqNum, minSeqNum).
+               SequenceNumber(minSeqNum, minSeqNum).
                Build()
 }
 
 func newDeleteManifest(minSeqNum int64) iceberg.ManifestFile {
        return iceberg.NewManifestBuilder(2, "/path/to/manifest.avro", 1000, 0, 
1).
                Content(iceberg.ManifestContentDeletes).
-               SequenceNum(minSeqNum, minSeqNum).
+               SequenceNumber(minSeqNum, minSeqNum).
                Build()
 }
 
@@ -557,7 +557,7 @@ func scanWithManifestCount(tb testing.TB, manifestCount 
int) (*Scan, *iceio.MemF
                        iceberg.EntryStatusADDED,
                        &snapshotID,
                        dataFile.Build(),
-               ).SequenceNum(1).Build()
+               ).DataSequenceNumber(1).Build()
                manifestPath := 
fmt.Sprintf("mem://planning/table/metadata/manifest-%d.avro", i)
                var manifestData bytes.Buffer
                manifests[i], err = iceberg.WriteManifest(
@@ -948,7 +948,7 @@ func TestPlanDataManifestTasksPreservesManifestOrder(t 
*testing.T) {
        unknownCounts := iceberg.NewManifestBuilder(
                2, manifests[0].FilePath(), manifests[0].Length(), 0, 
snapshotID,
        ).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                AddedFiles(-1).
                ExistingFiles(-1).
                Build()
@@ -1220,7 +1220,7 @@ func TestFetchManifestCountersWithRealSnapshot(t 
*testing.T) {
                Build()
        deleteScanned := iceberg.NewManifestBuilder(2, 
"mem://default/table-location/metadata/delete-scanned.avro", 100, specID, 
snapshotID).
                Content(iceberg.ManifestContentDeletes).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                AddedFiles(1).
                Partitions([]iceberg.FieldSummary{{ContainsNull: false, 
LowerBound: match, UpperBound: match}}).
                Build()
@@ -1353,14 +1353,14 @@ func 
TestPlanFilesSkipsKnownEmptyManifestsBeforeOpening(t *testing.T) {
        deletePath := tableLocation + "/metadata/delete-empty.avro"
        dataManifest := iceberg.NewManifestBuilder(2, dataPath, 100, 
int32(spec.ID()), snapshotID).
                Content(iceberg.ManifestContentData).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                AddedFiles(0).
                ExistingFiles(0).
                DeletedFiles(2).
                Build()
        deleteManifest := iceberg.NewManifestBuilder(2, deletePath, 100, 
int32(spec.ID()), snapshotID).
                Content(iceberg.ManifestContentDeletes).
-               SequenceNum(1, 1).
+               SequenceNumber(1, 1).
                AddedFiles(0).
                ExistingFiles(0).
                DeletedFiles(1).
@@ -1424,7 +1424,7 @@ func TestScanReusesPartitionFiltersAcrossPlanningPhases(t 
*testing.T) {
        require.NoError(t, err)
        entry := iceberg.NewManifestEntryBuilder(
                iceberg.EntryStatusADDED, &snapshotID, dataFile.Build(),
-       ).SequenceNum(1).Build()
+       ).DataSequenceNumber(1).Build()
        var manifestBytes bytes.Buffer
        manifest, err := iceberg.WriteManifest(
                manifestPath, &manifestBytes, 2, spec, schema, snapshotID, 
[]iceberg.ManifestEntry{entry},
@@ -1670,7 +1670,7 @@ func TestTimeTravelMetricsPruningUsesSnapshotSchema(t 
*testing.T) {
                dataFile.LowerBoundValues(map[int][]byte{1: lower}).
                        UpperBoundValues(map[int][]byte{1: upper}).
                        Build(),
-       ).SequenceNum(1).Build()
+       ).DataSequenceNumber(1).Build()
 
        manifestPath := "mem://default/table/metadata/manifest.avro"
        var manifestBytes bytes.Buffer
@@ -2317,7 +2317,7 @@ func TestPlanFilesUnknownTransformDoesNotPrune(t 
*testing.T) {
                        dataFile.LowerBoundValues(map[int][]byte{1: 
int32Bound(5)}).
                                UpperBoundValues(map[int][]byte{1: 
int32Bound(5)}).
                                Build(),
-               ).SequenceNum(1).Build()
+               ).DataSequenceNumber(1).Build()
 
                var manifestBytes bytes.Buffer
                _, err = iceberg.WriteManifest(manifestPath, &manifestBytes, 2, 
spec, oldSchema, snapshotID,
@@ -2328,7 +2328,7 @@ func TestPlanFilesUnknownTransformDoesNotPrune(t 
*testing.T) {
                // Partition summary excludes the filter value (id == 5).
                manifest := iceberg.NewManifestBuilder(2, manifestPath, 
int64(manifestBytes.Len()), int32(spec.ID()), snapshotID).
                        Partitions([]iceberg.FieldSummary{{ContainsNull: false, 
LowerBound: &lower, UpperBound: &upper}}).
-                       SequenceNum(1, 1).
+                       SequenceNumber(1, 1).
                        AddedFiles(1).
                        Build()
 
@@ -2496,7 +2496,7 @@ func TestPlanDataManifestTasksHandlesInaccurateCounts(t 
*testing.T) {
                for i, manifest := range manifests {
                        manifests[i] = iceberg.NewManifestBuilder(2, 
manifest.FilePath(), manifest.Length(),
                                manifest.PartitionSpecID(), 
manifest.SnapshotID()).
-                               SequenceNum(manifest.SequenceNum(), 
manifest.MinSequenceNum()).
+                               SequenceNumber(manifest.SequenceNumber(), 
manifest.MinSequenceNumber()).
                                AddedFiles(counts[i]).
                                Build()
                }
diff --git a/table/scanner_manifest_projection_test.go 
b/table/scanner_manifest_projection_test.go
index 47f62d380..086765f5b 100644
--- a/table/scanner_manifest_projection_test.go
+++ b/table/scanner_manifest_projection_test.go
@@ -248,7 +248,7 @@ func 
TestPlanDataManifestTasksWithProjectionRetainsEqualityDeletePruning(t *test
        require.NoError(t, err)
        require.NoError(t, fs.WriteFile(deleteManifest.FilePath(), 
deleteBytes.Bytes()))
        deleteManifest = iceberg.NewManifestBuilder(2, 
deleteManifest.FilePath(), int64(deleteBytes.Len()), 0, 2).
-               Content(iceberg.ManifestContentDeletes).SequenceNum(2, 
2).AddedFiles(2).AddedRows(2).Build()
+               Content(iceberg.ManifestContentDeletes).SequenceNumber(2, 
2).AddedFiles(2).AddedRows(2).Build()
        classified, err := 
scan.collectManifestEntriesWithSchemaMinSequenceNum(t.Context(),
                []iceberg.ManifestFile{deleteManifest}, schema, 
scan.partitionFiltersForSchema(schema), 0, true)
        require.NoError(t, err)
diff --git a/table/scanner_plan_tasks_bench_test.go 
b/table/scanner_plan_tasks_bench_test.go
index 04e6062b1..dfcea8081 100644
--- a/table/scanner_plan_tasks_bench_test.go
+++ b/table/scanner_plan_tasks_bench_test.go
@@ -129,7 +129,7 @@ func newPlanTasksBenchmarkFixture(
                                iceberg.EntryStatusADDED,
                                &snapshotID,
                                dataFile.Build(),
-                       ).SequenceNum(sequenceNumber).Build()
+                       ).DataSequenceNumber(sequenceNumber).Build()
                }
 
                manifestPath := 
fmt.Sprintf("mem://plan-tasks-benchmark/metadata/manifest-%d.avro", 
manifestIndex)
@@ -144,7 +144,7 @@ func newPlanTasksBenchmarkFixture(
                manifests[manifestIndex] = iceberg.NewManifestBuilder(
                        2, manifestPath, int64(manifestBuf.Len()), 
int32(spec.ID()), snapshotID,
                ).
-                       SequenceNum(sequenceNumber, sequenceNumber).
+                       SequenceNumber(sequenceNumber, sequenceNumber).
                        AddedFiles(int32(entryCount)).
                        AddedRows(int64(entryCount)).
                        Build()
diff --git a/table/scanner_row_limit_bench_test.go 
b/table/scanner_row_limit_bench_test.go
index 59f6cf1bb..fff2a3df7 100644
--- a/table/scanner_row_limit_bench_test.go
+++ b/table/scanner_row_limit_bench_test.go
@@ -123,7 +123,7 @@ func writeRowLimitPlanningBenchmarkManifest(
        require.NoError(b, err)
 
        entry := iceberg.NewManifestEntryBuilder(iceberg.EntryStatusADDED, 
&snapshotID, dataFile.Build()).
-               SequenceNum(sequenceNumber).
+               DataSequenceNumber(sequenceNumber).
                Build()
 
        var manifestBuf bytes.Buffer
@@ -133,7 +133,7 @@ func writeRowLimitPlanningBenchmarkManifest(
        require.NoError(b, fs.WriteFile(manifestPath, manifestBuf.Bytes()))
 
        return iceberg.NewManifestBuilder(2, manifestPath, 
int64(manifestBuf.Len()), 0, snapshotID).
-               SequenceNum(sequenceNumber, sequenceNumber).
+               SequenceNumber(sequenceNumber, sequenceNumber).
                AddedFiles(1).
                AddedRows(1).
                Build()
diff --git a/table/snapshot_producers.go b/table/snapshot_producers.go
index 31de7f14b..698d5eae9 100644
--- a/table/snapshot_producers.go
+++ b/table/snapshot_producers.go
@@ -256,10 +256,10 @@ func (of *overwriteFiles) scanManifest(ctx 
context.Context, m iceberg.ManifestFi
                isData := content == iceberg.EntryContentData
                matched := (isDeletedData && isData) || (isDeletedDelete && 
!isData)
                if matched {
-                       seqNum := entry.SequenceNum()
+                       seqNum := entry.DataSequenceNumber()
                        scan.deleted = append(scan.deleted,
                                
iceberg.NewManifestEntry(iceberg.EntryStatusDELETED,
-                                       &of.base.snapshotID, &seqNum, 
entry.FileSequenceNum(),
+                                       &of.base.snapshotID, &seqNum, 
entry.FileSequenceNumber(),
                                        entry.DataFile()))
 
                        continue
diff --git a/table/snapshot_producers_test.go b/table/snapshot_producers_test.go
index 8d648a86c..a18a8fc54 100644
--- a/table/snapshot_producers_test.go
+++ b/table/snapshot_producers_test.go
@@ -2468,14 +2468,14 @@ func 
TestOverwriteParentDependentManifestsUsesProductionPath(t *testing.T) {
        require.Len(t, dataTombstone, 1)
        require.Equal(t, iceberg.EntryStatusDELETED, dataTombstone[0].Status())
        require.Equal(t, sp.snapshotID, dataTombstone[0].SnapshotID())
-       require.Equal(t, dataSequenceNumber, dataTombstone[0].SequenceNum())
+       require.Equal(t, dataSequenceNumber, 
dataTombstone[0].DataSequenceNumber())
        require.Equal(t, deletedData.FilePath(), 
dataTombstone[0].DataFile().FilePath())
 
        deleteTombstone := readEntries(got[1])
        require.Len(t, deleteTombstone, 1)
        require.Equal(t, iceberg.EntryStatusDELETED, 
deleteTombstone[0].Status())
        require.Equal(t, sp.snapshotID, deleteTombstone[0].SnapshotID())
-       require.Equal(t, deleteSequenceNumber, deleteTombstone[0].SequenceNum())
+       require.Equal(t, deleteSequenceNumber, 
deleteTombstone[0].DataSequenceNumber())
        require.Equal(t, removedDelete.FilePath(), 
deleteTombstone[0].DataFile().FilePath())
 
        keptDataEntries := readEntries(got[2])
diff --git a/table/table_test.go b/table/table_test.go
index be0a8a2ce..dae8b35fd 100644
--- a/table/table_test.go
+++ b/table/table_test.go
@@ -2700,7 +2700,7 @@ func (t *TableWritingTestSuite) TestMergeManifests() {
        for i, entry := range entries {
                t.Equal(snapshotList[i].SnapshotID, entry.SnapshotID())
                if t.formatVersion > 1 {
-                       t.EqualValues(3-i, entry.SequenceNum())
+                       t.EqualValues(3-i, entry.DataSequenceNumber())
                }
        }
 
diff --git a/table/transaction.go b/table/transaction.go
index ca194e2fd..58833f665 100644
--- a/table/transaction.go
+++ b/table/transaction.go
@@ -1996,7 +1996,7 @@ func (t *Transaction) replaceFiles(ctx context.Context, 
dataFilesToDelete, dataF
                // count as found when removing files, but it still blocks 
re-adding its path.
                isLive := entry.Status() != iceberg.EntryStatusDELETED
                if isData && isLive {
-                       liveDataFiles[path] = rewriteFileState{file: df, 
dataSequenceNumber: entry.SequenceNum()}
+                       liveDataFiles[path] = rewriteFileState{file: df, 
dataSequenceNumber: entry.DataSequenceNumber()}
                        if _, ok := setToDelete[path]; ok {
                                markedDataForDeletion = 
append(markedDataForDeletion, df)
                        }
@@ -2004,7 +2004,7 @@ func (t *Transaction) replaceFiles(ctx context.Context, 
dataFilesToDelete, dataF
                if !isData && isLive {
                        if _, ok := setDeleteFilesToRemove[path]; ok {
                                markedDeleteForRemoval = 
append(markedDeleteForRemoval, df)
-                               if seq := entry.SequenceNum(); seq >= 0 {
+                               if seq := entry.DataSequenceNumber(); seq >= 0 {
                                        removedDeleteSequenceNumbers = 
append(removedDeleteSequenceNumbers, seq)
                                        removedDeleteContents[df.ContentType()] 
= struct{}{}
                                } else {
@@ -2017,7 +2017,7 @@ func (t *Transaction) replaceFiles(ctx context.Context, 
dataFilesToDelete, dataF
                                // was already replaced would match the newer 
DV, which holds more deletes.
                                if want, ok := dvsToRemoveByRef[*ref]; ok && 
want.FilePath() == path {
                                        markedDVsForRemoval[*ref] = df
-                                       if seq := entry.SequenceNum(); seq >= 0 
{
+                                       if seq := entry.DataSequenceNumber(); 
seq >= 0 {
                                                removedDeleteSequenceNumbers = 
append(removedDeleteSequenceNumbers, seq)
                                                
removedDeleteContents[df.ContentType()] = struct{}{}
                                        } else {
@@ -2078,7 +2078,7 @@ func (t *Transaction) replaceFiles(ctx context.Context, 
dataFilesToDelete, dataF
                        if _, removed := setDeleteFilesToRemove[path]; !removed 
{
                                if _, automaticallyRemoved := 
autoSetDeleteFilesToRemove[path]; !automaticallyRemoved {
                                        survivingPositionDeletes = 
append(survivingPositionDeletes, rewriteFileState{
-                                               file: df, dataSequenceNumber: 
entry.SequenceNum(),
+                                               file: df, dataSequenceNumber: 
entry.DataSequenceNumber(),
                                        })
                                }
                        }
diff --git a/table/updates_test.go b/table/updates_test.go
index b364316e2..dade0a16f 100644
--- a/table/updates_test.go
+++ b/table/updates_test.go
@@ -87,7 +87,7 @@ func writeManifest(t testing.TB, tio *trackingIO, snapshotID, 
seqNum int64, mani
        require.NoError(t, err)
 
        entry := iceberg.NewManifestEntryBuilder(iceberg.EntryStatusADDED, 
&snapshotID, df.Build()).
-               SequenceNum(seqNum).
+               DataSequenceNumber(seqNum).
                Build()
 
        var buf bytes.Buffer
@@ -96,7 +96,7 @@ func writeManifest(t testing.TB, tio *trackingIO, snapshotID, 
seqNum int64, mani
        require.NoError(t, tio.WriteFile(manifestPath, buf.Bytes()))
 
        return iceberg.NewManifestBuilder(2, manifestPath, int64(buf.Len()), 0, 
snapshotID).
-               SequenceNum(seqNum, seqNum).
+               SequenceNumber(seqNum, seqNum).
                AddedFiles(1).
                AddedRows(1).
                Build()

Reply via email to