public void mergeTracker ( DRConsumerDrIdTracker tracker ) { final long newSafePoint = Math . max ( tracker . getSafePointDrId ( ) , getSafePointDrId ( ) ) ; m_map . addAll ( tracker . m_map ) ; truncate ( newSafePoint ) ; m_lastSpUniqueId = Math . max ( m_lastSpUniqueId , tracker . m_lastSpUniqueId ) ; m_lastMpUniqueId = Math . max ( m_lastMpUniqueId , tracker . m_lastMpUniqueId ) ; }
Merge the given tracker with the current tracker . Ranges can overlap . After the merge the current tracker will be truncated to the larger safe point .