@@ -744,10 +744,8 @@ public boolean checkAndPut(final byte[] row, final byte[] family, final byte[] q
744744 .setTableName (tableName ).setOperation (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE )
745745 .setContainerOperations (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE ,
746746 HBaseSemanticAttributes .Operation .PUT );
747- return TraceUtil .trace (
748- () -> doCheckAndMutate (row , family , qualifier , CompareOperator .EQUAL , value , null , null , put )
749- .isSuccess (),
750- supplier );
747+ return TraceUtil .trace (() -> doCheckAndMutate (row , family , qualifier , CompareOperator .EQUAL ,
748+ value , null , null , put , false ).isSuccess (), supplier );
751749 }
752750
753751 @ Override
@@ -759,7 +757,7 @@ public boolean checkAndPut(final byte[] row, final byte[] family, final byte[] q
759757 .setContainerOperations (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE ,
760758 HBaseSemanticAttributes .Operation .PUT );
761759 return TraceUtil .trace (() -> doCheckAndMutate (row , family , qualifier ,
762- toCompareOperator (compareOp ), value , null , null , put ).isSuccess (), supplier );
760+ toCompareOperator (compareOp ), value , null , null , put , false ).isSuccess (), supplier );
763761 }
764762
765763 @ Override
@@ -771,7 +769,7 @@ public boolean checkAndPut(final byte[] row, final byte[] family, final byte[] q
771769 .setContainerOperations (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE ,
772770 HBaseSemanticAttributes .Operation .PUT );
773771 return TraceUtil .trace (
774- () -> doCheckAndMutate (row , family , qualifier , op , value , null , null , put ).isSuccess (),
772+ () -> doCheckAndMutate (row , family , qualifier , op , value , null , null , put , false ).isSuccess (),
775773 supplier );
776774 }
777775
@@ -784,7 +782,7 @@ public boolean checkAndDelete(final byte[] row, final byte[] family, final byte[
784782 .setContainerOperations (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE ,
785783 HBaseSemanticAttributes .Operation .DELETE );
786784 return TraceUtil .trace (() -> doCheckAndMutate (row , family , qualifier , CompareOperator .EQUAL ,
787- value , null , null , delete ).isSuccess (), supplier );
785+ value , null , null , delete , false ).isSuccess (), supplier );
788786 }
789787
790788 @ Override
@@ -796,7 +794,7 @@ public boolean checkAndDelete(final byte[] row, final byte[] family, final byte[
796794 .setContainerOperations (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE ,
797795 HBaseSemanticAttributes .Operation .DELETE );
798796 return TraceUtil .trace (() -> doCheckAndMutate (row , family , qualifier ,
799- toCompareOperator (compareOp ), value , null , null , delete ).isSuccess (), supplier );
797+ toCompareOperator (compareOp ), value , null , null , delete , false ).isSuccess (), supplier );
800798 }
801799
802800 @ Override
@@ -807,9 +805,9 @@ public boolean checkAndDelete(final byte[] row, final byte[] family, final byte[
807805 .setTableName (tableName ).setOperation (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE )
808806 .setContainerOperations (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE ,
809807 HBaseSemanticAttributes .Operation .DELETE );
810- return TraceUtil . trace (
811- ( ) -> doCheckAndMutate (row , family , qualifier , op , value , null , null , delete ). isSuccess (),
812- supplier );
808+ return TraceUtil
809+ . trace (( ) -> doCheckAndMutate (row , family , qualifier , op , value , null , null , delete , false )
810+ . isSuccess (), supplier );
813811 }
814812
815813 @ Override
@@ -826,7 +824,8 @@ public CheckAndMutateWithFilterBuilder checkAndMutate(byte[] row, Filter filter)
826824
827825 private CheckAndMutateResult doCheckAndMutate (final byte [] row , final byte [] family ,
828826 final byte [] qualifier , final CompareOperator op , final byte [] value , final Filter filter ,
829- final TimeRange timeRange , final RowMutations rm ) throws IOException {
827+ final TimeRange timeRange , final RowMutations rm , boolean queryMetricsEnabled )
828+ throws IOException {
830829 long nonceGroup = getNonceGroup ();
831830 long nonce = getNonce ();
832831 CancellableRegionServerCallable <MultiResponse > callable =
@@ -835,9 +834,9 @@ private CheckAndMutateResult doCheckAndMutate(final byte[] row, final byte[] fam
835834 rm .getMaxPriority (), requestAttributes ) {
836835 @ Override
837836 protected MultiResponse rpcCall () throws Exception {
838- MultiRequest request =
839- RequestConverter . buildMultiRequest ( getLocation ().getRegionInfo ().getRegionName (), row ,
840- family , qualifier , op , value , filter , timeRange , rm , nonceGroup , nonce );
837+ MultiRequest request = RequestConverter . buildMultiRequest (
838+ getLocation ().getRegionInfo ().getRegionName (), row , family , qualifier , op , value ,
839+ filter , timeRange , rm , nonceGroup , nonce , queryMetricsEnabled );
841840 ClientProtos .MultiResponse response = doMulti (request );
842841 ClientProtos .RegionActionResult res = response .getRegionActionResultList ().get (0 );
843842 if (res .hasException ()) {
@@ -880,7 +879,7 @@ public boolean checkAndMutate(final byte[] row, final byte[] family, final byte[
880879 .setTableName (tableName ).setOperation (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE )
881880 .setContainerOperations (rm );
882881 return TraceUtil .trace (() -> doCheckAndMutate (row , family , qualifier ,
883- toCompareOperator (compareOp ), value , null , null , rm ).isSuccess (), supplier );
882+ toCompareOperator (compareOp ), value , null , null , rm , false ).isSuccess (), supplier );
884883 }
885884
886885 @ Override
@@ -891,7 +890,7 @@ public boolean checkAndMutate(final byte[] row, final byte[] family, final byte[
891890 .setTableName (tableName ).setOperation (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE )
892891 .setContainerOperations (rm );
893892 return TraceUtil .trace (
894- () -> doCheckAndMutate (row , family , qualifier , op , value , null , null , rm ).isSuccess (),
893+ () -> doCheckAndMutate (row , family , qualifier , op , value , null , null , rm , false ).isSuccess (),
895894 supplier );
896895 }
897896
@@ -910,28 +909,31 @@ public CheckAndMutateResult checkAndMutate(CheckAndMutate checkAndMutate) throws
910909 }
911910 return doCheckAndMutate (checkAndMutate .getRow (), checkAndMutate .getFamily (),
912911 checkAndMutate .getQualifier (), checkAndMutate .getCompareOp (), checkAndMutate .getValue (),
913- checkAndMutate .getFilter (), checkAndMutate .getTimeRange (), (Mutation ) action );
912+ checkAndMutate .getFilter (), checkAndMutate .getTimeRange (), (Mutation ) action ,
913+ checkAndMutate .isQueryMetricsEnabled ());
914914 } else {
915915 return doCheckAndMutate (checkAndMutate .getRow (), checkAndMutate .getFamily (),
916916 checkAndMutate .getQualifier (), checkAndMutate .getCompareOp (), checkAndMutate .getValue (),
917- checkAndMutate .getFilter (), checkAndMutate .getTimeRange (), (RowMutations ) action );
917+ checkAndMutate .getFilter (), checkAndMutate .getTimeRange (), (RowMutations ) action ,
918+ checkAndMutate .isQueryMetricsEnabled ());
918919 }
919920 }, supplier );
920921 }
921922
922923 private CheckAndMutateResult doCheckAndMutate (final byte [] row , final byte [] family ,
923924 final byte [] qualifier , final CompareOperator op , final byte [] value , final Filter filter ,
924- final TimeRange timeRange , final Mutation mutation ) throws IOException {
925+ final TimeRange timeRange , final Mutation mutation , boolean queryMetricsEnabled )
926+ throws IOException {
925927 long nonceGroup = getNonceGroup ();
926928 long nonce = getNonce ();
927929 ClientServiceCallable <CheckAndMutateResult > callable =
928930 new ClientServiceCallable <CheckAndMutateResult >(this .connection , getName (), row ,
929931 this .rpcControllerFactory .newController (), mutation .getPriority (), requestAttributes ) {
930932 @ Override
931933 protected CheckAndMutateResult rpcCall () throws Exception {
932- MutateRequest request =
933- RequestConverter . buildMutateRequest ( getLocation ().getRegionInfo ().getRegionName (), row ,
934- family , qualifier , op , value , filter , timeRange , mutation , nonceGroup , nonce );
934+ MutateRequest request = RequestConverter . buildMutateRequest (
935+ getLocation ().getRegionInfo ().getRegionName (), row , family , qualifier , op , value ,
936+ filter , timeRange , mutation , nonceGroup , nonce , queryMetricsEnabled );
935937 MutateResponse response = doMutate (request );
936938 if (response .hasResult ()) {
937939 return new CheckAndMutateResult (response .getProcessed (),
@@ -1419,7 +1421,7 @@ public boolean thenPut(Put put) throws IOException {
14191421 return TraceUtil .trace (() -> {
14201422 validatePut (put );
14211423 preCheck ();
1422- return doCheckAndMutate (row , family , qualifier , op , value , null , timeRange , put )
1424+ return doCheckAndMutate (row , family , qualifier , op , value , null , timeRange , put , false )
14231425 .isSuccess ();
14241426 }, supplier );
14251427 }
@@ -1430,7 +1432,7 @@ public boolean thenDelete(Delete delete) throws IOException {
14301432 .setTableName (tableName ).setOperation (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE );
14311433 return TraceUtil .trace (() -> {
14321434 preCheck ();
1433- return doCheckAndMutate (row , family , qualifier , op , value , null , timeRange , delete )
1435+ return doCheckAndMutate (row , family , qualifier , op , value , null , timeRange , delete , false )
14341436 .isSuccess ();
14351437 }, supplier );
14361438 }
@@ -1441,7 +1443,7 @@ public boolean thenMutate(RowMutations mutation) throws IOException {
14411443 .setTableName (tableName ).setOperation (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE );
14421444 return TraceUtil .trace (() -> {
14431445 preCheck ();
1444- return doCheckAndMutate (row , family , qualifier , op , value , null , timeRange , mutation )
1446+ return doCheckAndMutate (row , family , qualifier , op , value , null , timeRange , mutation , false )
14451447 .isSuccess ();
14461448 }, supplier );
14471449 }
@@ -1475,26 +1477,28 @@ public boolean thenPut(Put put) throws IOException {
14751477 .setTableName (tableName ).setOperation (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE );
14761478 return TraceUtil .trace (() -> {
14771479 validatePut (put );
1478- return doCheckAndMutate (row , null , null , null , null , filter , timeRange , put ).isSuccess ();
1480+ return doCheckAndMutate (row , null , null , null , null , filter , timeRange , put , false )
1481+ .isSuccess ();
14791482 }, supplier );
14801483 }
14811484
14821485 @ Override
14831486 public boolean thenDelete (Delete delete ) throws IOException {
14841487 final Supplier <Span > supplier = new TableOperationSpanBuilder (connection )
14851488 .setTableName (tableName ).setOperation (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE );
1486- return TraceUtil . trace (
1487- ( ) -> doCheckAndMutate (row , null , null , null , null , filter , timeRange , delete ). isSuccess (),
1488- supplier );
1489+ return TraceUtil
1490+ . trace (( ) -> doCheckAndMutate (row , null , null , null , null , filter , timeRange , delete , false )
1491+ . isSuccess (), supplier );
14891492 }
14901493
14911494 @ Override
14921495 public boolean thenMutate (RowMutations mutation ) throws IOException {
14931496 final Supplier <Span > supplier = new TableOperationSpanBuilder (connection )
14941497 .setTableName (tableName ).setOperation (HBaseSemanticAttributes .Operation .CHECK_AND_MUTATE );
1495- return TraceUtil
1496- .trace (() -> doCheckAndMutate (row , null , null , null , null , filter , timeRange , mutation )
1497- .isSuccess (), supplier );
1498+ return TraceUtil .trace (
1499+ () -> doCheckAndMutate (row , null , null , null , null , filter , timeRange , mutation , false )
1500+ .isSuccess (),
1501+ supplier );
14981502 }
14991503 }
15001504}
0 commit comments