Merge branch '12032-project-trash' refs #12032
[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
new file mode 100644 (file)
index 0000000..4ee45ab
--- /dev/null
@@ -0,0 +1,12 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
+
+PERMISSION_VIEW = "materialized_permission_view"
+
+def refresh_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