virajjasani commented on a change in pull request #1346: HBASE-23937 : Support
Online LargeLogs similar to SlowLogs APIs
URL: https://github.com/apache/hbase/pull/1346#discussion_r401417389
##########
File path:
hbase-client/src/main/java/org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.java
##########
@@ -3952,17 +3952,27 @@ private void getProcedureResult(long procId,
CompletableFuture<Void> future, int
@Override
public CompletableFuture<List<SlowLogRecord>> getSlowLogResponses(
- @Nullable final Set<ServerName> serverNames,
+ @Nullable final Set<ServerName> serverNames,
final SlowLogQueryFilter slowLogQueryFilter) {
if (CollectionUtils.isEmpty(serverNames)) {
return CompletableFuture.completedFuture(Collections.emptyList());
}
- return CompletableFuture.supplyAsync(() -> serverNames.stream()
- .map((ServerName serverName) ->
- getSlowLogResponseFromServer(serverName, slowLogQueryFilter))
- .map(CompletableFuture::join)
- .flatMap(List::stream)
- .collect(Collectors.toList()));
+ if (slowLogQueryFilter.getType() == null
Review comment:
Nope, both can't use same enum because at server side, we have enum in
TooSlowLog.proto which we save in Queue, whereas this enum is for client side
filter object. We need to compare each attribute present in client side filter
with server side data.
Having this branch on client side is better compared to passing it on to
server because otherwise we will need to have it in Admin.proto too to pass it
over in RPC call (too many places).
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services