FRepLayout::DiffProperties doesn't check if the property's conditions is COND_Never or if the Parent Cmd's flags have the ERepParentFlags::IsLifetime flag (which FRepLayout::InitFromClass doesn't set for COND_Never properties). This means that if just a COND_Never property changes, DiffProperties and ValidateAgainstState will print warnings to the logs. Both of these conditions are checked in CompareParentProperty to see if the property should be skipped.
Create an actor with a COND_Never replicated property (either using DOREPLIFETIME_CONDITION or DISABLE_REPLICATED_PROPERTY) that is changed frequently.
Set the actor to be dormant, and periodically call FlushNetDormancy on it.
Set net.DormancyValidate=1
Expected: dormancy validation will print no warnings, since the only property that is changing is not replicated
Actual: log warnings will be printed saying that the COND_Never property has changed
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-187676 in the post.
0 |
Component | UE - Networking |
---|---|
Affects Versions | 5.3 |
Target Fix | 5.6 |
Created | Jun 2, 2023 |
---|---|
Updated | Oct 25, 2024 |