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

ASF GitHub Bot commented on SCB-1038:
-------------------------------------

liubao68 closed pull request #1005: [SCB-1038]Fix some bugs and logs 
improvement reported by users when testing
URL: https://github.com/apache/servicecomb-java-chassis/pull/1005
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git 
a/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/LoadbalanceHandler.java
 
b/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/LoadbalanceHandler.java
index d36c55242..8547af52c 100644
--- 
a/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/LoadbalanceHandler.java
+++ 
b/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/LoadbalanceHandler.java
@@ -35,10 +35,10 @@
 import org.apache.servicecomb.core.Invocation;
 import org.apache.servicecomb.core.SCBEngine;
 import org.apache.servicecomb.core.Transport;
-import org.apache.servicecomb.core.exception.ExceptionUtils;
 import org.apache.servicecomb.core.provider.consumer.SyncResponseExecutor;
 import org.apache.servicecomb.foundation.common.cache.VersionedCache;
 import org.apache.servicecomb.foundation.common.concurrent.ConcurrentHashMapEx;
+import org.apache.servicecomb.foundation.common.utils.ExceptionUtils;
 import org.apache.servicecomb.loadbalance.filter.ServerDiscoveryFilter;
 import org.apache.servicecomb.serviceregistry.discovery.DiscoveryContext;
 import org.apache.servicecomb.serviceregistry.discovery.DiscoveryFilter;
@@ -232,9 +232,7 @@ private void send(Invocation invocation, AsyncResponse 
asyncResp, final LoadBala
     long time = System.currentTimeMillis();
     ServiceCombServer server = chosenLB.chooseServer(invocation);
     if (null == server) {
-      
asyncResp.consumerFail(ExceptionUtils.lbAddressNotFound(invocation.getMicroserviceName(),
-          invocation.getMicroserviceVersionRule(),
-          invocation.getConfigTransportName()));
+      asyncResp.consumerFail(new 
InvocationException(Status.INTERNAL_SERVER_ERROR, "No available address 
found."));
       return;
     }
     chosenLB.getLoadBalancerStats().incrementNumRequests(server);
@@ -295,7 +293,7 @@ public void 
onExceptionWithServer(ExecutionContext<Invocation> context, Throwabl
             context.getRequest().getEndpoint(),
             info.getNumberOfPastServersAttempted(),
             info.getNumberOfPastAttemptsOnServer(),
-            exception.getMessage());
+            ExceptionUtils.getExceptionMessageWithoutTrace(exception));
       }
 
       @Override
@@ -319,7 +317,7 @@ public void onExecutionSuccess(ExecutionContext<Invocation> 
context, Response re
       public void onExecutionFailed(ExecutionContext<Invocation> context, 
Throwable finalException,
           ExecutionInfo info) {
         LOGGER.error("Invoke all server failed. Operation {}, e={}",
-            context.getRequest().getInvocationQualifiedName(), 
finalException.toString());
+            context.getRequest().getInvocationQualifiedName(), 
ExceptionUtils.getExceptionMessageWithoutTrace(finalException));
         if (orginExecutor != null) {
           orginExecutor.execute(() -> {
             fail(finalException);
@@ -366,7 +364,7 @@ private void fail(Throwable finalException) {
               if (isFailedResponse(resp)) {
                 LOGGER.error("service {}, call error, msg is {}, server is {} 
",
                     invocation.getInvocationQualifiedName(),
-                    ((Throwable) resp.getResult()).getMessage(),
+                    ExceptionUtils.getExceptionMessageWithoutTrace((Throwable) 
resp.getResult()),
                     s);
                 
chosenLB.getLoadBalancerStats().incrementSuccessiveConnectionFailureCount(s);
                 ServiceCombLoadBalancerStats.INSTANCE.markFailure(server);
diff --git 
a/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/SessionStickinessRule.java
 
b/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/SessionStickinessRule.java
index a489860ed..a854a831a 100644
--- 
a/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/SessionStickinessRule.java
+++ 
b/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/SessionStickinessRule.java
@@ -56,6 +56,7 @@ public SessionStickinessRule() {
   }
 
   public void setLoadBalancer(LoadBalancer loadBalancer) {
+    this.microserviceName = loadBalancer.getMicroServiceName();
     this.loadBalancer = loadBalancer;
   }
 
diff --git 
a/handlers/handler-loadbalance/src/test/java/org/apache/servicecomb/loadbalance/TestLoadbalanceHandler.java
 
b/handlers/handler-loadbalance/src/test/java/org/apache/servicecomb/loadbalance/TestLoadbalanceHandler.java
index f7e263549..b20530dd4 100644
--- 
a/handlers/handler-loadbalance/src/test/java/org/apache/servicecomb/loadbalance/TestLoadbalanceHandler.java
+++ 
b/handlers/handler-loadbalance/src/test/java/org/apache/servicecomb/loadbalance/TestLoadbalanceHandler.java
@@ -165,10 +165,8 @@ public void send_noEndPoint(@Injectable LoadBalancer 
loadBalancer) {
       result.value = (Throwable) resp.getResult();
     }, loadBalancer);
 
-    Assert.assertEquals("InvocationException: code=490;msg=CommonExceptionData 
[message=Cse Internal Bad Request]",
+    Assert.assertEquals("InvocationException: code=500;msg=CommonExceptionData 
[message=No available address found.]",
         result.value.getMessage());
-    Assert.assertEquals("No available address found. microserviceName=ms, 
version=null, discoveryGroupName=null",
-        result.value.getCause().getMessage());
   }
 
   @Test


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Fix some bugs and logs improvement reported by users when testing
> -----------------------------------------------------------------
>
>                 Key: SCB-1038
>                 URL: https://issues.apache.org/jira/browse/SCB-1038
>             Project: Apache ServiceComb
>          Issue Type: Improvement
>          Components: Java-Chassis
>            Reporter: liubao
>            Assignee: liubao
>            Priority: Major
>             Fix For: java-chassis-1.1.0
>
>
> # loadbalancer do not print the cause when some unexpected error happens
>  # SessionStickRule microserviceName is not assigned a value



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

Reply via email to