Ben Marsh
41bb86fc27
Horde: Rename TreeWriter.WriteRefAsync() -> WriteAsync() for consistency with other overloads.
...
#preflight none
[CL 23334493 by Ben Marsh in ue5-main branch]
2022-11-30 12:36:09 -05:00
Ben Marsh
e16e41aa10
Horde: Include the hash of the target node in refs, allowing TreeNodeRef objects to be constructed directly.
...
#preflight none
[CL 23317101 by Ben Marsh in ue5-main branch]
2022-11-29 16:00:26 -05:00
tim smith
d474429002
Missing cleanup of encoding detection code
...
#rb self
#rnx
#preflight 6384d6b9fa348e848079f34b
[CL 23300230 by tim smith in ue5-main branch]
2022-11-28 19:15:04 -05:00
Ben Marsh
7795a71e87
Horde: Add a default converter for compound types to/from Redis values, serializing each property as a string.
...
#preflight none
[CL 23298046 by Ben Marsh in ue5-main branch]
2022-11-28 16:58:50 -05:00
tim smith
491c8a71f2
Improve C# UHT's file reading time.
...
#rb self
#preflight 6384b61333774509000102f4
[CL 23288916 by tim smith in ue5-main branch]
2022-11-28 10:15:40 -05:00
Ben Marsh
51339f56ef
EpicGames.Core: Change Utf8StringBuilder from struct to class.
...
#preflight none
[CL 23288510 by Ben Marsh in ue5-main branch]
2022-11-28 09:40:07 -05:00
carl bystrom
34ea00c94a
EpicGames.Perforce: Use more parameterized tests for ManagedWorkspace
...
#preflight none
[CL 23288182 by carl bystrom in ue5-main branch]
2022-11-28 09:19:03 -05:00
Ben Marsh
2f1664e8c5
Horde: Missing file.
...
#preflight none
[CL 23287864 by Ben Marsh in ue5-main branch]
2022-11-28 08:59:30 -05:00
carl bystrom
a50dd252fd
Horde: Support populating a ManagedWorkspace without using the have table
...
#preflight none
[CL 23287693 by carl bystrom in ue5-main branch]
2022-11-28 08:43:04 -05:00
Helge Mathee
05fdcc139d
RigVM: Remove support for opaque attributes
...
#rb na
#jira na
#preflight https://horde.devtools.epicgames.com/job/6380cb4818176c67c25e8ecf
[CL 23286054 by Helge Mathee in ue5-main branch]
2022-11-28 02:47:25 -05:00
Ben Marsh
3acfaf7cfc
Horde: Refactor EpicGames.Redis to have an interface more in line with StackExchange.Redis. Typed keys are now analagous to RedisKey, rather than capturing an IDatabaseAsync interface as well, making the use of transactions more natural.
...
#preflight none
[CL 23279128 by Ben Marsh in ue5-main branch]
2022-11-27 18:27:25 -05:00
Ben Marsh
93df98e43b
EpicGames.Core: Add a utility class for building UTF8 strings.
...
#preflight none
[CL 23277151 by Ben Marsh in ue5-main branch]
2022-11-27 10:42:43 -05:00
Ben Marsh
660c00bd9d
EpicGames.Core: Add an extension method to run a conversion function on each element in an array.
...
#preflight 6382b5a818176c67c2b85184
[CL 23274605 by Ben Marsh in ue5-main branch]
2022-11-26 20:16:35 -05:00
Ben Marsh
651882f40e
Jupiter: Use CustomMediaTypeNames defined in EpicGames.AspNet rather than separate definition in Jupiter.
...
#preflight none
[CL 23252778 by Ben Marsh in ue5-main branch]
2022-11-23 14:14:33 -05:00
carl bystrom
96a3667354
EpicGames.Perforce: Use separate client when syncing without have table
...
Re-using the same client and mixing different sync behavior led to issues.
Also update fixture tests to verify state of the have table.
#preflight 637e4c068b12eb83a72c62c2
[CL 23250599 by carl bystrom in ue5-main branch]
2022-11-23 11:39:46 -05:00
Ben Marsh
c669b09c7b
EpicGames.Perforce: Fix threads being leaked if an exception is thrown during initialization for NativePerforceConnection.
...
#preflight none
[CL 23249141 by Ben Marsh in ue5-main branch]
2022-11-23 09:45:25 -05:00
tim smith
af6c57ed1f
Fixed C# UHT to generate a circular dependency error when an include file includes itself.
...
#rb self
#preflight 637ce133815e4b9b75554492
[CL 23243802 by tim smith in ue5-main branch]
2022-11-22 19:50:10 -05:00
tim smith
d86795f60a
Fixed performance issue with shadow detection and symbol lookup.
...
#rb self
#preflight 637bcb3acc307d6fa56f99d9
[CL 23228048 by tim smith in ue5-main branch]
2022-11-21 17:19:05 -05:00
carl bystrom
6bf3b1f95a
EpicGames.Perforce.Managed: Add tests for syncing without have-table and cache files
...
Also add stricter verification of digests after sync
#preflight 637b9365f514e1ded98f4921
[CL 23220725 by carl bystrom in ue5-main branch]
2022-11-21 10:07:07 -05:00
Ben Marsh
c6ac15444f
Horde: Fix NamespaceId parameters no longer being validated correctly.
...
#preflight none
#fyi Joakim.Lindqvist
[CL 23220253 by Ben Marsh in ue5-main branch]
2022-11-21 09:21:32 -05:00
Ben Marsh
8f5942b1bf
Horde: Support indexed searches for new log storage format. Persisted data is indexed using ngram tries, tail data is converted to plain text and searched directly.
...
#preflight none
[CL 23217803 by Ben Marsh in ue5-main branch]
2022-11-20 19:15:21 -05:00
Ben Marsh
08a5142fef
Horde: Support for log tailing with new storage backend.
...
* Once a log is retrieved, server adds an entry with this log id to a sorted set in Redis, scored by expiry time and broadcasts it to any other server instances.
* If a log is being tailed, server keeps the total number of lines in a Redis key and appends chunks of log data to a sorted set for that log scored by index of the first line.
* Chunks are split on fixed boundaries, in order to allow older entries to be purged by score without having to count the number of lines they contain first.
* Agent polls for requests to provide tail data via LogRpcService.UpdateLogTail, which calls LogTailService.WaitForTailNext. WaitForTailNext returns the index of the total line count for this log if it is being tailed (indicating the index of the next line that the agent should send to the server), or blocks until the log is being tailed.
* Once data is flushed to persistent storage, the number of flushed lines is added to LogRpcService._trimQueue and the line data is removed from Redis after LogRpcService.TrimAfter.
* Log node contains a "complete" flag indicating whether it is necessary to check for tail data.
#preflight none
[CL 23215856 by Ben Marsh in ue5-main branch]
2022-11-19 14:15:32 -05:00
Ben Marsh
529b815b6d
Horde: Add an option to return log data from the new log storage backend. Does not currently implement search.
...
#preflight none
[CL 23197938 by Ben Marsh in ue5-main branch]
2022-11-18 12:34:37 -05:00
Ben Marsh
fa1f956051
Horde: Add byte offsets and lengths to log chunks, for compatibility with legacy implementation.
...
#preflight none
[CL 23195850 by Ben Marsh in ue5-main branch]
2022-11-18 11:22:43 -05:00
Tim Smith
b10cfbfa7b
Fixed issue where removed UAT plugins would not have their compile script state file deleted and thus cause future -NoCompile runs to load old plugins.
...
#rb ryan.hummer
#preflight 63779554815e4b9b754b0afc
[CL 23193965 by Tim Smith in ue5-main branch]
2022-11-18 09:31:16 -05:00