+ targetStatus.getPolicy());
LOG.trace( "Enabling violation policy enforcement on " + tableName + " with policy " + status.getPolicy());
+ targetStatus.getPolicy()); this.snapshotNotifier.transitionTable(tableInNS, targetSnapshot);
assertEquals(namespaceViolationPolicy, actualPolicyTN1.getQuotaStatus().getPolicy()); SpaceQuotaSnapshot actualPolicyTN2 = snapshots.get(tn2); assertNotNull("Expected to see violation policy for tn2", actualPolicyTN2); assertEquals(namespaceViolationPolicy, actualPolicyTN2.getQuotaStatus().getPolicy()); SpaceQuotaSnapshot actualTableSnapshot = snapshots.get(tn1); assertNotNull("Violation policy should never be null", actualTableSnapshot); if (tableViolationPolicy != actualTableSnapshot.getQuotaStatus().getPolicy()) { LOG.debug("Saw unexpected table violation policy, waiting and re-checking."); try { assertEquals(tableViolationPolicy, actualTableSnapshot.getQuotaStatus().getPolicy()); break; assertEquals(namespaceViolationPolicy, actualPolicyTN2.getQuotaStatus().getPolicy());
assertEquals(violationPolicy, snapshot1.getQuotaStatus().getPolicy()); SpaceQuotaSnapshot snapshot2 = snapshots.remove(tn2); assertNotNull("tn2 should be in violation", snapshot2); assertEquals(violationPolicy, snapshot2.getQuotaStatus().getPolicy()); SpaceQuotaSnapshot snapshot3 = snapshots.remove(tn3); assertNotNull("tn3 should be in violation", snapshot3); assertEquals(violationPolicy, snapshot3.getQuotaStatus().getPolicy()); assertTrue("Unexpected additional quota violations: " + snapshots, snapshots.isEmpty());
SpaceViolationPolicy.DISABLE, store.getTargetState(NS, quota).getQuotaStatus().getPolicy());
assertNotNull("Did not find snapshot for " + tn, snapshot); assertTrue(snapshot.getQuotaStatus().isInViolation()); assertEquals(SpaceViolationPolicy.NO_INSERTS, snapshot.getQuotaStatus().getPolicy());
assertEquals(tn, entry.getKey()); final SpaceQuotaSnapshot snapshot = entry.getValue(); assertEquals("Snapshot was " + snapshot, violationPolicy, snapshot.getQuotaStatus().getPolicy()); assertEquals(sizeLimit, snapshot.getLimit()); assertTrue(
public static QuotaProtos.SpaceQuotaStatus toProto(SpaceQuotaStatus status) { QuotaProtos.SpaceQuotaStatus.Builder builder = QuotaProtos.SpaceQuotaStatus.newBuilder(); builder.setInViolation(status.inViolation); if (status.isInViolation()) { builder.setViolationPolicy(ProtobufUtil.toProtoViolationPolicy(status.getPolicy())); } return builder.build(); }
public static QuotaProtos.SpaceQuotaStatus toProto(SpaceQuotaStatus status) { QuotaProtos.SpaceQuotaStatus.Builder builder = QuotaProtos.SpaceQuotaStatus.newBuilder(); builder.setInViolation(status.inViolation); if (status.isInViolation()) { builder.setViolationPolicy(ProtobufUtil.toProtoViolationPolicy(status.getPolicy())); } return builder.build(); }
assertEquals(violationPolicy, snapshot1.getQuotaStatus().getPolicy().get()); SpaceQuotaSnapshot snapshot2 = snapshots.remove(tn2); assertNotNull("tn2 should be in violation", snapshot2); assertEquals(violationPolicy, snapshot2.getQuotaStatus().getPolicy().get()); SpaceQuotaSnapshot snapshot3 = snapshots.remove(tn3); assertNotNull("tn3 should be in violation", snapshot3); assertEquals(violationPolicy, snapshot3.getQuotaStatus().getPolicy().get()); assertTrue("Unexpected additional quota violations: " + snapshots, snapshots.isEmpty());
assertEquals(namespaceViolationPolicy, actualPolicyTN1.getQuotaStatus().getPolicy().get()); SpaceQuotaSnapshot actualPolicyTN2 = snapshots.get(tn2); assertNotNull("Expected to see violation policy for tn2", actualPolicyTN2); assertEquals(namespaceViolationPolicy, actualPolicyTN2.getQuotaStatus().getPolicy().get()); SpaceQuotaSnapshot actualTableSnapshot = snapshots.get(tn1); assertNotNull("Violation policy should never be null", actualTableSnapshot); if (tableViolationPolicy != actualTableSnapshot.getQuotaStatus().getPolicy().orElse(null)) { LOG.debug("Saw unexpected table violation policy, waiting and re-checking."); try { assertEquals(tableViolationPolicy, actualTableSnapshot.getQuotaStatus().getPolicy().get()); break; assertEquals(namespaceViolationPolicy, actualPolicyTN2.getQuotaStatus().getPolicy().get());
store.getTargetState(NS, quota).getQuotaStatus().getPolicy().get());
assertNotNull("Did not find snapshot for " + tn, snapshot); assertTrue(snapshot.getQuotaStatus().isInViolation()); assertEquals(SpaceViolationPolicy.NO_INSERTS, snapshot.getQuotaStatus().getPolicy().get());
final SpaceQuotaSnapshot snapshot = entry.getValue(); assertEquals("Snapshot was " + snapshot, violationPolicy, snapshot.getQuotaStatus().getPolicy().get()); assertEquals(sizeLimit, snapshot.getLimit()); assertTrue("The usage should be greater than the limit, but were " + snapshot.getUsage() +
/** * Constructs the appropriate {@link SpaceViolationPolicyEnforcement} for tables that are * in violation of their space quota. */ public SpaceViolationPolicyEnforcement create( RegionServerServices rss, TableName tableName, SpaceQuotaSnapshot snapshot) { SpaceViolationPolicyEnforcement enforcement; SpaceQuotaStatus status = snapshot.getQuotaStatus(); if (!status.isInViolation()) { throw new IllegalArgumentException(tableName + " is not in violation. Snapshot=" + snapshot); } switch (status.getPolicy().get()) { case DISABLE: enforcement = new DisableTableViolationPolicyEnforcement(); break; case NO_WRITES_COMPACTIONS: enforcement = new NoWritesCompactionsViolationPolicyEnforcement(); break; case NO_WRITES: enforcement = new NoWritesViolationPolicyEnforcement(); break; case NO_INSERTS: enforcement = new NoInsertsViolationPolicyEnforcement(); break; default: throw new IllegalArgumentException("Unhandled SpaceViolationPolicy: " + status.getPolicy()); } enforcement.initialize(rss, tableName, snapshot); return enforcement; }
public static QuotaProtos.SpaceQuotaStatus toProto(SpaceQuotaStatus status) { QuotaProtos.SpaceQuotaStatus.Builder builder = QuotaProtos.SpaceQuotaStatus.newBuilder(); builder.setInViolation(status.inViolation); if (status.isInViolation()) { builder.setViolationPolicy(ProtobufUtil.toProtoViolationPolicy(status.getPolicy().get())); } return builder.build(); }