Uploaded image for project: 'translate5'
  1. translate5
  2. TRANSLATE-2806

Race conditions lead to locked loading screen on saving a segment

    XMLWordPrintable

Details

    • Critical
    • -

    Description

      The following commit

      https://bitbucket.org/mittagqi/translate5/commits/e01f04b87d0b4db8002e9160bebcab51390f535f

      was fixing an issue that the saveChainEnd was called either twice or to early (before the save of the segment was even finished). Depending on the usage of repetitions, automatic repetitions or no repetitions in the segment.

      The fixes causes in saving segments fastly (with auto repetitions) that sometimes the loading screen was not removed (so no saveChainEnd was called).

      The only valid solution is to refactor the whole segment saving:

      1. Either keep the "save chain" but implement it in a more general way
      2. Or change the change alikes, so that each save change alike process does not depend on the current segment, in other words: multiple change alike saves should run in parallel
        Currently only a few code places listens to the segmentEditedSaved event.
        This should then be changed, that the segment save callback throws an event, and the save / cancel change alike process fires an similar event per each handled segment, so that they can be then reloaded / reset what ever.

      Attachments

        Activity

          People

            marcmittag Marc Mittag [Administrator]
            tlauria Thomas Lauria
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: