ResizeForCopy() on large Array fails when using SaveGame class

Hi,

I’m storing a large amount of data in a struct containing several TArrays using UE4’s SaveGame class. 30 times per second, the player’s movement, rotation, actions, etc. are stored in arrays and after a while are saved to storage using a class extending USaveGame. When playing for only a few seconds (up to around 30 seems ok), everything seems ok, but when I leave it for a bit longer (around 60 seconds), the editor crashes when I try to save with the following error:

LoginId:e942143743xxxxxxxxxxxcef4d54
EpicAccountId:781d25xxxxxxxxxxxxxx5875239f2cda

Access violation - code c0000005 (first/second chance not available)

UE4Editor_Core
UE4Editor_Core
UE4Editor_Hindsight!TArray<float,FDefaultAllocator>::ResizeForCopy() [a:\ue_4.16\engine\source\runtime\core\public\containers\array.h:2299]
UE4Editor_Hindsight!TArray<float,FDefaultAllocator>::operator=() [a:\ue_4.16\engine\source\runtime\core\public\containers\array.h:419]
UE4Editor_Hindsight!FMovementDataStruct::operator=()
UE4Editor_Hindsight!AHindsightGameMode::SaveDataToPermanentStorage() [e:\ue4_games\hindsightgit\source\hindsight\hindsightgamemode.cpp:41]
UE4Editor_Hindsight!ATimeDeck::execTimeTravel() [e:\ue4_games\hindsightgit\source\hindsight\weapons\timedeck.h:15]
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_UMG
UE4Editor_UMG
UE4Editor_UMG
UE4Editor_UMG
UE4Editor_UMG
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Core
UE4Editor_Core
UE4Editor_Core
UE4Editor_Core
user32
user32
UE4Editor_Core
UE4Editor
UE4Editor
UE4Editor
UE4Editor
UE4Editor
kernel32
ntdll

Am I right in assuming that this error is caused by the data being too large/complex to save to storage? If so, is there a way around it?

Can provide code from structs if required.

Cheers,
Nik