[FYI] Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
Various fixes to allow for compiling shared projects with target framework newer than .net6 where apis have changed
#rnx
[FYI] ben.marsh
[CL 33383846 by joe kirchoff in ue5-main branch]
- Add thread-safe ref-counting mecanism to UObject
- Make TStrongObjectPtr more light-weight and usable on any thread by using ref-count instead of FGCObject
- Add pinning API to WeakObjectPtr so they can be converted safely to StrongObjectPtr from any thread
- Make delegate broadcast thread-safe when used with UObjects by pinning during broadcast for non game-thread.
#jira UE-211624
#rb Robert.Manuszewski
[CL 33370596 by danny couture in ue5-main branch]
-- The "SUMMARY" message is the only log line treated as an error since it is information (description of problem, and file+line to address) but also not overly specific such that we should be able to make JIRA issues from these log lines without generating duplicate issues for the same race from different callsites.
- Changes EditorPerf TSAN job to use -VeryVerbose in UAT so that stdout and stderr are redirected for logging. TSAN emits logs to stderr/stdout (depends on environement variable, stderr by default). The logs can be redirected to a log file via envvar TSAN_OPTIONS and specifying a path, however, Horde will only use whatever is written to stdout/stderr for generating issues, so unless a post process is added to forward the TSAN log output after the application has terminated, having stdout redirected stderr/stdout by default for TSAN jobs is simplest approach.
- Added two new KnownLogEvents `Sanitizer_Thread` and `Sanitizer`. `Sanitizer_Thread` is used by the added matcher, but `Sanitizer` was also added so that we may follow the pattern of letting the first id represent the broader category of events
#rb Bryan.Johnson, Ben.Marsh
#jira UE-207074
[FYI] Francis.Hurteau
[CL 33007156 by kevin macaulayvacher in ue5-main branch]
IClock is useful for testing any code, not just Horde. The specific Redis-based implementation is still left with Horde.
[CL 32731898 by carl bystrom in ue5-main branch]
Nodes are read in the reverse order to which they are written, depth-first. Arranging nodes in the blob in this order prevents thrashing of the cache and improves performance.
#jira UE-210670
[CL 32586284 by ben marsh in ue5-main branch]