Uploaded image for project: 'Blazegraph (by SYSTAP)'
  1. Blazegraph (by SYSTAP)
  2. BLZG-814

HA asynchronous tasks must be canceled when invariants are changed

    XMLWordPrintable

    Details

      Description

      Some tasks need to monitor ?invariants? and automatically get canceled when those invariants are violated. For example, sending an HALog file to a node (sendHALogForWriteSet()) needs to be canceled if the receiver enters an error state. Similar issues exist for tasks that snapshot the backing store (takeSnapshot()
      - actually, this case is probably covered), or that send a backing store to a service for disaster recovery (sendStore()), etc. We need to audit the code for such issues and then address them systematically. The failure to cancel such tasks on an appropriate failover event relates to BLZG-786 as it can cause liveness problems (deadlock).

      A list of methods/code points to be reviewed includes:
      - HAJournal.sendHALogForWriteSet()
      - HAJournal.sendStore()
      - HAJournal.takeSnapshot()
      - HAJournalServer.ResyncTask

        Attachments

          Activity

            People

            Assignee:
            martyncutcher martyncutcher
            Reporter:
            bryanthompson bryanthompson
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: