Проблема параллелизма: два решения для одной темы

Если кнопка «Принять решение» будет нажата одновременно двумя участниками, у темы может появиться два решения.

2 лайка

Привет, @nikod, давно не виделись :slight_smile:

Можешь поделиться записью экрана этого или подробными шагами для воспроизведения?

1 лайк

Шаги для воспроизведения:

  • Откройте тему в двух браузерах, выполнив вход под двумя разными пользователями.
  • Как можно быстрее нажмите «Принять решение» в двух разных постах в обоих окнах.

Круто. Звучит как очень трудоемкая задача, что делает её крайне маловероятной, но всё же возможной. Не могли бы вы это сделать и записать экран, чтобы помочь нам подтвердить?

Мне пришлось синхронизировать нажатия с другом, и нам потребовалось четыре попытки, чтобы воспроизвести это… поэтому у меня нет видеозаписи экрана, только скриншот результата:

Шаги для воспроизведения:

  • Пусть два человека откроют тему, войдя в систему под разными учётными записями.
  • Для этой темы ранее не было принято ни одного решения.
  • Синхронизируйте (например, с обратным отсчётом) нажатие кнопки «Принять решение» для двух разных сообщений.
  • Перезагрузите страницу, чтобы увидеть реальный результат.
  • При некоторой «удаче» будут приняты два решения.

Не знаю, возможно ли это с одной и той же учётной записью. Не знаю, возможно ли это, если уже было принято какое-либо решение.

Также приношу свои извинения, но мы используем версию v2.4.0.beta2 +123. :frowning: Как только у меня появится время обновить систему, я смогу попробовать воспроизвести это снова.

Это действительно случалось в реальной жизни или только когда вы очень, очень сильно стараетесь?

2 лайка

Да, произошло. (0123456789)

2 лайка

Добавлен мьютекс, который должен устранить проблему конкурентности

11 лайков

Отличная работа детектива!

2 лайка

И очень быстрое исправление! Спасибо! :+1:

2 лайка

Эта тема была автоматически закрыта через 25 часов. Новые ответы больше не принимаются.