|
54 | 54 | import javax.ws.rs.core.UriInfo;
|
55 | 55 |
|
56 | 56 | import com.google.common.base.Optional;
|
57 |
| -import com.google.common.base.Preconditions; |
58 | 57 | import com.google.common.collect.Lists;
|
59 | 58 | import com.google.common.collect.Sets;
|
60 | 59 | import org.apache.cassandra.repair.RepairParallelism;
|
@@ -374,15 +373,8 @@ public Response modifyRunState(
|
374 | 373 | if (!repairRun.isPresent()) {
|
375 | 374 | return Response.status(Status.NOT_FOUND).entity("repair run " + repairRunId + " doesn't exist").build();
|
376 | 375 | }
|
377 |
| - final RepairRun.RunState newState = parseRunState(stateStr.get()); |
378 |
| - |
379 |
| - Optional<RepairUnit> repairUnit = context.storage.getRepairUnit(repairRun.get().getRepairUnitId()); |
380 |
| - if (!repairUnit.isPresent()) { |
381 |
| - String errMsg = "repair unit with id " + repairRun.get().getRepairUnitId() + " not found"; |
382 |
| - LOG.error(errMsg); |
383 |
| - return Response.status(Status.CONFLICT).entity(errMsg).build(); |
384 |
| - } |
385 | 376 |
|
| 377 | + final RepairRun.RunState newState = parseRunState(stateStr.get()); |
386 | 378 | if (isUnitAlreadyRepairing(repairRun.get())) {
|
387 | 379 | String errMsg = "repair unit already has run " + repairRun.get().getRepairUnitId() + " in RUNNING state";
|
388 | 380 | LOG.error(errMsg);
|
@@ -439,13 +431,6 @@ public Response modifyRunIntensity(
|
439 | 431 | return Response.status(Status.NOT_FOUND).entity("repair run " + repairRunId + " doesn't exist").build();
|
440 | 432 | }
|
441 | 433 |
|
442 |
| - Optional<RepairUnit> repairUnit = context.storage.getRepairUnit(repairRun.get().getRepairUnitId()); |
443 |
| - if (!repairUnit.isPresent()) { |
444 |
| - String errMsg = "repair unit with id " + repairRun.get().getRepairUnitId() + " not found"; |
445 |
| - LOG.error(errMsg); |
446 |
| - return Response.status(Response.Status.NOT_FOUND).entity(errMsg).build(); |
447 |
| - } |
448 |
| - |
449 | 434 | if (RunState.PAUSED != repairRun.get().getRunState() && RunState.NOT_STARTED != repairRun.get().getRunState()) {
|
450 | 435 | return Response.status(Status.CONFLICT).entity("repair run must first be paused").build();
|
451 | 436 | }
|
@@ -633,10 +618,9 @@ public Response getRepairRunsForCluster(
|
633 | 618 | * @return only a status of a repair run, not the entire repair run info.
|
634 | 619 | */
|
635 | 620 | private RepairRunStatus getRepairRunStatus(RepairRun repairRun) {
|
636 |
| - final Optional<RepairUnit> repairUnit = context.storage.getRepairUnit(repairRun.getRepairUnitId()); |
637 |
| - Preconditions.checkState(repairUnit.isPresent(), "no repair unit found with id: %s", repairRun.getRepairUnitId()); |
638 |
| - final int segmentsRepaired = getSegmentAmountForRepairRun(repairRun.getId()); |
639 |
| - return new RepairRunStatus(repairRun, repairUnit.get(), segmentsRepaired); |
| 621 | + RepairUnit repairUnit = context.storage.getRepairUnit(repairRun.getRepairUnitId()); |
| 622 | + int segmentsRepaired = getSegmentAmountForRepairRun(repairRun.getId()); |
| 623 | + return new RepairRunStatus(repairRun, repairUnit, segmentsRepaired); |
640 | 624 | }
|
641 | 625 |
|
642 | 626 | /**
|
@@ -701,19 +685,12 @@ private List<RepairRunStatus> getRunStatuses(
|
701 | 685 | if (!desiredStates.isEmpty() && !desiredStates.contains(run.getRunState().name())) {
|
702 | 686 | continue;
|
703 | 687 | }
|
704 |
| - final Optional<RepairUnit> runsUnit = context.storage.getRepairUnit(run.getRepairUnitId()); |
705 |
| - if (runsUnit.isPresent()) { |
706 |
| - int segmentsRepaired = run.getSegmentCount(); |
707 |
| - if (!run.getRunState().equals(RepairRun.RunState.DONE)) { |
708 |
| - segmentsRepaired = getSegmentAmountForRepairRun(run.getId()); |
709 |
| - } |
710 |
| - |
711 |
| - runStatuses.add(new RepairRunStatus(run, runsUnit.get(), segmentsRepaired)); |
712 |
| - } else { |
713 |
| - final String errMsg = String.format("Found repair run %s with no associated repair unit", run.getId()); |
714 |
| - LOG.error(errMsg); |
715 |
| - throw new ReaperException("Internal server error : " + errMsg); |
| 688 | + RepairUnit runsUnit = context.storage.getRepairUnit(run.getRepairUnitId()); |
| 689 | + int segmentsRepaired = run.getSegmentCount(); |
| 690 | + if (!run.getRunState().equals(RepairRun.RunState.DONE)) { |
| 691 | + segmentsRepaired = getSegmentAmountForRepairRun(run.getId()); |
716 | 692 | }
|
| 693 | + runStatuses.add(new RepairRunStatus(run, runsUnit, segmentsRepaired)); |
717 | 694 | }
|
718 | 695 |
|
719 | 696 | return runStatuses;
|
|
0 commit comments