Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Cannot Reproduce
-
1.6.2
-
None
-
None
Description
In testing 1.6.2-rc3, I have ConstraintIT fail on me. Being a three-part test, the first two part succeeded, while the third happened to fail.
Best as I can tell, the watcher for the constraint update on the third table didn't update on the tserver before the test ran. The table
TabletServer_295932193.out:2015-01-29 18:55:08,707 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.server.constraints.MetadataConstraints for +r TabletServer_295932193.out:2015-01-29 18:55:09,288 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.server.constraints.MetadataConstraints for !0 TabletServer_295932193.out:2015-01-29 18:55:10,641 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.core.constraints.DefaultKeySizeConstraint for 2 TabletServer_295932193.out:2015-01-29 18:55:10,708 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.core.constraints.DefaultKeySizeConstraint for 2 TabletServer_295932193.out:2015-01-29 18:55:10,709 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.examples.simple.constraints.NumericValueConstraint for 2 TabletServer_295932193.out:2015-01-29 18:55:10,756 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.core.constraints.DefaultKeySizeConstraint for 2 TabletServer_295932193.out:2015-01-29 18:55:10,756 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.examples.simple.constraints.NumericValueConstraint for 2 TabletServer_295932193.out:2015-01-29 18:55:10,757 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.examples.simple.constraints.AlphaNumKeyConstraint for 2 TabletServer_54401020.out:2015-01-29 18:55:09,503 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.server.constraints.MetadataConstraints for !0 TabletServer_54401020.out:2015-01-29 18:55:10,139 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.core.constraints.DefaultKeySizeConstraint for 1 TabletServer_54401020.out:2015-01-29 18:55:10,203 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.core.constraints.DefaultKeySizeConstraint for 1 TabletServer_54401020.out:2015-01-29 18:55:10,204 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.examples.simple.constraints.NumericValueConstraint for 1 TabletServer_54401020.out:2015-01-29 18:55:10,222 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.core.constraints.DefaultKeySizeConstraint for 1 TabletServer_54401020.out:2015-01-29 18:55:10,222 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.examples.simple.constraints.AlphaNumKeyConstraint for 1 TabletServer_54401020.out:2015-01-29 18:55:10,222 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.examples.simple.constraints.NumericValueConstraint for 1 TabletServer_54401020.out:2015-01-29 18:55:11,290 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.core.constraints.DefaultKeySizeConstraint for 3 TabletServer_54401020.out:2015-01-29 18:55:11,616 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.core.constraints.DefaultKeySizeConstraint for 1 TabletServer_54401020.out:2015-01-29 18:55:11,616 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.examples.simple.constraints.AlphaNumKeyConstraint for 1 TabletServer_54401020.out:2015-01-29 18:55:13,661 [constraints.ConstraintChecker] DEBUG: Loaded constraint org.apache.accumulo.examples.simple.constraints.AlphaNumKeyConstraint for 1
The table with id of '3', is the one that failed. The tserver never saw the user-specified constraints before the test ran.
Add some logic to the test to prevent failures due to this race condition. We have ticket(s) elsewhere for a more generalized "configuration consensus" feature, so I won't restate that here.