Replicated TArray crashed

This is the property that I want to replicated:

UPROPERTY(Transient, ReplicatedUsing=OnRep_DepthFrameBuffer)
TArray<uint16> DepthFrameBuffer;

the size of the array is 217088

When I run the game in the editor, the engine crashed in RepLayout.cpp:

static bool ShouldSendProperty( FRepWriterState & WriterState, const uint16 Handle )
{
	if ( Handle == WriterState.Changed[WriterState.CurrentChanged] )
...
}

Assertion failed: (Index >= 0) & (Index < ArrayNum) [File:d:\UE4_DEPOT\Develop\UnrealEngine\Engine\Source\Runtime\Core\Public\Containers\Array.h] [Line: 678]
Array index out of bounds: 20491 from an array of size 20491

Is there anyone knows why? Is there any limit of data size for replicated properties?

i am not completely sure, but it could happen because uint16 is not a BP supported type, so neither is TArray.
Only BP supported types are replicatable. I might be wrong.

(this answer is for future readers, as the question was posted so long ago)