projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
13208: Refactor permission checking to improve query performance
[arvados.git]
/
services
/
api
/
lib
/
refresh_permission_view.rb
diff --git
a/services/api/lib/refresh_permission_view.rb
b/services/api/lib/refresh_permission_view.rb
index 4d3df7d4dcb4af8239154a4ceb15ab1b66e58d53..4ee45ab088af1faea093a3de5af033b68955002a 100644
(file)
--- a/
services/api/lib/refresh_permission_view.rb
+++ b/
services/api/lib/refresh_permission_view.rb
@@
-5,5
+5,8
@@
PERMISSION_VIEW = "materialized_permission_view"
def refresh_permission_view
PERMISSION_VIEW = "materialized_permission_view"
def refresh_permission_view
- ActiveRecord::Base.connection.exec_query("REFRESH MATERIALIZED VIEW #{PERMISSION_VIEW}")
+ ActiveRecord::Base.transaction do
+ ActiveRecord::Base.connection.execute("LOCK TABLE permission_refresh_lock")
+ ActiveRecord::Base.connection.execute("REFRESH MATERIALIZED VIEW #{PERMISSION_VIEW}")
+ end
end
end