Dret - Quick Search Pro

Showcase & Documentation | Example Project | More Plugins

Quick Search Pro is a global search plugin for Unreal Engine that provides navigation across your entire project. Find Assets, C++ and Blueprint symbols, Comments, and Actors with typo tolerant fuzzy matching and O(1) lookup performance. Features an integrated Blueprint graph preview with reference counting and usage tracking, making code exploration and navigation effortless.

Accessible via Alt + o from any editor context.

Have feedback or need support? Join us on Discord or open an issue on GitHub.

Hi! I’m trying to use this plugin in a large project and I keep getting out of memory crashes during the indexing process, I tried reducindo batch sizes to 1 and adding delay but it still happens. Do you have any solutions to that?
[EDIT] :

  • It seems to also start indexing from the beginning instead of picking up from the crash point
  • Also happens with force garbage collect every frame

Hi @lucota90! Thanks for the report

Right now the indexer runs fully in memory and doesn’t persist anything to disk, so after a crash or editor restart it will start indexing from scratch. That’s expected behavior for now.

Because of this, it’s possible you’re hitting system memory limits during indexing.

To help narrow this down and rule out any other issues, could you share:

  • How much RAM your machine has

  • The last lines of the crash log (right where it runs out of memory)

From my side, I’ll also look into making the indexer handle low memory situations gracefully. In those cases, it might not be able to index or return everything, but it should at least avoid crashing and still provide partial results.

I’m also considering adding more control over what gets indexed, so large projects can skip or limit certain data through advanced settings, or define a fixed memory budget for the indexer, similar to how Rider handles it.

I don’t have an immediate fix yet, but this is something I’ll prioritize for the next update.

Additional Context

I just tested this on my side using a mid-to-large project:

  • ~200k lines of C++

  • Hundreds of Blueprints

I measured the editor’s memory usage:

  • QuickSearch Plugin disabled: ~3.9 GB

  • QuickSearch Plugin enabled: ~7.3 GB

So in this case, the indexer adds roughly +3.4 GB of RAM usage on top of the engine.

My machine has 128 GB of RAM, so I don’t hit memory limits during indexing. However, this does highlight that the plugin can become quite memory intensive, especially on larger or more complex projects.

If your project is significantly bigger, or your available RAM is lower, currently it’s possible to run into out of memory crashes.

Thanks for the response!

My computer has 32GB Ram

As for Memory usage, it fluctuates. But an estimative is:

  • starting on an almost empty level : ~4GB
  • during indexing right before crashing : ~20GB

I don’t know how to estimate lines of code, but I’ll give you the asset count as filtered on content browser so to give you an idea:

  • C++ classes : 10.305
  • Blueprints : 3.352
  • Widgets : 371
  • Levels : 3.543

Unfortunatelly as I was trying to reproduce the crash last night, my remote computer became unresponsive and I can’t access it right now. When I have the log I’ll send it here

I was trying to use it in a smaller project now and got a crash, these are the last messages on the log:

Script Stack (0 frames) :

[2026.04.03-21.35.00:501][126]LogWindows: Error: appError called: Fatal error: [File:E:\vrmonkey\tools\UE_5.5-Meta\Engine\Source\Runtime\Core\Private\GenericPlatform\GenericPlatformMemory.cpp] [Line: 263]
Ran out of memory allocating 30131879936 (28736.0 MiB) bytes with alignment 16. Last error msg: The paging file is too small for this operation to complete..

[2026.04.03-21.35.00:501][126]LogWindows: Windows GetLastError: The operation completed successfully. (0)

these are the last logs related to quick search:

