55 Commits

Author SHA1 Message Date
tomasz obrebski
5cce972555 Zen pak file streaming:
- -ZenPak used to indicate streaming using pak files instead of Zen loose file streaming
 - added pak file hardware decompression on supported platforms

#jira UE-221577
#rb David.Harvey, daniele.pieroni

[CL 36761256 by tomasz obrebski in 5.5 branch]
2024-10-01 20:04:53 -04:00
tomasz obrebski
54a30bd892 IFileHandle seekless ReadAt
#jira UE-213809
#rb brian.white, daniele.pieroni, David.Harvey, Josie.Yang
#rnx

[CL 36757440 by tomasz obrebski in 5.5 branch]
2024-10-01 19:29:48 -04:00
david harvey
4818431979 Use shared cache for storage server platform file.
#jira UE-222485
#rnx
#rb tomasz.obrebski

[CL 35891369 by david harvey in ue5-main branch]
2024-08-29 04:19:21 -04:00
zousar shaker
364c1c9163 Ensure that a missing oplog doesn't prevent us from starting editor/cooker when using zen as cook store and reader.
#rb matt.peters

[CL 35758634 by zousar shaker in ue5-main branch]
2024-08-22 18:47:37 -04:00
david harvey
94c3a90ee0 [Trivial] fix for missing return value for LowerLevel OpenWrite calls
[CL 35694390 by david harvey in ue5-main branch]
2024-08-21 07:08:18 -04:00
david harvey
d661487e40 [Trivial] fix for some zen file reads not being properly reported in insights I/O
#jira UE-221612
#rnx

[CL 35599048 by david harvey in ue5-main branch]
2024-08-16 13:11:06 -04:00
zousar shaker
3ec2eaac3a Ensure that a null lower level platform file doesn't cause StorageServerPlatformFile to crash with a null dereference.
[CL 35586407 by zousar shaker in ue5-main branch]
2024-08-15 22:33:11 -04:00
david harvey
939dbf8352 New stats & debugging for Zen:
New Insights stats:
 - File I/O trace for storage server files (requires running with -trace=default,file)
 - Throughput counters, matching the on-screen display (requires -trace=default,counters)

Debug refactor:
 - Main stat processing moved to ticker
 - Startup stats processed by background thread

CVar changes:
 - On-screen graphs now toggled via zen.showgraphs
 - Added zen.showstats to toggle the on-screen throughput messages

#jira UE-221612
#rnx
#rb daniele.pieroni

[CL 35562191 by david harvey in ue5-main branch]
2024-08-15 10:01:59 -04:00
zousar shaker
3d20fe9de5 Reorganize StorageServerClient module into the base module and a sibling module for debug functionality. Also expose an API for creation of storage server platform file usage outside of the default platform hierarchy.
#rb daniele.pieroni

[CL 35341386 by zousar shaker in ue5-main branch]
2024-08-06 11:00:25 -04:00
david harvey
e75af68a7b Added the option to specify file extensions that will be assumed to be immutable, and their timestamps will always be constant.
- only .uplugin at the moment
 - fixes the GFP plugin data caching when using Zen

#rnx
#jira UE-219872
#rb tomasz.obrebski, Zousar.Shaker

[CL 35266503 by david harvey in ue5-main branch]
2024-08-02 05:15:03 -04:00
steve robb
7e54d6b019 Fixed wrong FString constructor being used to construct from a range.
#rb james.hopkin

[CL 34600674 by steve robb in ue5-main branch]
2024-06-24 06:49:39 -04:00
dmytro ivanov
7cc8ba51b4 Refactor Zen storage module to be able to use other HTTP clients
#jira UE-189687
#rb tomasz.obrebski

[CL 34336030 by dmytro ivanov in ue5-main branch]
2024-06-13 07:54:06 -04:00
dan engelbrecht
ba5d026298 Add support for specifying BaseURI when connecting to zenserver to read cooked/paked data
#rb tomasz.obrebski
#jira UE-213809

[CL 34265531 by dan engelbrecht in ue5-main branch]
2024-06-11 01:27:00 -04:00
zousar shaker
d580cf94bd Restore file size caching on the client when using StorageServer (zen streaming).
[CL 34180571 by zousar shaker in ue5-main branch]
2024-06-06 19:05:45 -04:00
zousar shaker
40a38d0858 Rollback (as p4 edits) file size caching changes until the zenserver side issue is addressed.
[CL 33846932 by zousar shaker in ue5-main branch]
2024-05-22 18:14:43 -04:00
daniele pieroni
95d8d55606 Cache file size from manifest in client StorageServer in order to remove a trip to server when asking for a file size.
#rb Zousar.Shaker

[CL 33760072 by daniele pieroni in ue5-main branch]
2024-05-19 17:02:31 -04:00
daniele pieroni
15fc21528c Adding *.ini to the platform exclusion list for server only files while using Zen Streaming
#rb Zousar.Shaker

[CL 33382731 by daniele pieroni in ue5-main branch]
2024-05-01 16:53:53 -04:00
zousar shaker
1b1f592d91 Avoid doing round-trip stat messages for getting timestamps that are always going to be Now if the file exists when we already have a means on the client to determine file existence.
[FYI] dmytro.ivanov, tomasz.obrebski, daniele.pieroni

[CL 33289786 by zousar shaker in ue5-main branch]
2024-04-27 16:25:03 -04:00
zousar shaker
5bf244dba5 Don't emit fatal verbosity messages when we've failed to connect to a storage server. Allow the use of the more user-friendly message.
[CL 33289680 by zousar shaker in ue5-main branch]
2024-04-27 15:46:34 -04:00
zousar shaker
5888db8719 Add an exclusion list of file extensions that we don't forward to lower level physical platform file layer when using the StorageServerPlatformFile wrapper.
#rb daniele.pieroni
#jira UE-213266

[CL 33247809 by zousar shaker in ue5-main branch]
2024-04-25 17:44:31 -04:00
zousar shaker
f593d8b3d7 In support of Android streaming workflows:
- Allow android to connect to non-external (local) addresses like desktop platforms do because of the way in which ADB reverse port mapping is setup for Android.
-Ensure that on any platform where we are using BSD sockets, but haven't enabled IPV6 BSD socket support (which Android seems to be right now) that we make an effort to translate IPV6 loopback to IPV4 loopback addresses and warn if we encounter other IPV6 addresses.

#rb dmytro.ivanov

[CL 33170653 by zousar shaker in ue5-main branch]
2024-04-23 12:00:52 -04:00
daniele pieroni
5cf35df533 Add an option for StorageServerPlatformFile to control if needs to access local files or no
Used during ini files hierarchy reading in order to speed up boot time on specific platforms
#rb David.Harvey

[CL 33158386 by daniele pieroni in ue5-main branch]
2024-04-22 21:02:03 -04:00
dmytro ivanov
e5e452984d Fixing vulkan PSO cache when using Zen streaming
#jira UE-212667
#rb tomasz.obrebski

[CL 33069458 by dmytro ivanov in ue5-main branch]
2024-04-18 08:53:55 -04:00
daniele pieroni
4d9ee5e418 Adding an error msg in case we find but fail to deserialize ue.projectstore
#rb Josie.Yang

[CL 32696907 by daniele pieroni in ue5-main branch]
2024-04-03 10:02:35 -04:00
zousar shaker
106b9499e0 Convert ue.projectstore file to json.
#rb dan.engelbrecht

[CL 32464544 by zousar shaker in ue5-main branch]
2024-03-24 22:03:42 -04:00