FIX: use distributed mutex to prevent errors when uploading emojis in batches

This commit is contained in:
Régis Hanol
2015-02-09 18:54:57 +01:00
parent f82e8ce5f1
commit 1e6f886886
2 changed files with 33 additions and 15 deletions

View File

@ -13,8 +13,7 @@ class Admin::EmojisController < Admin::AdminController
.gsub(/_{2,}/, '_')
.downcase
# check the name doesn't already exist
if Emoji.custom.detect { |e| e.name == name }
if Emoji.exists?(name)
render json: failed_json.merge(message: I18n.t("emoji.errors.name_already_exists", name: name)), status: 422
else
if emoji = Emoji.create_for(file, name)
@ -28,7 +27,7 @@ class Admin::EmojisController < Admin::AdminController
def destroy
name = params.require(:id)
Emoji.custom.detect { |e| e.name == name }.try(:remove)
Emoji[name].try(:remove)
render nothing: true
end