[ https://issues.apache.org/jira/browse/PHOENIX-4750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16576397#comment-16576397 ]
Alex Araujo commented on PHOENIX-4750: -------------------------------------- {code:java} + class ServerCustomizersFactoryImpl implements ServerCustomizersFactory { + private static final List<ServerCustomizer<Server>> EMPTY_LIST = Collections.emptyList(); + @Override + public List<ServerCustomizer<Server>> createServerCustomizers(Configuration conf) { + return EMPTY_LIST; + } + }{code} {quote}We should have a singleton instance for this instead of having callers instantiate their own {quote} Downstream users implement their own ServerCustomizersFactory and register the factory a using ServiceLoader descriptor on the classpath. I used InstanceResolver directly in tests as I saw it done that way in existing tests. {code:java} + public void startLocalHBaseCluster() throws Exception { + Class caller = getCaller(); ... + // Start HBase + Path rootdir = util.getDataTestDirOnTestFS(caller.getSimpleName()){code} {quote}How about you have the caller give you a unique name instead? e.g. {{public void startLocalHBaseCluster(String uniqueName)}}. This would make it easy for JUnit tests to give you their class name based on the {{TestName}} JUnit {{Rule}}. {quote} I thought about doing that for the other PQS ITs. Added an QueryServerTestUtil#startLocalHBaseCluster(String uniqueName) for those tests in v4. I opted to keep the new IT a bit simpler by not requiring a JUnit Rule. Ran ITs locally and they all passed. All good now [~elserj]? > Resolve server customizers and provide them to Avatica > ------------------------------------------------------ > > Key: PHOENIX-4750 > URL: https://issues.apache.org/jira/browse/PHOENIX-4750 > Project: Phoenix > Issue Type: Improvement > Reporter: Alex Araujo > Assignee: Alex Araujo > Priority: Major > Labels: queryserver > Fix For: 4.15.0, 5.1.0 > > Attachments: PHOENIX-4750.patch, PHOENIX-4750.v2.patch, > PHOENIX-4750.v3.patch, PHOENIX-4750.v4.patch > > > CALCITE-2284 allows finer grained customization of the underlying Avatica > HttpServer. > Resolve server customizers on the PQS classpath and provide them to the > HttpServer builder. -- This message was sent by Atlassian JIRA (v7.6.3#76005)