Replicated Using Error with UObject

Hi,
I have a replicated UPROPERTY UObject with function
UPROPERTY(ReplicatedUsing = RepFunc)
UObject* Health;
The object is created during constructor with createdefaultsubobject();
Health is also added with subobject list with AddReplicatedSubObject() after creation and RemoveReplicatedSubObject()
RepFunc is a UFUNCTION with virtual which is overriden;

It works on initial spawning of owning actor. But it appears to trigger the following error during respawn. I am not sure why this is triggered.

Thanks