I've noticed the issue occurring in both 4.20.3 (CL 4369336) and 4.21.0 (CL 4541578). The user on AnswerHub has also noticed the issue in 4.20.2 (CL unknown) and claims the issue did not occur in 4.17.2 (CL unknown).
From the AnswerHub post:
My logs are littered with PostReceivedBunch: Object == NULL messages. After a couple days of debugging, I've narrowed it down to only occurring on GameplayTasks (any ability task derived from AbilityTask_ApplyRootMotion_Base) that are simulated (bSimulatedTask = true).
It appears that that these tasks are never removed from the ReplicationMap of the simulating client's UActorChannel. As expected, every time these tasks are called, it adds a new replicator to the channel's ReplicationMap via FindOrCreateReplicator(). So what ends up happening is PostReceivedBunch() gets called on all the non removed replicators which have a null ObjectPtr property, thus trigger the PostReceivedBunch: Object == NULL message.
Result: Entries will contain a stale key (as noted by 4.21 natvis for Visual Studio) and null object pointer for ability tasks.
Expected result: Entries that are stale and null would be removed.
Head over to the existing Questions & Answers thread and let us know what's up.
1 |
Component | UE - Networking |
---|---|
Affects Versions | 4.20, 4.21 |
Target Fix | 4.22 |
Created | Nov 20, 2018 |
---|---|
Resolved | Jan 3, 2019 |
Updated | Sep 9, 2021 |