[ https://issues.apache.org/jira/browse/PHOENIX-4870?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Swaroopa Kadam updated PHOENIX-4870: ------------------------------------ Description: In PQS, when LoggingPhoenixConnection is explicitly set with AutoCommit as true, metrics dont get logged properly. This can 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} was: In PQS, when LoggingPhoenixConnection is explicitely set with AutoCommit as true {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} > PQS metrics are not being logged when AutoCommit is set to true in > LoggingPhoenixConnection > ------------------------------------------------------------------------------------------- > > 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 > > In PQS, when LoggingPhoenixConnection is explicitly set with AutoCommit as > true, metrics dont get logged properly. This can 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)