Exceptions thrown while scanning graphs after updating

  • A* version: 5.3.4
  • Unity version: 6000.0.36f1

I have a setup that uses two different recast graphs, one is for the runtime, which includes the entire game world. Another is for the editor, which includes a smaller portion to allow for faster iteration. This is done because it takes a few seconds to load the larger graph, and I want to be able to enter playmode quicker. This setup has been working for months.

These two graphs have identical settings, apart from their size. With the larger graph being 5000 x 560 x 700 and the smaller being 1000 x 200 x 1000.

After updating A* from version 5.1.2 to the latest, 5.3.4 the smaller graph now scans halfway before throwing the exception below.

Strangely, the larger graph seems to work alright. Making the graph smaller (say, 750x750) also works. But sizes around 1000x1000 on the horizontal plane (doesn’t have to be exact) throw the exception.

System.IndexOutOfRangeException:
This Exception was thrown from a job compiled with Burst, which has limited exception support.
0x00007ffd24d5163e (Unity) burst_abort
0x00007ffd8c3723be (afbd8b81421e0f4a35ce8c59c001569) burst_Abort_Trampoline
0x00007ffd8c28c8fd (afbd8b81421e0f4a35ce8c59c001569) Pathfinding.Graphs.Navmesh.TileHandler.ClipAgainstHalfPlane (at C:/Projects/SandboxRPG/Library/PackageCache/com.unity.burst@616862665d8c/.Runtime/Packages/com.arongranberg.astar/Graphs/Navmesh/TileHandler.cs:1214)
0x00007ffd8c28cb41 (afbd8b81421e0f4a35ce8c59c001569) Pathfinding.Graphs.Navmesh.TileHandler.ClipAgainstHorizontalHalfPlane (at C:/Projects/SandboxRPG/Library/PackageCache/com.unity.burst@616862665d8c/.Runtime/Packages/com.arongranberg.astar/Graphs/Navmesh/TileHandler.cs:1239)
0x00007ffd8c28859d (afbd8b81421e0f4a35ce8c59c001569) Pathfinding.Graphs.Navmesh.TileHandler.Pathfinding.Graphs.Navmesh.CutTiles_00000AE7$BurstDirectCall.Invoke (at C:/Projects/SandboxRPG/Library/PackageCache/com.unity.burst@616862665d8c/.Runtime/unknown/unknown:0)
0x00007ffd8c2b8251 (afbd8b81421e0f4a35ce8c59c001569) Unity.Jobs.IJobExtensions.JobStruct`1<Pathfinding.Graphs.Navmesh.TileCutter.JobCutTiles>.Execute(ref Pathfinding.Graphs.Navmesh.TileCutter.JobCutTiles data, System.IntPtr additionalPtr, System.IntPtr bufferRangePatchData, ref Unity.Jobs.LowLevel.Unsafe.JobRanges ranges, int jobIndex) → void_0d64390541958b43604801c180219108 from UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null (at C:/Projects/SandboxRPG/Library/PackageCache/com.unity.burst@616862665d8c/.Runtime/unknown/unknown:0)
0x00007ffd8c2b6ebd (afbd8b81421e0f4a35ce8c59c001569) 21a76e848d144b130c0976e4adfb32af
0x00007ffd24d4ddc5 (Unity) ExecuteJob
0x00007ffd24d4ee5d (Unity) ForwardJobToManaged
0x00007ffd24d4a669 (Unity) ujob_execute_job
0x00007ffd24d49a04 (Unity) lane_guts
0x00007ffd24d4d109 (Unity) worker_thread_routine
0x00007ffd24f4310d (Unity) Thread::RunThreadWrapper
0x00007ffe00b3e8d7 (KERNEL32) BaseThreadInitThunk
0x00007ffe01d314fc (ntdll) RtlUserThreadStart

What version is your Burst package at? I’d try backing up and updating that if it’s not on the latest version.

Hi

This is a newly introduced bug that will be fixed in the next update. Sorry about that.

1 Like

Thanks for letting me know. In case anyone else runs into it - just make the graph bigger for the time being. Acceptable workaround.