From 6283610ad4044168a96c51aa8c6caa2f13ff914b Mon Sep 17 00:00:00 2001 From: Victor1319 Date: Thu, 14 Aug 2025 20:24:38 +0800 Subject: [PATCH] fix(meta): fix meta panic when log extent info. #1000286609 Signed-off-by: Victor1319 (cherry picked from commit aae16469311ef5b91e534c5dee8d44461eb38b84) --- metanode/inode.go | 6 ++++-- metanode/partition_free_list.go | 13 +++++++++---- metanode/partition_op_extent.go | 4 ++-- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/metanode/inode.go b/metanode/inode.go index 65f84aec8..ce6476256 100644 --- a/metanode/inode.go +++ b/metanode/inode.go @@ -276,8 +276,10 @@ func (i *Inode) getTailVerInList() (verSeq uint64, found bool) { // freelist clean inode get all exist extents info, deal special case for split key func (inode *Inode) GetAllExtsOfflineInode(mpID uint64, isMigration bool) (extInfo map[uint64][]*proto.ExtentKey) { - log.LogDebugf("deleteMarkedInodes. GetAllExtsOfflineInode.mp[%v] inode[%v] inode.Extents: %v, ino verList: %v", - mpID, inode.Inode, inode.GetExtents(), inode.GetMultiVerString()) + if log.EnableDebug() { + log.LogDebugf("deleteMarkedInodes. GetAllExtsOfflineInode.mp[%v] inode[%v] ino verList: %v", + mpID, inode.Inode, inode.GetMultiVerString()) + } extInfo = make(map[uint64][]*proto.ExtentKey) diff --git a/metanode/partition_free_list.go b/metanode/partition_free_list.go index ad0227cf0..cac1343ff 100644 --- a/metanode/partition_free_list.go +++ b/metanode/partition_free_list.go @@ -515,8 +515,10 @@ func (mp *metaPartition) deleteMarkedReplicaInodes(inoSlice []uint64, continue } - log.LogDebugf("[deleteMarkedReplicaInodes] isMigration[%v] mp[%v] inode[%v] inode.Extents: %v, ino verList: %v", - isMigration, mp.config.PartitionId, ino, inode.GetExtents(), inode.GetMultiVerString()) + if log.EnableDebug() { + log.LogDebugf("[deleteMarkedReplicaInodes] isMigration[%v] mp[%v] inode[%v] ino verList: %v", + isMigration, mp.config.PartitionId, ino, inode.GetMultiVerString()) + } if inode.getLayerLen() > 0 { log.LogErrorf("[deleteMarkedReplicaInodes] deleteMarkedInodes. mp[%v] inode[%v] verlist len %v should not drop", @@ -578,8 +580,11 @@ func (mp *metaPartition) deleteMarkedEBSInodes(inoSlice []uint64, isMigration bo continue } - log.LogDebugf("deleteMarkedEBSInodes. mp %v inode [%v], ino verlist %v", - mp.config.PartitionId, ino, inode.GetMultiVerString()) + if log.EnableDebug() { + log.LogDebugf("deleteMarkedEBSInodes. mp %v inode [%v], ino verlist %v", + mp.config.PartitionId, ino, inode.GetMultiVerString()) + } + if inode.getLayerLen() > 1 { log.LogErrorf("deleteMarkedEBSInodes. mp %v inode [%v] verlist len %v should not drop", mp.config.PartitionId, ino, inode.getLayerLen()) diff --git a/metanode/partition_op_extent.go b/metanode/partition_op_extent.go index b5273a9b9..f827bfd34 100644 --- a/metanode/partition_op_extent.go +++ b/metanode/partition_op_extent.go @@ -447,8 +447,8 @@ func (mp *metaPartition) ExtentsList(req *proto.GetExtentsRequest, p *Packet) (e } resp := &proto.GetExtentsResponse{} - log.LogInfof("action[ExtentsList] inode[%v] request verseq [%v] ino ver [%v] extent size %v ino.Size %v ino[%v] hist len %v", - req.Inode, req.VerSeq, ino.getVer(), len(ino.GetExtentEks()), ino.Size, ino, ino.getLayerLen()) + log.LogInfof("action[ExtentsList] inode[%v] request verseq [%v] ino ver [%v] ino.Size %v ino[%v] hist len %v", + req.Inode, req.VerSeq, ino.getVer(), ino.Size, ino, ino.getLayerLen()) resp.LeaseExpireTime = ino.LeaseExpireTime if req.VerSeq > 0 && ino.getVer() > 0 && (req.VerSeq < ino.getVer() || isInitSnapVer(req.VerSeq)) {