[2026.04.03-21.34.59:269][126]LogQuickSearchBlueprintSymbolCache: Indexing Blueprint variable usage (set): Key=/Game/Developers/kadu/CommunicationRoom/BP_CommunicationRoomManagerOLD.YawCrank, VariableName=YawCrank, BlueprintClass=BP_CommunicationRoomManagerOLD_C, VariableBlueprintPath=/Game/Developers/kadu/CommunicationRoom/BP_CommunicationRoomManagerOLD, UsedInBlueprint=/Game/Developers/kadu/CommunicationRoom/BP_CommunicationRoomManagerOLD, Node=K2Node_VariableSet_5
[2026.04.03-21.34.59:269][126]LogQuickSearchBlueprintSymbolCache: Indexing delegate bindings: Found 0 AddDelegate nodes in Blueprint /Game/Developers/kadu/CommunicationRoom/BP_CommunicationRoomManagerOLD
[2026.04.03-21.34.59:269][126]LogQuickSearchBlueprintSymbolCache: Indexing macro instances: Found 3 MacroInstance nodes in Blueprint /Game/Developers/kadu/CommunicationRoom/BP_CommunicationRoomManagerOLD
[2026.04.03-21.34.59:269][126]LogQuickSearchBlueprintSymbolCache: Indexed macro instance usage: MacroKey=/Engine/EditorBlueprintResources/StandardMacros.ForLoop, MacroName=ForLoop, MacroBlueprintPath=/Engine/EditorBlueprintResources/StandardMacros, UsedInBlueprint=/Game/Developers/kadu/CommunicationRoom/BP_CommunicationRoomManagerOLD, Node=K2Node_MacroInstance_0, Graph=SpawnCranks
[2026.04.03-21.34.59:269][126]LogQuickSearchBlueprintSymbolCache: Indexed macro instance usage: MacroKey=/Engine/EditorBlueprintResources/StandardMacros.ForLoop, MacroName=ForLoop, MacroBlueprintPath=/Engine/EditorBlueprintResources/StandardMacros, UsedInBlueprint=/Game/Developers/kadu/CommunicationRoom/BP_CommunicationRoomManagerOLD, Node=K2Node_MacroInstance_0, Graph=SpawnPanels
[2026.04.03-21.34.59:269][126]LogQuickSearchBlueprintSymbolCache: Indexed macro instance usage: MacroKey=/Engine/EditorBlueprintResources/StandardMacros.ForLoop, MacroName=ForLoop, MacroBlueprintPath=/Engine/EditorBlueprintResources/StandardMacros, UsedInBlueprint=/Game/Developers/kadu/CommunicationRoom/BP_CommunicationRoomManagerOLD, Node=K2Node_MacroInstance_3, Graph=PositionInitialCranks
[2026.04.03-21.34.59:269][126]LogQuickSearchBlueprintSymbolCache: Indexing interface event implementations: Found 1 Event nodes in Blueprint /Game/Developers/kadu/CommunicationRoom/BP_CommunicationRoomManagerOLD
[2026.04.03-21.34.59:269][126]LogSymbolsInvertedSearchIndex: Removed 32 symbols with class path prefix ‘/Game/Developers/kadu/CommunicationRoom/BP_CommunicationRoomManagerOLD.BP_CommunicationRoomManagerOLD_C’
[2026.04.03-21.34.59:269][126]LogQuickSearchBlueprintSymbolCache: Usage index refreshed for Blueprint: ‘BP_CommunicationRoomManagerOLD’ - all caches cleared
[2026.04.03-21.34.59:408][126]LogStreaming: Display: FlushAsyncLoading(822): 1 QueuedPackages, 196 AsyncPackages
[2026.04.03-21.34.59:647][126]LogMemory: Warning: Freeing 33554432 bytes (32.0 MiB) from backup pool to handle out of memory.
[2026.04.03-21.34.59:647][126]LogMemory: Warning: MemoryStats:
AvailablePhysical 18067099648 (16.83 GiB)
AvailableVirtual 8644534272 (8.05 GiB)
UsedPhysical 12251693056 (11.41 GiB)
PeakUsedPhysical 12319707136 (11.47 GiB)
UsedVirtual 15402618880 (14.34 GiB)
PeakUsedVirtual 45605937152 (42.47 GiB)

And another thing that I find weird (Also happened in the other project) is that this progress bar shows up on right bottom corner, talking about static mesh distance fields, textures, shaders and other stuff

Thanks for the extra info and logs.

There’s no quick fix for this right now. I’m working on adding more control over what gets indexed, along with memory budget limits definitely needed at this scale. Expect a fix in about 1–2 weeks.

Sorry I edited last message right after your response, got a crash with more valuable info

1 Like

@lucota90 Update 1.2 is live!

New Features

  • Added a new tab to manage Bug It and Bug It Go
  • Added a new memory dropdown
    • Memory limiter
    • Graceful pausing
    • Persistent disk cache
    • Control scope indexing
  • Added right click actions to asset search results:
    • Duplicate Asset In Location
    • Create Material Instance In Location
  • Graph Preview now loads blueprints asynchronously

Fix

  • Fixed pinned Quick Search window intercepting Enter / Up / Down keys from Blueprint action menus (e.g., All Actions for This Blueprint) when unfocused