95 Commits

Author SHA1 Message Date
zousar shaker
f2c7a0d374 Fix a collection of bugs related to ZenServer launching:
- Fix a message that had the text and caption fields inverted.
- Ensure that sandbox instances don't overwrite the .runcontext file used by non-sandbox instances.
- Fix a bug where the Zen data path when following DDC path settings wasn't normalizing the path leading to needless shutdown and startup of zenserver.

#rb matt.peters

[CL 26441952 by zousar shaker in 5.3 branch]
2023-07-18 14:43:33 -04:00
dan engelbrecht
a032226470 Make sure zen data path is in Zen folder when following local DDC path
#rb zousar.shaker

[CL 26037520 by dan engelbrecht in 5.3 branch]
2023-06-16 02:14:13 -04:00
dan engelbrecht
293e5fb421 Improved fallback logic and user feedback when datapath for zenserver is incorrectly configured
Validate that source files exists when trying to install zenserver

#rb zousar.shaker

[CL 25982456 by dan engelbrecht in ue5-main branch]
2023-06-14 12:24:33 -04:00
Zousar Shaker
731fd66bb3 Add CREATE_BREAKAWAY_FROM_JOB flag when launching zenserver to ensure that it can outlive the Horde build step in which it was spawned.
#rb none
#fyi ben.marsh

[CL 25945730 by Zousar Shaker in ue5-main branch]
2023-06-12 23:37:18 -04:00
kirill zorin
b6ee3a6c64 Fix UE_LOG callsites that have format string-related UB
#rb trivial
#preflight 647107780a6634dbb236a0a6

[CL 25651638 by kirill zorin in ue5-main branch]
2023-05-26 15:52:39 -04:00
zousar shaker
498c6603d2 Add mechanism to run ZenServer garbage collection for fixed durations (one week, and one day) from the ZenDashboard.
#rb dan.engelbrecht

[CL 25238966 by zousar shaker in ue5-main branch]
2023-04-28 16:01:26 -04:00
zousar shaker
e9f3f42c4f Allow control of Zen AutoLaunch process lifetime limit via an environment variable.
#rb dan.engelbrecht

[CL 25176566 by zousar shaker in ue5-main branch]
2023-04-25 02:22:51 -04:00
paul chipchase
dc9075fec4 Fix potential crash when checking if a local Zen service is running if the 'OutEffectivePort' parameter is not set.
#rb dan.engelbrecht
#jira none
#rnx
#preflight 6440f5eab91c130758ef099d

- The parameter OutEffectivePort is optional, but we were not checking if it was valid or not before writing to it.

[CL 25123346 by paul chipchase in ue5-main branch]
2023-04-20 04:32:22 -04:00
dan engelbrecht
a6ae046159 Add --no-sentry option to zenserver launch when "Send Unattended Bug Reports" is disabled in Unreal Editor.
The setting will only take affect for zenserver when the editor is restarted.

#jira UE-136311
#rb per.larsson
#preflight 6128a09672e9eb00016ec5ad

[CL 24908065 by dan engelbrecht in ue5-main branch]
2023-04-04 06:07:42 -04:00
mark lintott
ad70d0d087 Fix up of Event Attribute names to support Grafana in StudioAnalytics, DerivedData, Zen, Virtualization and CookProfiling. Grafana does not like the . separator so these have been replaced by _. I have checked this with the DPE team ( and verified ) this is still compatible with Snowflake/Tableau telemetry and such will not requires any changes to Snowflake or exisitng Tableau dashboards.
[FYI] wes.hunt, eric.knapik, paul.chipchase, devin.doucette
#rb devin.doucette
#preflight 641c6e31c44ce895fc452a84

[CL 24764989 by mark lintott in ue5-main branch]
2023-03-23 13:43:00 -04:00
dan engelbrecht
85b808b153 Accept duplicated file handles in Zen RPC responses
#preflight 641c11bf76461c460b8eabb4
#rb stefan.boberg per.larsson

[CL 24759274 by dan engelbrecht in ue5-main branch]
2023-03-23 05:15:22 -04:00
carlmagnus nordin
30c0f28fc0 ZenCook: Merge the oplog and package store manifest. Write an oplog instead of a package store manifest when cooking to loose files and read the oplog instead of the package store manifest to find cooked files in UAT when staging from Zen.
#rb per.larsson
#preflight 640efc9bc41a0a2a7799d470
#rnx

[CL 24632735 by carlmagnus nordin in ue5-main branch]
2023-03-14 06:43:23 -04:00
dan engelbrecht
196008f0e3 Refactor zen autolaunch
- Properly identify running instance with matching configuration when using a remapped effective port
- Properly handle shut down of configuration mismatch when using a remapped effective port
- Use shared ZenServerState to add sponsor processes instead of re-launching zenserver multiple times (zenserver is broken in that scenario)
- Clean up naming of functions and parameters to make intention extra clear
- Fix mixup of title vs text fields in some text boxes
- Fix shutdown of zenserver process if we can't get a run context in TryRecovery()


#preflight 640b8dde28026468d96b54b8 640b8651482188d710497268
#rb zousar.shaker

[CL 24597266 by dan engelbrecht in ue5-main branch]
2023-03-10 15:57:34 -05:00
dan engelbrecht
5bde8858ad Reworked zen server instance start/stop logic at autolaunch to handle Zen:LimitProcessLifetime flag properly.
Handle scenario where the data dir is locked by a process not running locally by informing user and exit gracefully.
Reuse running zen server instance if all but current port is the same and adjust port to running instance.

#rb zousar.shaker stefan.boberg
#preflight 640a0566482188d7109e5836

[CL 24576858 by dan engelbrecht in ue5-main branch]
2023-03-09 11:25:59 -05:00
zousar shaker
1f882532dc Ensure that if ZenServer uses a different effective port than its desired port that Autolauch and shutdown operate with the appropriate effective port.
#rb devin.doucette
[FYI] dan.engelbrecht

[CL 24436800 by zousar shaker in ue5-main branch]
2023-02-27 20:56:22 -05:00
chris constantinescu
cd0c323c11 LLT options: Stub platform file and mock some default engine resources for low level tests that run with the engine.
- bUsePlatformFileStub = true replaces the default platform file. The default PF is saved and can be reused at any time.
The side effect is lots of warnings for missing files and object loading errors which is acceptable for low level tests.
- bMockEngineDefaults = true sets some mandatory engine defaults (materials, fonts etc) that can only be loaded from cooked assets.
#jira UE-178194
#rb Ryan.Gerleve
#preflight 63f8e7051206d91a2bd8b0cd

[CL 24407283 by chris constantinescu in ue5-main branch]
2023-02-24 15:27:37 -05:00
dan engelbrecht
ea2cde3944 Resolve locatization Horde issue 267733.
Use unique keys for NSLOCTEXT in ZenServerInstance.cpp

https://horde.devtools.epicgames.com/job/63f84478697ad0eddb32c990?step=9317&issue=267733

#preflight none

[CL 24397530 by dan engelbrecht in ue5-main branch]
2023-02-24 02:58:58 -05:00
dan engelbrecht
775a1ff0b9 More hardening on error cases when autolaunching zenserver.
Replace some checks causing crashes to errors/warning and exit.

#preflight 63f5de4e9129b42b252fd98b
#rb martin.ridgers

[CL 24380815 by dan engelbrecht in ue5-main branch]
2023-02-23 10:55:10 -05:00
dan engelbrecht
87947cb177 Issue 266313 Static analyzer warnings in ZenServerInterface.cpp, take 2
#preflight 63f5d0249b26c4957e674738

[CL 24357529 by dan engelbrecht in ue5-main branch]
2023-02-22 03:39:26 -05:00
dan engelbrecht
cda657f71a Issue 266313 Static analyzer warnings in ZenServerInterface.cpp
#preflight 63f51a1dff5afbbb0336b912

[CL 24346779 by dan engelbrecht in ue5-main branch]
2023-02-21 14:35:08 -05:00
dan engelbrecht
d73de02d58 Improved logic for installing new version of zenserver.
- Use shared ZenServerState to get zen instance state to better identify processes and port usage
- Check is the process is running using Pid and process handle instead of checking for locked files
- Make sure we update cached zen.version for InTree version even if there is no current installation
- Add `-ForceZenInstall` option to force an install of InTree version even if installed version is the same or newer (enables downgrading)
- More logging added

#preflight 63ee350e5c7bd278c137a6f2
#jira UE-176908

[CL 24339827 by dan engelbrecht in ue5-main branch]
2023-02-21 10:38:15 -05:00
dan engelbrecht
5aa043a2e5 Fix race condition when shutting down zenserver via zen autolaunch.
#jira FORT-563412
#preflight 63eb5057205b5ccbc7d415d8
#rb martin.ridgers

[CL 24206950 by dan engelbrecht in ue5-main branch]
2023-02-14 04:51:30 -05:00
dan engelbrecht
2cb1a6457d Ensure we properly wait for running zen server executable to exit when upgrading
#jira FORT-563412
#preflight 63e62c0f8917c5deac6807b5
#rb zousar.shaker

[CL 24182943 by dan engelbrecht in ue5-main branch]
2023-02-13 14:23:19 -05:00
zousar shaker
134e776ed3 Avoid use of the socket subsystem's GetAddressFromString API because it doesn't do name resolving and limits us to IP addresses when connecting to ZenServer. Name resolving would cause potential stalls in the "IsLocalHost" check, so instead we're limiting ourselves to only considering a set of well-known strings as being localhost: {"localhost, "127.0.0.1", "[::1]"}.
#rb devin.doucette

[CL 23836634 by zousar shaker in ue5-main branch]
2023-01-24 15:15:02 -05:00
zousar shaker
4ccc770ffb Fix for escaped character handling when a Local DDC path is stored with escaped characters in the EditorSettings.
[CL 23748783 by zousar shaker in ue5-main branch]
2023-01-17 19:10:35 -05:00