@Test
  public void testBlobTtlUpdate503AndOfflineRepair() throws Exception {
    cleanRepairRequestsDb(repairDb);
    Pair<BlobId, DataNodeId> result = blobTtlUpdate503AndThenFixedByODROrOffline(false, true);
    BlobId blobId = result.getFirst();
    DataNodeId sourceDataNode = result.getSecond();
    long operationTime = SystemTime.getInstance().milliseconds();
    RepairRequestRecord expectedRecord =
        new RepairRequestRecord(blobId.getID(), blobId.getPartition().getId(), sourceDataNode.getHostname(),
            sourceDataNode.getPort(), RepairRequestRecord.OperationType.TtlUpdateRequest, operationTime,
            LIFE_VERSION_FROM_FRONTEND, Utils.Infinite_Time);
    verifyRepairRequestRecordInDb(repairDb, blobId, expectedRecord);
    cleanRepairRequestsDb(repairDb);
  }
Test TTLUpdate first hits 503. Then run offline Repair. It is successful. Database has the record.
@throws Exception
ambry-router/src/test/java/com/github/ambry/router/NonBlockingRouterTest.java