* Fixed so visualizer does not crash with version 21 traces that contains log messages that have over 100 lines
[CL 31900281 by henrik karlsson in ue5-main branch]
* Changed NetworkMessage to use a callback for when message is done and moved event out of message. This is a change in preparation for UbaStorageProxy optimization
[CL 31865186 by henrik karlsson in ue5-main branch]
* Added potential race condition fix that could happen during certain disconnect situations in storage proxy
* Added Deploy-Linux.bat that can be used to build all linux binaries. It also enables tsan when running "Deploy-Linux.bat debug"
[CL 31832747 by henrik karlsson in ue5-main branch]
* Reduced contention in SessionClient when testing if processes are done and spawning new processes
* Changed so FileMappingBuffer is lazily closing mapped memory. For some reason these calls end up being very expensive and we don't have to close them straight away
[CL 31796195 by henrik karlsson in ue5-main branch]
* Changed UbaAgent max connection count from 4 to 8 to improve throughput when being proxy
* Changed UbaAgent worker count for storage proxy from 16 to 192.. these workers are just receiving/sending data and need to be able to go wide
* Fixed so UbaCli use storage proxy when testing in process client
[CL 31796094 by henrik karlsson in ue5-main branch]
* Changed so sending in a 0 workercount will use logical core count
* Cleaned up code around work tracking
[CL 31796079 by henrik karlsson in ue5-main branch]
* Elevate thread priority for the threads doing all the networking to make sure proxy and host are prioritizing receiving/sending network data
[CL 31796023 by henrik karlsson in ue5-main branch]
* Changed so StorageProxy is not reading entire files first before sending them out to clients. Instead it now lazily loads each segment based on requests and send it
[CL 31795976 by henrik karlsson in ue5-main branch]
* Added Uba NetworkClient::StopAll
* Fixed shutdown race condition in NetworkClient
* Changed client work count from 16 to no of logical cores
[CL 31795950 by henrik karlsson in ue5-main branch]
* Changed so all ScopedReadLock and ScopedWriteLock are macros (SCOPED_READ_LOCK and SCOPED_WRITE_LOCK).. this to be able to add code around the lock to measure contention. Contention testing code can be enabled by setting UBA_TRACK_CONTENTION to 1
[CL 31795889 by henrik karlsson in ue5-main branch]
* Changed aws code to use token for meta data queries. Some of our AWS machines require this and it doesn't hurt to use it everywhere
[CL 31757296 by henrik karlsson in ue5-main branch]
* Fixed deadlock in client that could happen if client connecting timed out at the same time as it managed to connect. There were lots of race conditions in this code around these scenarios. Current implementation should be properly fixed
[CL 31756699 by henrik karlsson in ue5-main branch]
* Disabled custom signal handler in UbaHost in case this is the reason we get crashes in ubt
* Changed some logging from Info to Detail
[CL 31742437 by henrik karlsson in ue5-main branch]
* NetworkBackendTcp - Changed so when having failed connection we wait for socket thread before taking lock to delete it.
* NetworkBackendTcp - Removed check for 0 connections. That was a hack and now all code should properly wait
* Changed infinte wait of event to 60 seconds and output error if it times out..
* Removed NetworkBackend::Close. This should never be done on the outside. Outside should always call shutdown and then wait for disconnect callback
* Moved shutdown of socket to outside lock to prevent deadlock
[CL 31731469 by henrik karlsson in ue5-main branch]
* Fixed shutdown issues where client and server did not wait for connection to be closed before closing down
* Added error handling for trying to decompress bad cas files
[CL 31715626 by henrik karlsson in ue5-main branch]
* Added more description when failing to drop cas db entry
* Added cas entry lock around code that copy or link file out
* Added more fixes for things reported by tsan/asan
[CL 31708309 by henrik karlsson in ue5-main branch]
* Fixed a UbaAgent shutdown hang that can happen with certain timings where workers go from used to non-used at the same time as they are being stopped
[CL 31698187 by henrik karlsson in ue5-main branch]
* Fixed a bug in UbaWorkManager shutdown where intrusive linked list contains bad instances while deleting workers
* Fixed more tsan errors when doing ctrl-c on host
[CL 31676297 by henrik karlsson in ue5-main branch]
* Fixed read-after-free bug found by TSAN in StorageServer.cpp
* Fixed write-after-free bug found in UbaProcess.cpp (m_cancelEvent.Set() could be called after memory was freed)
* Lots of minor fixes found using TSAN. Most are harmless but still nice to cleanup
* Disabled mimalloc for linux again.. seems like tsan does not like it so maybe there are bugs in it
[CL 31676014 by henrik karlsson in ue5-main branch]
* Proper fix of UbaAgent shutdown deadlock. Missed that scope guard was explicitly called earlier.. added separate scope guard
[CL 31665834 by henrik karlsson in ue5-main branch]
* Changed so ClientSession struct is allocated using aligned_alloc instead of new.. we can't figure out why this is failing with new on the farm and noone can repro so this is a very nasty workaround until we do understand how it can go wrong.
* Fixed potential race condition in scheduler
* Reduced lock scope in StorageClient to remove chance of deadlock
* Enabled mimalloc on linux
[CL 31660233 by henrik karlsson in ue5-main branch]