Obsidian freezes on vault-wide regex search

I have been putting this (making an issue report) off for a while.
For the last two-three weeks, I’ve been experiencing these freezes on both Windows and Linux installs (which means that it affects 1.3.7 and a version before it).

How to Reproduce

Enter a regex search after starting your day/booting up Obsidian: no problem.
Start a second/third/etc. regex search later on: the issue would crop up.

A week or so ago I was positive the freeze only happened if I wanted to edit the query terms right in the search box, so I took to copying the faulty line and editing it in a note, cleared the search box in the process, and then pasted back the new search term and was fairly sure it would not hang on me.

Now I’m not so sure this trick stops Obsidian from freezing on me.
Today I ran (.*?\.{3}\s{2}$)\n\n(.*)\n\n(^\.{3}.*), a simple enough query and it just stopped and froze on me after 2 matches.
Before the freeze happened a little later, sometimes after finding even 1500-2000 matches.

I have not had ample occasion to test this behaviour further as I want to get on with my business of cleaning up my texts, but I seem to think that:

  • it’s just regex searches that trigger the freeze;
  • possibly queries with a lot of matches;
  • pasting terms and editing them in the box seem to trigger it?

I have many plugins enabled and the repro process is not easily done in any case, so I cannot really say or do anything more at this point.

If I know a little more, I’ll share more.

SYSTEM INFO:
	Obsidian version: v1.3.7
	Installer version: v1.3.7
	Operating system: Windows 10 Home 10.0.19045
	Login status: not logged in
	Insider build toggle: off
	Live preview: on
	Legacy editor: off
	Base theme: dark
	Community theme: Blue Topaz v2023080203
	Snippets enabled: 20
	Restricted mode: off
	Plugins installed: 59
	Plugins enabled: 41

Further testing:

  • Running the same regex first time after launching Obsidian → freeze after finding two matches (of 15 that I checked with grepWin).
  • Running the same regex with all plugins turned off → same result.

So it’s over to you, guys.

Just to be sure, did you restart Obsidian after turning off the plugins and before testing? That’s unfortunately needed sometimes to fully unload everything.

Ah, no. I was thinking that too.
But boy, am I reluctant to do it again and have to have Omnisearch reindex everything again, ribbon icons have to be fixed all over again (what a pain that is, I mean some people can do it with eyes closed now I’m sure).

I will do it. Huffing and puffing.

Okay, it’s not Obsidian.

I moved all my files to a Test vault with everything turned off.
No freezes.
Not even on this (?<!`)([^`.*?`\s=]*?\s=), which with the exclusions still had over 20k matches (this search failed at 1985 matches on the work vault before).

I had an idea the culprit was said OS comm. plugin (I re-enabled it at roughly the same time when the problems started), but it isn’t. It is something else. I need to find it now (shouldn’t be difficult).

Which leads me to the question: do you or does anyone keep a record of community plugins that break things? I mean I understand the devs worked hard (mostly for free) but a guide on dos and donts with regard to third-party plugins would ease the strain on the roughly 4-6 people who take active part doing repetitive janitor work here on the forum (and the number of new members will be rising).
You guys could set up a sub forum where everyone could report their experiences with plugins so others could learn from it. Just an idea, of course.

I don’t know of any centralized place for that. The forum is essentially a big record of problems of all kinds, and plugins’ GitHub issues pages are the other main place to check.

Plugins that are broken and apparently unmaintained are subject to removal from the plugin store.

If you have a lot of plugins, the Divide and Conquer plugin can help find which is causing a problem.

moved to help for now

Yes, I agree that should suffice; I mean the hard-core Obsidian fanatics could head over straight to the dev and point out issues affecting core functionality.
That’s if the devs are actually around and listening…

All right, so after extensive to and fro (involving completely removing all trace of Obsidian everywhere and reinstalling 1.3.5, which lasted for one session because the default setting for checking for and installing updates is ON) I found the problem.

It was not any of the community plugins.
It was either of the three (I did not bother to check which) markdown documents containing several base64 images ( base64 images refer to images that have been encoded as a Base64 string and they are not good practice anyway). Removing these files caused my regex queries to continue to the end and not have Obsidian freeze.

When I tested earlier in my temporary Test vault, these and other files had not been moved over.

But the question still remains: if I don’t remember having issues with regex queries before 1.3.7, what could have changed? I have not changed those 3 documents since forever.