Uploaded image for project: 'CDAP'
  1. CDAP
  2. CDAP-12733

Spark pipeline calls tx invalidate multiple times, for the same tx id

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 4.3.0
    • Fix Version/s: 5.0.0
    • Component/s: Pipelines, Spark
    • Labels:
      None
    • Rank:
      1|i008pj:

      Description

      I ran a spark pipeline that failed. I see the following log:

      2017-10-18 23:52:05,527 - ERROR [Driver:c.c.c.d.t.Transactions@62] - Failed to invalidate transaction Transaction{readPointer: 1508370719446000000, transactionId: 1508370719831000000, writePointer: 1508370719831000000, 
      

      There are no errors on the transaction service side, even when setting log level for tephra to DEBUG.

      This is actually happening because Transactions.invalidateQuietly is being called twice upon the Spark failure. I've modified the Transactions#invalidateQuietly method to include the following log line:

      LOG.info("invalidatingQuietly txId: {}", tx.getTransactionId(), new Exception());
      

      and attached the logs with that, which shows the two places that invalidateQuietly is called from.

      This doesn't seem to have an impact, other than a misleading error log message.

        Attachments

          Activity

            People

            • Assignee:
              terence Terence Yim
              Reporter:
              ali.anwar Ali Anwar
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: