Is there a way to increase the Async timeout when creating a new session?

When the dedicated server initializes, it loads a large map and I believe it’s timing out at 15 seconds due to the log entry below. No reason for the failure, but it ALWAYS happens at 15.0x seconds. Smaller maps load and initialize just fine.

As a test I run the game server software on my dev machine which is beefier and the game loads just fine in about 9 seconds. I really think this is an async timeout.

[2023.05.30-23.19.49:420][  0]LogChaos: FPhysicsSolverBase::AsyncDt:-1.000000
[2023.05.30-23.19.49:420][  0]LogAIModule: Creating AISystem for world OpenWorld006
[2023.05.30-23.19.49:463][  0]LogLoad: Game class is 'BP_NoNameGameMode2_C'
[2023.05.30-23.19.49:463][  0]LogNet: ReplicationDriverClass is null! Not using ReplicationDriver.
[2023.05.30-23.19.49:464][  0]LogNetCore: DDoS detection status: detection enabled: 0 analytics enabled: 0
[2023.05.30-23.19.49:465][  0]LogNet: Display: SteamNetDriver_2147482515 bound to port 7777
[2023.05.30-23.19.49:465][  0]PacketHandlerLog: Loaded PacketHandler component: Engine.EngineHandlerComponentFactory (StatelessConnectHandlerComponent)
[2023.05.30-23.19.49:466][  0]LogNet: GameNetDriver SteamNetDriver_2147482515 IpNetDriver listening on port 7777
[2023.05.30-23.19.57:265][  0]LogWorld: Bringing World /Game/_NoNameGame/Maps/OpenWorld006.OpenWorld006 up for play (max tick rate 30) at 2023.05.30-16.19.57
[2023.05.30-23.19.57:265][  0]LogWorld: Bringing up level for play took: 7.799020
[2023.05.30-23.19.57:267][  0]LogGameMode: Display: Match State Changed from EnteringMap to WaitingToStart
[2023.05.30-23.19.57:267][  0]LogGameState: Match State Changed from EnteringMap to WaitingToStart
[2023.05.30-23.19.57:267][  0]LogLoad: Took 8.099828 seconds to LoadMap(/Game/_NoNameGame/Maps/OpenWorld006)
[2023.05.30-23.19.57:268][  0]LogPakFile: AllPaks IndexSizes: DirectoryHashSize=167896, PathHashSize=16, EntriesSize=21840, TotalSize=189752
[2023.05.30-23.19.57:269][  0]LogInit: Display: Engine is initialized. Leaving FEngineLoop::Init()
[2023.05.30-23.19.57:269][  0]LogLoad: (Engine Initialization) Total time: 9.45 seconds
[2023.05.30-23.19.57:304][  0]LogNet: UNetDriver::TickDispatch: Very long time between ticks. DeltaTime: 0.03, Realtime: 7.84. SteamNetDriver_2147482515
[2023.05.30-23.20.20:166][  2]LogOnline: Warning: OSS: Async task 'FOnlineAsyncTaskSteamCreateServer bWasSuccessful: 0' failed in 15.000317 seconds
[2023.05.30-23.20.20:168][  2]LogTemp: Warning: OnCreateSessionComplete: Success: 0
[2023.05.30-23.20.20:169][  2]LogTemp: Warning: OnlineSubsystem: STEAM
[2023.05.30-23.20.20:180][  2]LogNet: UNetDriver::TickDispatch: Very long time between ticks. DeltaTime: 22.83, Realtime: 22.84. SteamNetDriver_2147482515
[2023.05.30-23.30.08:401][798]LogStreaming: Display: 0.007 ms for processing 384 objects in RemoveUnreachableObjects(Queued=0, Async=0). Removed 0 (777->777) packages and 0 (971->971) public exports.

The call to create the session is here:

void UNoNameGameInstance::CreateDedicatedSession()
{
	SessionInterface->OnCreateSessionCompleteDelegates.AddUObject(this, &UNoNameGameInstance::OnCreateSessionComplete);

	LastSessionSettings = MakeShareable(new FOnlineSessionSettings());
	LastSessionSettings->NumPrivateConnections = 0;
	LastSessionSettings->NumPublicConnections = 5;
	LastSessionSettings->bShouldAdvertise = true;
	LastSessionSettings->bAllowJoinInProgress = true;
	LastSessionSettings->bIsLANMatch = false;
	LastSessionSettings->bIsDedicated = true;
	LastSessionSettings->bUsesStats = false;
	LastSessionSettings->bAllowInvites = true;
	LastSessionSettings->bUsesPresence = false;
	LastSessionSettings->bAllowJoinViaPresence = true;
	LastSessionSettings->bAllowJoinViaPresenceFriendsOnly = false;
	LastSessionSettings->bAntiCheatProtected = false;
	LastSessionSettings->bUseLobbiesIfAvailable = false;
	LastSessionSettings->bUseLobbiesVoiceChatIfAvailable = false;
	
	
	LastSessionSettings->Set(SETTING_MAPNAME, FString("BlueSkyMap"), EOnlineDataAdvertisementType::ViaOnlineService);

// I believe the timeout is happing on this call
	SessionInterface->CreateSession(0, FName("NoNameGameSession"), *LastSessionSettings);
	
}

Although I think this is a timeout, how can I find out for sure. There seems to be no way to get the reason for the failure.

I figured it out. My landscape is 5kx5k. I was not using World Partition, so the server was (I think) trying to load the entire thing into memory. Once I converted my project to use World Partition, the initialization is nearly instant.

The good news is that I figure out what was causing the issue. The bad news is that I now have to learn how to use WP.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.