[ 
https://issues.apache.org/jira/browse/PHOENIX-4870?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16597990#comment-16597990
 ] 

ASF GitHub Bot commented on PHOENIX-4870:
-----------------------------------------

Github user karanmehta93 commented on a diff in the pull request:

    https://github.com/apache/phoenix/pull/338#discussion_r214199456
  
    --- Diff: 
phoenix-core/src/it/java/org/apache/phoenix/monitoring/PhoenixLoggingMetricsIT.java
 ---
    @@ -154,6 +154,35 @@ private void verifyQueryLevelMetricsLogging(String 
query) throws SQLException {
             assertTrue(logRequestReadMetricsFuncCallCount == 1);
         }
     
    +    @Test
    +    public void testPhoenixMetricsLoggedOnAutoCommit() throws Exception {
    --- End diff --
    
    nit: `testPhoenixMetricsLoggedOnAutoCommit` to 
`testPhoenixMetricsLoggedOnAutoCommitTrue`


> LoggingPhoenixConnection should log metrics when AutoCommit is set to True.
> ---------------------------------------------------------------------------
>
>                 Key: PHOENIX-4870
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4870
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.14.0
>            Reporter: Swaroopa Kadam
>            Assignee: Swaroopa Kadam
>            Priority: Major
>         Attachments: PHOENIX-4870-4.x-HBase-1.4.patch, PHOENIX-4870.patch
>
>
> When LoggingPhoenixConnection calls commit or close, metrics logs are written 
> properly, however, when LoggingPhoenixConnection is explicitly set with 
> AutoCommit as true, metrics don't get logged at all. This bug can also be 
> tested by adding the following test scenario in PhoenixLoggingMetricsIT.java 
> class. 
> {code:java}
> @Test
> public void testPhoenixMetricsLoggedOnAutoCommit() throws Exception {
>     // Autocommit is turned on explicitly
>     loggedConn.setAutoCommit(true);
>     //with executeUpdate() method
>     // run SELECT to verify read metrics are logged
>     String query = "SELECT * FROM " + tableName1;
>     verifyQueryLevelMetricsLogging(query);
>     // run UPSERT SELECT to verify mutation metrics are logged
>     String upsertSelect = "UPSERT INTO " + tableName2 + " SELECT * FROM " + 
> tableName1;
>     loggedConn.createStatement().executeUpdate(upsertSelect);
>     // Autocommit is turned on explicitly
>     // Hence mutation metrics are expected during implicit commit
>     assertTrue("Mutation write metrics are not logged for " + tableName2,
>             mutationWriteMetricsMap.size()  > 0);
>     assertTrue("Mutation read metrics for not found for " + tableName1,
>             mutationReadMetricsMap.get(tableName1).size() > 0);
>     //with execute() method
>     loggedConn.createStatement().execute(upsertSelect);
>     // Autocommit is turned on explicitly
>     // Hence mutation metrics are expected during implicit commit
>     assertTrue("Mutation write metrics are not logged for " + tableName2,
>             mutationWriteMetricsMap.size()  > 0);
>     assertTrue("Mutation read metrics for not found for " + tableName1,
>             mutationReadMetricsMap.get(tableName1).size() > 0);
>     clearAllTestMetricMaps();
> }
> {code}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to