fix: Handle `is_search_module_loaded` for redis version < 4.0.0 (#27574)

- Return False if error occurs
diff --git a/erpnext/e_commerce/redisearch.py b/erpnext/e_commerce/redisearch.py
index d0626a3..00265e2 100644
--- a/erpnext/e_commerce/redisearch.py
+++ b/erpnext/e_commerce/redisearch.py
@@ -20,14 +20,16 @@
 	return [df.fieldname for df in valid_fields]
 
 def is_search_module_loaded():
-	cache = frappe.cache()
-	out = cache.execute_command('MODULE LIST')
+	try:
+		cache = frappe.cache()
+		out = cache.execute_command('MODULE LIST')
 
-	parsed_output = " ".join(
-		(" ".join([s.decode() for s in o if not isinstance(s, int)]) for o in out)
-	)
-
-	return "search" in parsed_output
+		parsed_output = " ".join(
+			(" ".join([s.decode() for s in o if not isinstance(s, int)]) for o in out)
+		)
+		return "search" in parsed_output
+	except Exception:
+		return False
 
 def if_redisearch_loaded(function):
 	"Decorator to check if Redisearch is loaded."