From 36b670af9d8c9f379c9b9176cfa094b4502a9bae Mon Sep 17 00:00:00 2001
From: Peter Kieltyka <peter.kieltyka@pressly.com>
Date: Mon, 29 Aug 2016 17:52:22 -0400
Subject: [PATCH] One less get and read lock

---
 internal/sqladapter/exql/template.go | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/internal/sqladapter/exql/template.go b/internal/sqladapter/exql/template.go
index d2cf0c32..5b8637f9 100644
--- a/internal/sqladapter/exql/template.go
+++ b/internal/sqladapter/exql/template.go
@@ -77,11 +77,12 @@ func mustParse(text string, data interface{}) string {
 	var b bytes.Buffer
 	var ok bool
 
-	if _, ok = templateCache.Get(text); !ok {
-		templateCache.Set(text, template.Must(template.New("").Parse(text)))
+	v, ok := templateCache.Get(text)
+	if !ok {
+		v = template.Must(template.New("").Parse(text))
+		templateCache.Set(text, v)
 	}
 
-	v, _ := templateCache.Get(text)
 	if err := v.Execute(&b, data); err != nil {
 		panic("There was an error compiling the following template:\n" + text + "\nError was: " + err.Error())
 	}
-- 
GitLab