From 10bd8012cec4bec2f4654bc8db899211d025d3c5 Mon Sep 17 00:00:00 2001 From: Aditya Hase Date: Sat, 7 Sep 2019 00:48:54 +0530 Subject: [PATCH] perf(orm): Use cached table_columns instead of querying the database --- frappe/model/db_query.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/frappe/model/db_query.py b/frappe/model/db_query.py index 2ab0ee8549..29fa44d208 100644 --- a/frappe/model/db_query.py +++ b/frappe/model/db_query.py @@ -17,6 +17,7 @@ from frappe.model import optional_fields from frappe.client import check_parent_permission from frappe.model.utils.user_settings import get_user_settings, update_user_settings from frappe.utils import flt, cint, get_time, make_filter_tuple, get_filter, add_to_date, cstr, nowdate +from frappe.model.meta import get_table_columns class DatabaseQuery(object): def __init__(self, doctype, user=None): @@ -290,7 +291,7 @@ class DatabaseQuery(object): def set_optional_columns(self): """Removes optional columns like `_user_tags`, `_comments` etc. if not in table""" - columns = frappe.db.get_table_columns(self.doctype) + columns = get_table_columns(self.doctype) # remove from fields to_remove = []