RPCs called on actors force a channel to be opened and the actor to be replicated at least once. If the RPC is called on a new replicated component while the actor channel is already open, but the component is immediately destroyed after the RPC call, the RPC header will force the creation of the component on the client side, but the destruction header will never be written by the server because it will not be added to the channel's replication map.

Steps to Reproduce
  1. Create a replicated component with a reliable RPC
  2. On an actor with an existing channel (ie PlayerController), create the component, call the RPC, and destroy the component in the same frame
  3. On the client note that the component is created, the RPC is called, but the component is never destroyed

Have Comments or More Details?

There's no existing public thread on this issue, so head over toAnswerHub just mention UE-67969 in the post.

Login to Vote

Affects Versions4.21
Target Fix4.23
Fix Commit6416582
Main Commit6416582
CreatedJan 3, 2019
ResolvedMay 13, 2019
UpdatedMay 26, 2019