[jira] [Updated] (SCB-215) Support multi-type of StrArray in Query

2018-01-09 Thread TaoMeng (JIRA)

 [ 
https://issues.apache.org/jira/browse/SCB-215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

TaoMeng updated SCB-215:

Summary: Support multi-type of StrArray in Query  (was: 对数组的多种格式的支持)

> Support multi-type of StrArray in Query
> ---
>
> Key: SCB-215
> URL: https://issues.apache.org/jira/browse/SCB-215
> Project: Apache ServiceComb
>  Issue Type: New Feature
>  Components: Java-Chassis
>Reporter: TaoMeng
>Assignee: TaoMeng
>
> https://github.com/apache/incubator-servicecomb-java-chassis/pull/497



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-166) Support HealthCheck

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-166:


wujimin closed pull request #487: [SCB-166] Metrics Support HealthCheck
URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/487
 
 
   

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/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/DefaultHealthCheckExtraData.java
 
b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/DefaultHealthCheckExtraData.java
new file mode 100644
index 0..aa2c9b45f
--- /dev/null
+++ 
b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/DefaultHealthCheckExtraData.java
@@ -0,0 +1,69 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.servicecomb.metrics.common;
+
+public class DefaultHealthCheckExtraData {
+  private String instanceId;
+
+  private String hostName;
+
+  private String appId;
+
+  private String serviceName;
+
+  private String serviceVersion;
+
+  private String endpoints;
+
+  public String getInstanceId() {
+return instanceId;
+  }
+
+  public String getHostName() {
+return hostName;
+  }
+
+  public String getAppId() {
+return appId;
+  }
+
+  public String getServiceName() {
+return serviceName;
+  }
+
+  public String getServiceVersion() {
+return serviceVersion;
+  }
+
+  public String getEndpoints() {
+return endpoints;
+  }
+
+  public DefaultHealthCheckExtraData() {
+  }
+
+  public DefaultHealthCheckExtraData(String instanceId, String hostName, 
String appId, String serviceName,
+  String serviceVersion, String endpoints) {
+this.instanceId = instanceId;
+this.hostName = hostName;
+this.appId = appId;
+this.serviceName = serviceName;
+this.serviceVersion = serviceVersion;
+this.endpoints = endpoints;
+  }
+}
diff --git 
a/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/HealthCheckResult.java
 
b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/HealthCheckResult.java
new file mode 100644
index 0..168991b66
--- /dev/null
+++ 
b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/HealthCheckResult.java
@@ -0,0 +1,56 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.servicecomb.metrics.common;
+
+public class HealthCheckResult {
+  private boolean healthy;
+
+  private String information;
+
+  //unsupport object or generic type,so string..
+  private String extraData;
+
+  private long timestamp;
+
+  public boolean isHealthy() {
+return healthy;
+  }
+
+  public String getInformation() {
+return information;
+  }
+
+  public String getExtraData() {
+return extraData;
+  }
+
+  public long getTimestamp() {
+return timestamp;
+  }
+
+  public HealthCheckResult() {
+  }
+
+  public HealthCheckResult(boolean healthy, String information, String 
extraData) {
+this();
+this.healthy = healthy;
+this.information = information;
+this.extraData = extraData;
+this.timestamp = System.currentTimeMillis();
+  }
+}
diff --git 

[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-214:


coveralls commented on issue #499: [SCB-214] AbstractServiceRegistry 
findServiceInstance process null return value, not print too much exception
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/499#issuecomment-356522842
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14979482/badge)](https://coveralls.io/builds/14979482)
   
   Coverage decreased (-0.05%) to 87.42% when pulling 
**c7cd23711c249d8bd434e3b4b393ce9477c128c3 on weichao666:CSE1333** into 
**acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**.
   


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


> AbstractServiceRegistry findServiceInstance do not process null return value
> 
>
> Key: SCB-214
> URL: https://issues.apache.org/jira/browse/SCB-214
> Project: Apache ServiceComb
>  Issue Type: Bug
>  Components: Java-Chassis
>Reporter: WeiChao
>Assignee: WeiChao
> Fix For: java-chassis-1.0.0-m2
>
>
> 问题1:
> [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for 
> the first time, will send AFTER_REGISTRY event. 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173)
> java.lang.NullPointerException
> at 
> io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207)
> at 
> io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208)
> at 
> com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26)
> at 
> io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100)
> at 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at 
> com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
> at 
> com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
> at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
> at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
> at com.google.common.eventbus.EventBus.post(EventBus.java:275)
> at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54)
> at 
> io.servicecomb.serviceregistry.task.CompositeTask.run(CompositeTask.java:35)
> at 
> io.servicecomb.serviceregistry.task.ServiceCenterTask.init(ServiceCenterTask.java:83)
> at 
> io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.run(AbstractServiceRegistry.java:168)
> at 
> io.servicecomb.serviceregistry.registry.RemoteServiceRegistry.run(RemoteServiceRegistry.java:79)
> at io.servicecomb.serviceregistry.RegistryUtils.run(RegistryUtils.java:68)
> at 
> io.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:136)
> at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166)
> at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138)
> at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383)
> at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337)
> at 
> org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882)
> at 
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545)
> at 
> org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139)
> at 
> org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:93)
> at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37)
> at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:33)
> at 
> com.huawei.paas.cse.demo.springmvc.server.SpringmvcServer.main(SpringmvcServer.java:39)
> [2018-01-09 
> 

[jira] [Commented] (SCB-215) 对数组的多种格式的支持

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-215:


mt-monster opened a new issue #500: SCB-215
URL: https://github.com/apache/incubator-servicecomb-java-chassis/issues/500
 
 
   


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


> 对数组的多种格式的支持
> ---
>
> Key: SCB-215
> URL: https://issues.apache.org/jira/browse/SCB-215
> Project: Apache ServiceComb
>  Issue Type: New Feature
>  Components: Java-Chassis
>Reporter: TaoMeng
>
> https://github.com/apache/incubator-servicecomb-java-chassis/pull/497



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Updated] (SCB-215) 对数组的多种格式的支持

2018-01-09 Thread TaoMeng (JIRA)

 [ 
https://issues.apache.org/jira/browse/SCB-215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

TaoMeng updated SCB-215:

Description: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/497

> 对数组的多种格式的支持
> ---
>
> Key: SCB-215
> URL: https://issues.apache.org/jira/browse/SCB-215
> Project: Apache ServiceComb
>  Issue Type: New Feature
>  Components: Java-Chassis
>Reporter: TaoMeng
>
> https://github.com/apache/incubator-servicecomb-java-chassis/pull/497



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (SCB-215) 对数组的多种格式的支持

2018-01-09 Thread TaoMeng (JIRA)
TaoMeng created SCB-215:
---

 Summary: 对数组的多种格式的支持
 Key: SCB-215
 URL: https://issues.apache.org/jira/browse/SCB-215
 Project: Apache ServiceComb
  Issue Type: New Feature
  Components: Java-Chassis
Reporter: TaoMeng






--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-214:


liubao68 closed pull request #499: [SCB-214] AbstractServiceRegistry 
findServiceInstance process null return value, not print too much exception
URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/499
 
 
   

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/service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java
 
b/service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java
index dbc4cbe93..960185384 100644
--- 
a/service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java
+++ 
b/service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java
@@ -169,13 +169,19 @@ private void retry(RequestContext requestContext, 
Handler response
   bodyBuffer -> {
 try {
   
mInstances.setRevision(response.getHeader("X-Resource-Revision"));
-  if (response.statusCode() == 304) {
-mInstances.setNeedRefresh(false);
-  } else {
-
mInstances.setInstancesResponse(JsonUtils.readValue(bodyBuffer.getBytes(), 
FindInstancesResponse.class));
+  switch (response.statusCode()) {
+case 304:
+  mInstances.setNeedRefresh(false);
+  break;
+case 200:
+  
mInstances.setInstancesResponse(JsonUtils.readValue(bodyBuffer.getBytes(), 
FindInstancesResponse.class));
+  break;
+default:
+  LOGGER.warn(bodyBuffer.toString());
+  break;
   }
 } catch (Exception e) {
-  LOGGER.warn(bodyBuffer.toString(), e);
+  LOGGER.warn("read value failed and response message is {}", 
bodyBuffer.toString());
 }
 countDownLatch.countDown();
   });
diff --git 
a/service-registry/src/main/java/io/servicecomb/serviceregistry/registry/AbstractServiceRegistry.java
 
b/service-registry/src/main/java/io/servicecomb/serviceregistry/registry/AbstractServiceRegistry.java
index db72748d1..a92e1fe60 100644
--- 
a/service-registry/src/main/java/io/servicecomb/serviceregistry/registry/AbstractServiceRegistry.java
+++ 
b/service-registry/src/main/java/io/servicecomb/serviceregistry/registry/AbstractServiceRegistry.java
@@ -204,6 +204,9 @@ public boolean unregisterInstance() {
   public List findServiceInstance(String appId, String 
serviceName,
   String versionRule) {
 MicroserviceInstances instances = findServiceInstances(appId, serviceName, 
versionRule, null);
+if (instances == null) {
+  return null;
+}
 return instances.getInstancesResponse().getInstances();
   }
 


 


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


> AbstractServiceRegistry findServiceInstance do not process null return value
> 
>
> Key: SCB-214
> URL: https://issues.apache.org/jira/browse/SCB-214
> Project: Apache ServiceComb
>  Issue Type: Bug
>  Components: Java-Chassis
>Reporter: WeiChao
>Assignee: WeiChao
> Fix For: java-chassis-1.0.0-m2
>
>
> 问题1:
> [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for 
> the first time, will send AFTER_REGISTRY event. 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173)
> java.lang.NullPointerException
> at 
> io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207)
> at 
> io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208)
> at 
> com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26)
> at 
> io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100)
> at 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 

[jira] [Commented] (SCB-166) Support HealthCheck

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-166:


coveralls commented on issue #487: [SCB-166] Metrics Support HealthCheck
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/487#issuecomment-356517836
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14979215/badge)](https://coveralls.io/builds/14979215)
   
   Coverage decreased (-0.008%) to 87.409% when pulling 
**d1e1dfec57e97e903b4d6c8bead67699879ddce4 on zhengyangyong:SCB-166** into 
**cd6baf12c56f90f0a4879fc897684884817e4944 on apache:master**.
   


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


> Support HealthCheck
> ---
>
> Key: SCB-166
> URL: https://issues.apache.org/jira/browse/SCB-166
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: yangyongzheng
>Assignee: yangyongzheng
> Fix For: java-chassis-1.0.0-m1
>
>
> Java Chassis metrics can support HealthCheck rest interface like Spring boot 
> actuator



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-166) Support HealthCheck

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-166:


zhengyangyong commented on a change in pull request #487: [SCB-166] Metrics 
Support HealthCheck
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/487#discussion_r160602275
 
 

 ##
 File path: 
metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/HealthCheckResult.java
 ##
 @@ -0,0 +1,56 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.servicecomb.metrics.common;
+
+public class HealthCheckResult {
+  private boolean isHealthy;
 
 Review comment:
   Done


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


> Support HealthCheck
> ---
>
> Key: SCB-166
> URL: https://issues.apache.org/jira/browse/SCB-166
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: yangyongzheng
>Assignee: yangyongzheng
> Fix For: java-chassis-1.0.0-m1
>
>
> Java Chassis metrics can support HealthCheck rest interface like Spring boot 
> actuator



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-214:


coveralls commented on issue #499: [SCB-214] AbstractServiceRegistry 
findServiceInstance process null return value, not print too much exception
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/499#issuecomment-356517016
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14979187/badge)](https://coveralls.io/builds/14979187)
   
   Coverage decreased (-0.04%) to 87.426% when pulling 
**c7cd23711c249d8bd434e3b4b393ce9477c128c3 on weichao666:CSE1333** into 
**acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**.
   


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


> AbstractServiceRegistry findServiceInstance do not process null return value
> 
>
> Key: SCB-214
> URL: https://issues.apache.org/jira/browse/SCB-214
> Project: Apache ServiceComb
>  Issue Type: Bug
>  Components: Java-Chassis
>Reporter: WeiChao
>Assignee: WeiChao
> Fix For: java-chassis-1.0.0-m2
>
>
> 问题1:
> [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for 
> the first time, will send AFTER_REGISTRY event. 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173)
> java.lang.NullPointerException
> at 
> io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207)
> at 
> io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208)
> at 
> com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26)
> at 
> io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100)
> at 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at 
> com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
> at 
> com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
> at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
> at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
> at com.google.common.eventbus.EventBus.post(EventBus.java:275)
> at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54)
> at 
> io.servicecomb.serviceregistry.task.CompositeTask.run(CompositeTask.java:35)
> at 
> io.servicecomb.serviceregistry.task.ServiceCenterTask.init(ServiceCenterTask.java:83)
> at 
> io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.run(AbstractServiceRegistry.java:168)
> at 
> io.servicecomb.serviceregistry.registry.RemoteServiceRegistry.run(RemoteServiceRegistry.java:79)
> at io.servicecomb.serviceregistry.RegistryUtils.run(RegistryUtils.java:68)
> at 
> io.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:136)
> at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166)
> at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138)
> at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383)
> at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337)
> at 
> org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882)
> at 
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545)
> at 
> org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139)
> at 
> org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:93)
> at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37)
> at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:33)
> at 
> com.huawei.paas.cse.demo.springmvc.server.SpringmvcServer.main(SpringmvcServer.java:39)
> [2018-01-09 
> 

[jira] [Commented] (SCB-166) Support HealthCheck

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-166:


liubao68 commented on a change in pull request #487: [SCB-166] Metrics Support 
HealthCheck
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/487#discussion_r160601234
 
 

 ##
 File path: 
metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/HealthCheckResult.java
 ##
 @@ -0,0 +1,56 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.servicecomb.metrics.common;
+
+public class HealthCheckResult {
+  private boolean isHealthy;
 
 Review comment:
   Can we change it to healthy? Broken java pojo conventions. 


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


> Support HealthCheck
> ---
>
> Key: SCB-166
> URL: https://issues.apache.org/jira/browse/SCB-166
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: yangyongzheng
>Assignee: yangyongzheng
> Fix For: java-chassis-1.0.0-m1
>
>
> Java Chassis metrics can support HealthCheck rest interface like Spring boot 
> actuator



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-166) Support HealthCheck

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-166:


wujimin commented on a change in pull request #487: [SCB-166] Metrics Support 
HealthCheck
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/487#discussion_r160600411
 
 

 ##
 File path: 
metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/HealthCheckResult.java
 ##
 @@ -0,0 +1,56 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.servicecomb.metrics.common;
+
+public class HealthCheckResult {
+  private boolean isHealth;
 
 Review comment:
   but i see the latest code still named "isHealthy".


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


> Support HealthCheck
> ---
>
> Key: SCB-166
> URL: https://issues.apache.org/jira/browse/SCB-166
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: yangyongzheng
>Assignee: yangyongzheng
> Fix For: java-chassis-1.0.0-m1
>
>
> Java Chassis metrics can support HealthCheck rest interface like Spring boot 
> actuator



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

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

liubao68 closed pull request #489: SCB-36 Support dynamic configuration for 
chassis by integrating with Apollo
URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/489
 
 
   

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/coverage-reports/pom.xml b/coverage-reports/pom.xml
index e7f950aa1..117ba26c8 100644
--- a/coverage-reports/pom.xml
+++ b/coverage-reports/pom.xml
@@ -167,6 +167,10 @@
   io.servicecomb
   handler-tracing-zipkin
 
+
+  io.servicecomb
+  config-apollo
+
 
   io.servicecomb.demo
   pojo-client
diff --git a/dynamic-config/config-apollo/pom.xml 
b/dynamic-config/config-apollo/pom.xml
new file mode 100644
index 0..1f082546f
--- /dev/null
+++ b/dynamic-config/config-apollo/pom.xml
@@ -0,0 +1,48 @@
+
+
+
+
+http://maven.apache.org/POM/4.0.0;
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance;
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd;>
+  
+dynamic-config
+io.servicecomb
+0.6.0-SNAPSHOT
+  
+  4.0.0
+  config-apollo
+  
+
+  io.servicecomb
+  foundation-config
+
+
+  io.servicecomb
+  foundation-vertx
+
+
+  org.springframework
+  spring-web
+
+
+  javax.validation
+  validation-api
+
+  
+
\ No newline at end of file
diff --git 
a/dynamic-config/config-apollo/src/main/java/io/servicecomb/config/archaius/sources/ApolloConfigurationSourceImpl.java
 
b/dynamic-config/config-apollo/src/main/java/io/servicecomb/config/archaius/sources/ApolloConfigurationSourceImpl.java
new file mode 100644
index 0..b4d6b4ed3
--- /dev/null
+++ 
b/dynamic-config/config-apollo/src/main/java/io/servicecomb/config/archaius/sources/ApolloConfigurationSourceImpl.java
@@ -0,0 +1,129 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.servicecomb.config.archaius.sources;
+
+import static com.netflix.config.WatchedUpdateResult.createIncremental;
+import static io.servicecomb.config.client.ConfigurationAction.CREATE;
+import static io.servicecomb.config.client.ConfigurationAction.DELETE;
+import static io.servicecomb.config.client.ConfigurationAction.SET;
+
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.CopyOnWriteArrayList;
+
+import javax.validation.constraints.NotNull;
+
+import org.apache.commons.configuration.Configuration;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.google.common.collect.ImmutableMap;
+import com.netflix.config.WatchedUpdateListener;
+import com.netflix.config.WatchedUpdateResult;
+
+import io.servicecomb.config.ConfigMapping;
+import io.servicecomb.config.client.ApolloClient;
+import io.servicecomb.config.client.ApolloConfig;
+import io.servicecomb.config.client.ConfigurationAction;
+import io.servicecomb.config.spi.ConfigCenterConfigurationSource;
+
+public class ApolloConfigurationSourceImpl implements 
ConfigCenterConfigurationSource {
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(ConfigCenterConfigurationSource.class);
+
+  private final Map valueCache = new ConcurrentHashMap<>();
+
+  private List listeners = new CopyOnWriteArrayList<>();
+
+  public ApolloConfigurationSourceImpl() {
+  }
+
+  private final UpdateHandler updateHandler = new UpdateHandler();
+
+  @Override
+  public void init(Configuration localConfiguration) {
+ApolloConfig.setConcurrentCompositeConfiguration(localConfiguration);
+init();
+  }
+
+  private void init() {
+ApolloClient apolloClient = new ApolloClient(updateHandler);
+apolloClient.refreshApolloConfig();
+  }
+
+  @Override
+  public void addUpdateListener(@NotNull 

[jira] [Commented] (SCB-85) Upgrade Metrics File Output from 0.5.0 to 1.0.0-m1

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

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

liubao68 closed pull request #498: [SCB-85] simple metrics write file examples
URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/498
 
 
   

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/samples/metrics-write-file-sample/metrics-write-file-common/pom.xml 
b/samples/metrics-write-file-sample/metrics-write-file-common/pom.xml
deleted file mode 100644
index def56c237..0
--- a/samples/metrics-write-file-sample/metrics-write-file-common/pom.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-http://maven.apache.org/POM/4.0.0;
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance;
-  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd;>
-  
-metrics-write-file-sample
-io.servicecomb.samples
-0.6.0-SNAPSHOT
-  
-  4.0.0
-
-  metrics-write-file-common
-  
-
-  io.servicecomb
-  provider-springmvc
-
-  
-
\ No newline at end of file
diff --git 
a/samples/metrics-write-file-sample/metrics-write-file-config-log4j/pom.xml 
b/samples/metrics-write-file-sample/metrics-write-file-config-log4j/pom.xml
deleted file mode 100644
index dc58bf8e5..0
--- a/samples/metrics-write-file-sample/metrics-write-file-config-log4j/pom.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
-
-http://maven.apache.org/POM/4.0.0;
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance;
-  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd;>
-  
-metrics-write-file-sample
-io.servicecomb.samples
-0.6.0-SNAPSHOT
-  
-  4.0.0
-
-  metrics-write-file-config-log4j
-
-  
-
-  io.servicecomb.samples
-  metrics-write-file
-
-
-
-  log4j
-  log4j
-
-  
-
-
\ No newline at end of file
diff --git 
a/samples/metrics-write-file-sample/metrics-write-file-config-log4j2/pom.xml 
b/samples/metrics-write-file-sample/metrics-write-file-config-log4j2/pom.xml
deleted file mode 100644
index 63a16895c..0
--- a/samples/metrics-write-file-sample/metrics-write-file-config-log4j2/pom.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-http://maven.apache.org/POM/4.0.0;
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance;
-  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd;>
-  
-metrics-write-file-sample
-io.servicecomb.samples
-0.6.0-SNAPSHOT
-  
-  4.0.0
-
-  metrics-write-file-config-log4j2
-
-  
-
-  io.servicecomb.samples
-  metrics-write-file
-
-
-
-  org.apache.logging.log4j
-  log4j-api
-
-
-  org.apache.logging.log4j
-  log4j-core
-
-  
-
-
\ No newline at end of file
diff --git 
a/samples/metrics-write-file-sample/metrics-write-file-config/pom.xml 
b/samples/metrics-write-file-sample/metrics-write-file-config/pom.xml
deleted file mode 100644
index 001648d0a..0
--- a/samples/metrics-write-file-sample/metrics-write-file-config/pom.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-http://maven.apache.org/POM/4.0.0;
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance;
-  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd;>
-  
-metrics-write-file-sample
-io.servicecomb.samples
-0.6.0-SNAPSHOT
-  
-  4.0.0
-
-  metrics-write-file-config
-
-
-
\ No newline at end of file
diff --git 
a/samples/metrics-write-file-sample/metrics-write-file-log4j-springboot/pom.xml 
b/samples/metrics-write-file-sample/metrics-write-file-log4j-springboot/pom.xml
index 447ad59c3..8d6ecc4f1 100644
--- 
a/samples/metrics-write-file-sample/metrics-write-file-log4j-springboot/pom.xml
+++ 
b/samples/metrics-write-file-sample/metrics-write-file-log4j-springboot/pom.xml
@@ -67,14 +67,12 @@
 
 
 
-  io.servicecomb.samples
-  metrics-write-file-common
+  log4j
+  log4j
 
-
-
 
   io.servicecomb.samples
-  metrics-write-file-config-log4j
+  metrics-write-file
 
   
 
diff --git 
a/samples/metrics-write-file-sample/metrics-write-file-config-log4j/src/main/java/io/servicecomb/samples/mwf/Log4JMetricsFileWriter.java
 
b/samples/metrics-write-file-sample/metrics-write-file-log4j-springboot/src/main/java/io/servicecomb/samples/mwf/Log4JMetricsFileWriter.java
similarity index 100%
rename from 
samples/metrics-write-file-sample/metrics-write-file-config-log4j/src/main/java/io/servicecomb/samples/mwf/Log4JMetricsFileWriter.java
rename to 

[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-214:


liubao68 commented on a change in pull request #499: [SCB-214] 
AbstractServiceRegistry findServiceInstance process null return value, not 
print too much exception
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/499#discussion_r160596476
 
 

 ##
 File path: 
service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java
 ##
 @@ -169,10 +169,16 @@ private void retry(RequestContext requestContext, 
Handler response
   bodyBuffer -> {
 try {
   
mInstances.setRevision(response.getHeader("X-Resource-Revision"));
 
 Review comment:
   midify like this is better. but we do not care about it now.


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


> AbstractServiceRegistry findServiceInstance do not process null return value
> 
>
> Key: SCB-214
> URL: https://issues.apache.org/jira/browse/SCB-214
> Project: Apache ServiceComb
>  Issue Type: Bug
>  Components: Java-Chassis
>Reporter: WeiChao
>Assignee: WeiChao
> Fix For: java-chassis-1.0.0-m2
>
>
> 问题1:
> [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for 
> the first time, will send AFTER_REGISTRY event. 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173)
> java.lang.NullPointerException
> at 
> io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207)
> at 
> io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208)
> at 
> com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26)
> at 
> io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100)
> at 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at 
> com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
> at 
> com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
> at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
> at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
> at com.google.common.eventbus.EventBus.post(EventBus.java:275)
> at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54)
> at 
> io.servicecomb.serviceregistry.task.CompositeTask.run(CompositeTask.java:35)
> at 
> io.servicecomb.serviceregistry.task.ServiceCenterTask.init(ServiceCenterTask.java:83)
> at 
> io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.run(AbstractServiceRegistry.java:168)
> at 
> io.servicecomb.serviceregistry.registry.RemoteServiceRegistry.run(RemoteServiceRegistry.java:79)
> at io.servicecomb.serviceregistry.RegistryUtils.run(RegistryUtils.java:68)
> at 
> io.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:136)
> at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166)
> at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138)
> at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383)
> at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337)
> at 
> org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882)
> at 
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545)
> at 
> org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139)
> at 
> org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:93)
> at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37)
> at 

[jira] [Commented] (SCB-179) When RequestParam name contains -, exception thrown when consumer invokes api using highway

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-179:


acsukesh closed pull request #491: SCB-179 support -(java identifiers) as 
parameter name with RequestParam
URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/491
 
 
   

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/common/common-protobuf/src/main/java/io/servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java
 
b/common/common-protobuf/src/main/java/io/servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java
index eb02155f9..dd5911dba 100644
--- 
a/common/common-protobuf/src/main/java/io/servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java
+++ 
b/common/common-protobuf/src/main/java/io/servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java
@@ -25,6 +25,8 @@
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
+import javax.lang.model.SourceVersion;
+
 import org.springframework.util.ClassUtils;
 
 import com.fasterxml.jackson.databind.JavaType;
@@ -147,8 +149,8 @@ public static WrapSchema 
getOrCreateArgsSchema(OperationMeta operationMeta) {
   Parameter[] params = method.getParameters();
   for (int idx = 0; idx < params.length; idx++) {
 Parameter param = params[idx];
-String paramName = operationMeta.getParamName(idx);
-
+String paramName = 
io.servicecomb.swagger.generator.core.utils.ClassUtils
+.correctMethodParameterName(operationMeta.getParamName(idx));
 config.addField(paramName, param.getParameterizedType());
   }
 
diff --git 
a/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/JaxrsIntegrationTestBase.java
 
b/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/JaxrsIntegrationTestBase.java
index 4487aef2e..3d5df3f32 100644
--- 
a/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/JaxrsIntegrationTestBase.java
+++ 
b/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/JaxrsIntegrationTestBase.java
@@ -237,6 +237,24 @@ public void ableToPostWithHeader() {
 }
   }
 
+  @Test
+  public void ableToPostWithHeaderWithIdentifier() {
+Person person = new Person();
+person.setName("person name");
+
+HttpHeaders headers = new HttpHeaders();
+headers.setContentType(APPLICATION_JSON);
+headers.add("prefix-test", "prefix  prefix");
+
+HttpEntity requestEntity = new HttpEntity<>(person, headers);
+for (String url : urls) {
+  ResponseEntity responseEntity = restTemplate
+  .postForEntity(url + "saysomething1", requestEntity, String.class);
+
+  assertEquals("prefix  prefix person name", jsonBodyOf(responseEntity, 
String.class));
+}
+  }
+
   @Test
   public void ableToPostObjectAsJson() {
 Map personFieldMap = new HashMap<>();
diff --git 
a/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SchemaFirstJaxrs.java
 
b/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SchemaFirstJaxrs.java
index b13d94ac8..5e926450f 100644
--- 
a/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SchemaFirstJaxrs.java
+++ 
b/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SchemaFirstJaxrs.java
@@ -35,6 +35,8 @@
 
   String saySomething(String prefix, Person user);
 
+  String saySomething1(String prefix_test, Person user);
+
   String sayHi(String name);
 
   String sayHi2(String name);
diff --git 
a/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SomeAbstractJaxrsRestEndpoint.java
 
b/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SomeAbstractJaxrsRestEndpoint.java
index 796ee7e89..a639700c5 100644
--- 
a/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SomeAbstractJaxrsRestEndpoint.java
+++ 
b/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SomeAbstractJaxrsRestEndpoint.java
@@ -106,6 +106,12 @@ public String saySomething(@HeaderParam("prefix") String 
prefix, Person user) {
 return prefix + " " + user.getName();
   }
 
+  @Path("/saysomething1")
+  @POST
+  public String saySomething1(@HeaderParam("prefix-test") String prefix_test, 
Person user) {
+return prefix_test + " " + user.getName();
+  }
+
   @Path("/sayhi/{name}")
   @PUT
   public String sayHi(@PathParam("name") String name) {
diff --git 
a/integration-tests/jaxrs-tests/src/test/resources/microservices/jaxrs/schemaFirst.yaml
 

[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

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

coveralls commented on issue #489: SCB-36 Support dynamic configuration for 
chassis by integrating with Apollo
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#issuecomment-356503070
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14978583/badge)](https://coveralls.io/builds/14978583)
   
   Coverage decreased (-0.03%) to 87.44% when pulling 
**6daa8944519abbfbbf8788a274edbba7abb45f0f on lijasonvip:bo** into 
**acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**.
   


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


> Support connecting to the third party dynamic config center
> ---
>
> Key: SCB-36
> URL: https://issues.apache.org/jira/browse/SCB-36
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: mabin
>Assignee: Bo Li
> Fix For: java-chassis-1.0.0-m1
>
> Attachments: Dynamic Config Proposal.pdf
>
>
> Java-chassis can connect to another open source config center to support 
> changing the setting dynamically.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-214:


weichao666 commented on a change in pull request #499: [SCB-214] 
AbstractServiceRegistry findServiceInstance process null return value, not 
print too much exception
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/499#discussion_r160590155
 
 

 ##
 File path: 
service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java
 ##
 @@ -169,10 +169,16 @@ private void retry(RequestContext requestContext, 
Handler response
   bodyBuffer -> {
 try {
   
mInstances.setRevision(response.getHeader("X-Resource-Revision"));
 
 Review comment:
   [2018-01-10 12:40:56,382/GMT+08:00][main][INFO]running microservice register 
task. 
io.servicecomb.serviceregistry.task.MicroserviceRegisterTask.doRegister(MicroserviceRegisterTask.java:58)
   [2018-01-10 12:40:56,413/GMT+08:00][main][INFO]Using the default address 
resolver as the dns resolver could not be loaded 
io.vertx.core.spi.resolver.ResolverProvider.factory(ResolverProvider.java:51)
   [2018-01-10 
12:40:56,632/GMT+08:00][registry-vert.x-eventloop-thread-0][ERROR]{"errorCode":"400012","errorMessage":"Micro-service
 does not exist","detail":"Service does not exist."}

io.servicecomb.serviceregistry.client.http.ServiceRegistryClientImpl.lambda$10(ServiceRegistryClientImpl.java:115)
   [2018-01-10 12:40:56,679/GMT+08:00][main][INFO]Registry Microservice 
successfully. id=72ccb9b6f5c011e78b1c286ed4891d48 appId=springmvctest, 
name=springmvc, version=0.0.3, schemaIds=[controller, metricsEndpoint, 
codeFirst] 
io.servicecomb.serviceregistry.task.MicroserviceRegisterTask.doRegister(MicroserviceRegisterTask.java:90)
   when 400, syncHandler just print a line code, 
   from the result of print exception, it looks like no need to modified.
   but if think it from whether read json,can it be modified like below?
 if (response.statusCode() == 200) {
   try {
 holder.value =
 JsonUtils.readValue(bodyBuffer.getBytes(), cls);
   } catch (Exception e) {
 LOGGER.warn("read value failed and response message is {}",
 bodyBuffer.toString());
   }
 } else {
   LOGGER.warn(bodyBuffer.toString());
 }


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


> AbstractServiceRegistry findServiceInstance do not process null return value
> 
>
> Key: SCB-214
> URL: https://issues.apache.org/jira/browse/SCB-214
> Project: Apache ServiceComb
>  Issue Type: Bug
>  Components: Java-Chassis
>Reporter: WeiChao
>Assignee: WeiChao
> Fix For: java-chassis-1.0.0-m2
>
>
> 问题1:
> [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for 
> the first time, will send AFTER_REGISTRY event. 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173)
> java.lang.NullPointerException
> at 
> io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207)
> at 
> io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208)
> at 
> com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26)
> at 
> io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100)
> at 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at 
> com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
> at 
> com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
> at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
> at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
> at com.google.common.eventbus.EventBus.post(EventBus.java:275)
> at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54)
> at 
> 

[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-214:


liubao68 commented on a change in pull request #499: [SCB-214] 
AbstractServiceRegistry findServiceInstance process null return value, not 
print too much exception
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/499#discussion_r160586407
 
 

 ##
 File path: 
service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java
 ##
 @@ -169,10 +169,16 @@ private void retry(RequestContext requestContext, 
Handler response
   bodyBuffer -> {
 try {
   
mInstances.setRevision(response.getHeader("X-Resource-Revision"));
 
 Review comment:
   Please analyse if syncHandler need to modified also. 


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


> AbstractServiceRegistry findServiceInstance do not process null return value
> 
>
> Key: SCB-214
> URL: https://issues.apache.org/jira/browse/SCB-214
> Project: Apache ServiceComb
>  Issue Type: Bug
>  Components: Java-Chassis
>Reporter: WeiChao
>Assignee: WeiChao
> Fix For: java-chassis-1.0.0-m2
>
>
> 问题1:
> [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for 
> the first time, will send AFTER_REGISTRY event. 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173)
> java.lang.NullPointerException
> at 
> io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207)
> at 
> io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208)
> at 
> com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26)
> at 
> io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100)
> at 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at 
> com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
> at 
> com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
> at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
> at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
> at com.google.common.eventbus.EventBus.post(EventBus.java:275)
> at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54)
> at 
> io.servicecomb.serviceregistry.task.CompositeTask.run(CompositeTask.java:35)
> at 
> io.servicecomb.serviceregistry.task.ServiceCenterTask.init(ServiceCenterTask.java:83)
> at 
> io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.run(AbstractServiceRegistry.java:168)
> at 
> io.servicecomb.serviceregistry.registry.RemoteServiceRegistry.run(RemoteServiceRegistry.java:79)
> at io.servicecomb.serviceregistry.RegistryUtils.run(RegistryUtils.java:68)
> at 
> io.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:136)
> at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166)
> at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138)
> at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383)
> at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337)
> at 
> org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882)
> at 
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545)
> at 
> org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139)
> at 
> org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:93)
> at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37)
> at 

[jira] [Commented] (SCB-179) When RequestParam name contains -, exception thrown when consumer invokes api using highway

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-179:


coveralls commented on issue #491: SCB-179 support -(java identifiers) as 
parameter name with RequestParam
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/491#issuecomment-356493881
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14978171/badge)](https://coveralls.io/builds/14978171)
   
   Coverage decreased (-0.04%) to 87.442% when pulling 
**377fe88417493d300c6d77fce2d4b051a56d8f85 on acsukesh:master** into 
**e812ad79813250ea5fd241a388ba419d2603c789 on apache:master**.
   


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


> When RequestParam name contains -, exception thrown when consumer invokes api 
> using highway
> ---
>
> Key: SCB-179
> URL: https://issues.apache.org/jira/browse/SCB-179
> Project: Apache ServiceComb
>  Issue Type: Bug
>  Components: Java-Chassis
>Reporter: Mohammad Asif Siddiqui
> Fix For: java-chassis-1.0.0-m1
>
>
> When RequestParam name contains -, exception thrown when consumer invokes api 
> using highway 
> Define api as below
> public boolean buyWithTransaction(@RequestHeader(name = "user-name") long 
> userId,
> @RequestParam(name = "productId") long productId, @RequestParam(name = 
> "price") double price) {
> Below exception thrown
> 2017-12-10 16:54:35,237 [WARN] bizkeeper execution error 
> io.servicecomb.bizkeeper.BizkeeperHandler$1.onExecutionError(BizkeeperHandler.java:59)
> java.lang.Exception: Throwable caught while executing.
> at 
> com.netflix.hystrix.AbstractCommand.getExceptionFromThrowable(AbstractCommand.java:1970)
> at 
> com.netflix.hystrix.AbstractCommand.wrapWithOnExecutionErrorHook(AbstractCommand.java:1490)
> at com.netflix.hystrix.AbstractCommand.access$1300(AbstractCommand.java:60)
> at 
> com.netflix.hystrix.AbstractCommand$ExecutionHookApplication$1.onError(AbstractCommand.java:1361)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:56)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.Observable.unsafeSubscribe(Observable.java:8666)
> at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:52)
> at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:36)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.Observable.unsafeSubscribe(Observable.java:8666)
> at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:52)
> at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:36)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.Observable.unsafeSubscribe(Observable.java:8666)
> at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:52)
> at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:36)

[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-214:


coveralls commented on issue #499: [SCB-214] AbstractServiceRegistry 
findServiceInstance process null return value, not print too much exception
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/499#issuecomment-356493641
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14978156/badge)](https://coveralls.io/builds/14978156)
   
   Coverage decreased (-0.03%) to 87.437% when pulling 
**7883dce0eca5238929a05d55e61577bf6709 on weichao666:CSE1333** into 
**acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**.
   


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


> AbstractServiceRegistry findServiceInstance do not process null return value
> 
>
> Key: SCB-214
> URL: https://issues.apache.org/jira/browse/SCB-214
> Project: Apache ServiceComb
>  Issue Type: Bug
>  Components: Java-Chassis
>Reporter: WeiChao
>Assignee: WeiChao
> Fix For: java-chassis-1.0.0-m2
>
>
> 问题1:
> [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for 
> the first time, will send AFTER_REGISTRY event. 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173)
> java.lang.NullPointerException
> at 
> io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207)
> at 
> io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208)
> at 
> com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26)
> at 
> io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100)
> at 
> io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at 
> com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
> at 
> com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
> at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
> at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
> at com.google.common.eventbus.EventBus.post(EventBus.java:275)
> at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54)
> at 
> io.servicecomb.serviceregistry.task.CompositeTask.run(CompositeTask.java:35)
> at 
> io.servicecomb.serviceregistry.task.ServiceCenterTask.init(ServiceCenterTask.java:83)
> at 
> io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.run(AbstractServiceRegistry.java:168)
> at 
> io.servicecomb.serviceregistry.registry.RemoteServiceRegistry.run(RemoteServiceRegistry.java:79)
> at io.servicecomb.serviceregistry.RegistryUtils.run(RegistryUtils.java:68)
> at 
> io.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:136)
> at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166)
> at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138)
> at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383)
> at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337)
> at 
> org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882)
> at 
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545)
> at 
> org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139)
> at 
> org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:93)
> at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37)
> at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:33)
> at 
> com.huawei.paas.cse.demo.springmvc.server.SpringmvcServer.main(SpringmvcServer.java:39)
> [2018-01-09 
> 

[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

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

coveralls commented on issue #489: SCB-36 Support dynamic configuration for 
chassis by integrating with Apollo
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#issuecomment-356492541
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14977984/badge)](https://coveralls.io/builds/14977984)
   
   Coverage decreased (-0.03%) to 87.44% when pulling 
**61e565472d697ccd927b1c580524e966d1b98404 on lijasonvip:bo** into 
**acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**.
   


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


> Support connecting to the third party dynamic config center
> ---
>
> Key: SCB-36
> URL: https://issues.apache.org/jira/browse/SCB-36
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: mabin
>Assignee: Bo Li
> Fix For: java-chassis-1.0.0-m1
>
> Attachments: Dynamic Config Proposal.pdf
>
>
> Java-chassis can connect to another open source config center to support 
> changing the setting dynamically.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-85) Upgrade Metrics File Output from 0.5.0 to 1.0.0-m1

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

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

coveralls commented on issue #498: [SCB-85] simple metrics write file examples
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/498#issuecomment-356491231
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14977532/badge)](https://coveralls.io/builds/14977532)
   
   Coverage decreased (-0.006%) to 87.462% when pulling 
**fbe3a63c95b899fad8ab005a3e7dd641b8cd6fd3 on zhengyangyong:SCB-85-2** into 
**acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**.
   


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


> Upgrade Metrics File Output from 0.5.0 to 1.0.0-m1
> --
>
> Key: SCB-85
> URL: https://issues.apache.org/jira/browse/SCB-85
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: yangyongzheng
>Assignee: yangyongzheng
> Fix For: java-chassis-1.0.0-m1
>
>
> Because metrics had complete reflected in 1.0.0-m1,so we need upgrade file 
> output example and show new features.
> 1.support more build-in metric
> 2.support output operation level metric



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Resolved] (SCB-168) [pack] resend events on connection loss & load balance

2018-01-09 Thread Willem Jiang (JIRA)

 [ 
https://issues.apache.org/jira/browse/SCB-168?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Willem Jiang resolved SCB-168.
--
Resolution: Fixed

> [pack] resend events on connection loss & load balance
> --
>
> Key: SCB-168
> URL: https://issues.apache.org/jira/browse/SCB-168
> Project: Apache ServiceComb
>  Issue Type: Improvement
>  Components: Saga
>Reporter: Yin Xiang
>Assignee: Yin Xiang
> Fix For: saga-0.1.0
>
>
> as a dev, i want my service's transaction managed, once its network is up 
> again, so that it's not in an unknown state



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value

2018-01-09 Thread WeiChao (JIRA)
WeiChao created SCB-214:
---

 Summary: AbstractServiceRegistry findServiceInstance do not 
process null return value
 Key: SCB-214
 URL: https://issues.apache.org/jira/browse/SCB-214
 Project: Apache ServiceComb
  Issue Type: Bug
  Components: Java-Chassis
Reporter: WeiChao
Assignee: WeiChao
 Fix For: java-chassis-1.0.0-m2


问题1:

[2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for 
the first time, will send AFTER_REGISTRY event. 
io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173)
java.lang.NullPointerException
at 
io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207)
at 
io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208)
at 
com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26)
at 
io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100)
at 
io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at 
com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
at 
com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54)
at io.servicecomb.serviceregistry.task.CompositeTask.run(CompositeTask.java:35)
at 
io.servicecomb.serviceregistry.task.ServiceCenterTask.init(ServiceCenterTask.java:83)
at 
io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.run(AbstractServiceRegistry.java:168)
at 
io.servicecomb.serviceregistry.registry.RemoteServiceRegistry.run(RemoteServiceRegistry.java:79)
at io.servicecomb.serviceregistry.RegistryUtils.run(RegistryUtils.java:68)
at 
io.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:136)
at 
org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166)
at 
org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138)
at 
org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383)
at 
org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337)
at 
org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882)
at 
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545)
at 
org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139)
at 
org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:93)
at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37)
at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:33)
at 
com.huawei.paas.cse.demo.springmvc.server.SpringmvcServer.main(SpringmvcServer.java:39)
[2018-01-09 
20:31:16,399/GMT+08:00][registry-vert.x-eventloop-thread-0][WARN]{"errorCode":"400012","errorMessage":"Micro-service
 does not exist","detail":"No provider matched."}
io.servicecomb.serviceregistry.client.http.ServiceRegistryClientImpl.lambda$null$4(ServiceRegistryClientImpl.java:178)
com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized 
field "errorCode" (class 
io.servicecomb.serviceregistry.api.response.FindInstancesResponse), not marked 
as ignorable (one known property: "instances"])
at [Source: [B@3cb976a1; line: 1, column: 15] (through reference chain: 
io.servicecomb.serviceregistry.api.response.FindInstancesResponse["errorCode"])
at 
com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:62)
at 
com.fasterxml.jackson.databind.DeserializationContext.handleUnknownProperty(DeserializationContext.java:834)
at 
com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty(StdDeserializer.java:1093)
at 
com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperty(BeanDeserializerBase.java:1489)
at 
com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownVanilla(BeanDeserializerBase.java:1467)
at 

[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

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

coveralls commented on issue #489: SCB-36 Support dynamic configuration for 
chassis by integrating with Apollo
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#issuecomment-356483162
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14977146/badge)](https://coveralls.io/builds/14977146)
   
   Coverage decreased (-0.03%) to 87.439% when pulling 
**e26f03de1003dced072e5a8596a3b14f80e08a58 on lijasonvip:bo** into 
**acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**.
   


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


> Support connecting to the third party dynamic config center
> ---
>
> Key: SCB-36
> URL: https://issues.apache.org/jira/browse/SCB-36
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: mabin
>Assignee: Bo Li
> Fix For: java-chassis-1.0.0-m1
>
> Attachments: Dynamic Config Proposal.pdf
>
>
> Java-chassis can connect to another open source config center to support 
> changing the setting dynamically.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

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

lijasonvip commented on a change in pull request #489: SCB-36 Support dynamic 
configuration for chassis by integrating with Apollo
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#discussion_r160577803
 
 

 ##
 File path: 
dynamic-config/config-apollo/src/main/java/io/servicecomb/config/archaius/sources/ApolloConfigurationSourceImpl.java
 ##
 @@ -0,0 +1,126 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.servicecomb.config.archaius.sources;
+
+import static com.netflix.config.WatchedUpdateResult.createIncremental;
+
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.CopyOnWriteArrayList;
+
+import org.apache.commons.configuration.Configuration;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.Maps;
+import com.netflix.config.ConcurrentCompositeConfiguration;
+import com.netflix.config.WatchedUpdateListener;
+import com.netflix.config.WatchedUpdateResult;
+
+import io.servicecomb.config.ConfigMapping;
+import io.servicecomb.config.client.ApolloClient;
+import io.servicecomb.config.client.ApolloConfig;
+import io.servicecomb.config.spi.ConfigCenterConfigurationSource;
+
+public class ApolloConfigurationSourceImpl implements 
ConfigCenterConfigurationSource {
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(ConfigCenterConfigurationSource.class);
+
+  private final Map valueCache = Maps.newConcurrentMap();
+
+  private List listeners = new 
CopyOnWriteArrayList();
 
 Review comment:
   done!


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


> Support connecting to the third party dynamic config center
> ---
>
> Key: SCB-36
> URL: https://issues.apache.org/jira/browse/SCB-36
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: mabin
>Assignee: Bo Li
> Fix For: java-chassis-1.0.0-m1
>
> Attachments: Dynamic Config Proposal.pdf
>
>
> Java-chassis can connect to another open source config center to support 
> changing the setting dynamically.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

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

lijasonvip commented on a change in pull request #489: SCB-36 Support dynamic 
configuration for chassis by integrating with Apollo
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#discussion_r160577846
 
 

 ##
 File path: 
dynamic-config/config-apollo/src/main/java/io/servicecomb/config/archaius/sources/ApolloConfigurationSourceImpl.java
 ##
 @@ -0,0 +1,126 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.servicecomb.config.archaius.sources;
+
+import static com.netflix.config.WatchedUpdateResult.createIncremental;
+
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.CopyOnWriteArrayList;
+
+import org.apache.commons.configuration.Configuration;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.Maps;
+import com.netflix.config.ConcurrentCompositeConfiguration;
+import com.netflix.config.WatchedUpdateListener;
+import com.netflix.config.WatchedUpdateResult;
+
+import io.servicecomb.config.ConfigMapping;
+import io.servicecomb.config.client.ApolloClient;
+import io.servicecomb.config.client.ApolloConfig;
+import io.servicecomb.config.spi.ConfigCenterConfigurationSource;
+
+public class ApolloConfigurationSourceImpl implements 
ConfigCenterConfigurationSource {
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(ConfigCenterConfigurationSource.class);
+
+  private final Map valueCache = Maps.newConcurrentMap();
+
+  private List listeners = new 
CopyOnWriteArrayList();
+
+  public ApolloConfigurationSourceImpl() {
+  }
+
+  private UpdateHandler updateHandler = new UpdateHandler();
+
+  @Override
+  public void init(Configuration localConfiguration) {
+
ApolloConfig.setConcurrentCompositeConfiguration((ConcurrentCompositeConfiguration)
 localConfiguration);
+init();
+  }
+
+  public void init() {
+ApolloClient apolloClient = new ApolloClient(updateHandler);
+apolloClient.refreshApolloConfig();
+  }
+
+  @Override
+  public void addUpdateListener(WatchedUpdateListener watchedUpdateListener) {
+if (watchedUpdateListener != null) {
+  listeners.add(watchedUpdateListener);
 
 Review comment:
   Good point.


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


> Support connecting to the third party dynamic config center
> ---
>
> Key: SCB-36
> URL: https://issues.apache.org/jira/browse/SCB-36
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: mabin
>Assignee: Bo Li
> Fix For: java-chassis-1.0.0-m1
>
> Attachments: Dynamic Config Proposal.pdf
>
>
> Java-chassis can connect to another open source config center to support 
> changing the setting dynamically.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

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

lijasonvip commented on a change in pull request #489: SCB-36 Support dynamic 
configuration for chassis by integrating with Apollo
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#discussion_r160577720
 
 

 ##
 File path: 
dynamic-config/config-apollo/src/main/java/io/servicecomb/config/archaius/sources/ApolloConfigurationSourceImpl.java
 ##
 @@ -0,0 +1,126 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.servicecomb.config.archaius.sources;
+
+import static com.netflix.config.WatchedUpdateResult.createIncremental;
+
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.CopyOnWriteArrayList;
+
+import org.apache.commons.configuration.Configuration;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.Maps;
+import com.netflix.config.ConcurrentCompositeConfiguration;
+import com.netflix.config.WatchedUpdateListener;
+import com.netflix.config.WatchedUpdateResult;
+
+import io.servicecomb.config.ConfigMapping;
+import io.servicecomb.config.client.ApolloClient;
+import io.servicecomb.config.client.ApolloConfig;
+import io.servicecomb.config.spi.ConfigCenterConfigurationSource;
+
+public class ApolloConfigurationSourceImpl implements 
ConfigCenterConfigurationSource {
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(ConfigCenterConfigurationSource.class);
+
+  private final Map valueCache = Maps.newConcurrentMap();
 
 Review comment:
   you are right, use ConcurrentHashMap already.


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


> Support connecting to the third party dynamic config center
> ---
>
> Key: SCB-36
> URL: https://issues.apache.org/jira/browse/SCB-36
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: mabin
>Assignee: Bo Li
> Fix For: java-chassis-1.0.0-m1
>
> Attachments: Dynamic Config Proposal.pdf
>
>
> Java-chassis can connect to another open source config center to support 
> changing the setting dynamically.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Resolved] (SCB-118) Metrics need support prometheus Integration

2018-01-09 Thread yangyongzheng (JIRA)

 [ 
https://issues.apache.org/jira/browse/SCB-118?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

yangyongzheng resolved SCB-118.
---
Resolution: Fixed

> Metrics need support prometheus Integration
> ---
>
> Key: SCB-118
> URL: https://issues.apache.org/jira/browse/SCB-118
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: yangyongzheng
>Assignee: yangyongzheng
> Fix For: java-chassis-1.0.0-m1
>
>
> Metrics can publish data with prometheus standard format for integration



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-85) Upgrade Metrics File Output from 0.5.0 to 1.0.0-m1

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

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

zhengyangyong opened a new pull request #498: [SCB-85] simple metrics write 
file examples
URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/498
 
 
   Signed-off-by: zhengyangyong 
   
   Follow this checklist to help us incorporate your contribution quickly and 
easily:
   
- [ ] Make sure there is a [JIRA 
issue](https://issues.apache.org/jira/browse/SCB) filed for the change (usually 
before you start working on it).  Trivial changes like typos do not require a 
JIRA issue.  Your pull request should address just this issue, without pulling 
in other changes.
- [ ] Each commit in the pull request should have a meaningful subject line 
and body.
- [ ] Format the pull request title like `[SCB-XXX] Fixes bug in 
ApproximateQuantiles`, where you replace `SCB-XXX` with the appropriate JIRA 
issue.
- [ ] Write a pull request description that is detailed enough to 
understand what the pull request does, how, and why.
- [ ] Run `mvn clean install` to make sure basic checks pass. A more 
thorough check will be performed on your pull request automatically.
- [ ] If this contribution is large, please file an Apache [Individual 
Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
   
   ---
   Simple write file samples and merge them


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


> Upgrade Metrics File Output from 0.5.0 to 1.0.0-m1
> --
>
> Key: SCB-85
> URL: https://issues.apache.org/jira/browse/SCB-85
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: yangyongzheng
>Assignee: yangyongzheng
> Fix For: java-chassis-1.0.0-m1
>
>
> Because metrics had complete reflected in 1.0.0-m1,so we need upgrade file 
> output example and show new features.
> 1.support more build-in metric
> 2.support output operation level metric



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-166) Support HealthCheck

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-166:


zhengyangyong commented on a change in pull request #487: [SCB-166] Metrics 
Support HealthCheck
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/487#discussion_r160574294
 
 

 ##
 File path: 
metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/health/DefaultMicroserviceHealthChecker.java
 ##
 @@ -0,0 +1,65 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.servicecomb.metrics.core.health;
+
+import javax.ws.rs.core.Response.Status;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import io.servicecomb.foundation.common.utils.JsonUtils;
+import io.servicecomb.metrics.common.DefaultHealthCheckExtraData;
+import io.servicecomb.metrics.common.HealthCheckResult;
+import io.servicecomb.metrics.common.HealthChecker;
+import io.servicecomb.serviceregistry.RegistryUtils;
+import io.servicecomb.serviceregistry.api.registry.Microservice;
+import io.servicecomb.serviceregistry.api.registry.MicroserviceInstance;
+import io.servicecomb.swagger.invocation.exception.InvocationException;
+
+public class DefaultMicroserviceHealthChecker implements HealthChecker {
+
+  private static Logger logger = 
LoggerFactory.getLogger(DefaultMicroserviceHealthChecker.class);
+
+  @Override
+  public String getName() {
+return "default";
+  }
+
+  @Override
+  public HealthCheckResult check() {
+return new HealthCheckResult(true, "", getExtraData());
+  }
+
+  private String getExtraData() {
+try {
+  Microservice microservice = RegistryUtils.getMicroservice();
+  MicroserviceInstance instance = RegistryUtils.getMicroserviceInstance();
+  return JsonUtils.writeValueAsString(new DefaultHealthCheckExtraData(
 
 Review comment:
   oh,no ,sorry I made a mistake,comment fixed


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


> Support HealthCheck
> ---
>
> Key: SCB-166
> URL: https://issues.apache.org/jira/browse/SCB-166
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: yangyongzheng
>Assignee: yangyongzheng
> Fix For: java-chassis-1.0.0-m1
>
>
> Java Chassis metrics can support HealthCheck rest interface like Spring boot 
> actuator



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-164) [pack] alpha connection recovery on crash

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-164:


coveralls commented on issue #110: [SCB-164] reconnect on crash
URL: 
https://github.com/apache/incubator-servicecomb-saga/pull/110#issuecomment-356475170
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14977225/badge)](https://coveralls.io/builds/14977225)
   
   Coverage increased (+0.2%) to 95.143% when pulling 
**40ca544089dbc6ecfb1604ac01c3206e058cb70e on SCB-164_reconnect_on_crash** into 
**b93e79527eead2a6c3e06c36cc27d2ab65003458 on master**.
   


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


> [pack] alpha connection recovery on crash
> -
>
> Key: SCB-164
> URL: https://issues.apache.org/jira/browse/SCB-164
> Project: Apache ServiceComb
>  Issue Type: Improvement
>  Components: Saga
>Reporter: Yin Xiang
>Assignee: Yin Xiang
>
> as a user, i want to resume my global transaction on alpha crash, so that 
> * pending sub transactions can continue
> * completed sub transactions can be compensated on failure



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Resolved] (SCB-173) [pack] mark start of saga

2018-01-09 Thread Eric Lee (JIRA)

 [ 
https://issues.apache.org/jira/browse/SCB-173?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Lee resolved SCB-173.
--
Resolution: Fixed

> [pack] mark start of saga
> -
>
> Key: SCB-173
> URL: https://issues.apache.org/jira/browse/SCB-173
> Project: Apache ServiceComb
>  Issue Type: Improvement
>  Components: Saga
>Reporter: Yin Xiang
>Assignee: Eric Lee
> Fix For: saga-0.1.0
>
>
> with mark of saga start, we know exactly where the global transaction starts, 
> so that we can generate the global tx id there, to better support concurrent 
> sub-transactions to multiple services



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-166) Support HealthCheck

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-166:


WillemJiang commented on a change in pull request #487: [SCB-166] Metrics 
Support HealthCheck
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/487#discussion_r160567584
 
 

 ##
 File path: 
metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/health/DefaultMicroserviceHealthChecker.java
 ##
 @@ -0,0 +1,65 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.servicecomb.metrics.core.health;
+
+import javax.ws.rs.core.Response.Status;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import io.servicecomb.foundation.common.utils.JsonUtils;
+import io.servicecomb.metrics.common.DefaultHealthCheckExtraData;
+import io.servicecomb.metrics.common.HealthCheckResult;
+import io.servicecomb.metrics.common.HealthChecker;
+import io.servicecomb.serviceregistry.RegistryUtils;
+import io.servicecomb.serviceregistry.api.registry.Microservice;
+import io.servicecomb.serviceregistry.api.registry.MicroserviceInstance;
+import io.servicecomb.swagger.invocation.exception.InvocationException;
+
+public class DefaultMicroserviceHealthChecker implements HealthChecker {
+
+  private static Logger logger = 
LoggerFactory.getLogger(DefaultMicroserviceHealthChecker.class);
+
+  @Override
+  public String getName() {
+return "default";
+  }
+
+  @Override
+  public HealthCheckResult check() {
+return new HealthCheckResult(true, "", getExtraData());
+  }
+
+  private String getExtraData() {
+try {
+  Microservice microservice = RegistryUtils.getMicroservice();
+  MicroserviceInstance instance = RegistryUtils.getMicroserviceInstance();
+  return JsonUtils.writeValueAsString(new DefaultHealthCheckExtraData(
 
 Review comment:
   First Configure center != Service Center. 
   ServiceCenter is more like a service registry which has the .  
   The Health check can work with other system admin tool to help the admin 
check find out the system failure. As it is working in the pull mode by 
default, we don't report the service status to the Service Center now. 
   


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


> Support HealthCheck
> ---
>
> Key: SCB-166
> URL: https://issues.apache.org/jira/browse/SCB-166
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: yangyongzheng
>Assignee: yangyongzheng
> Fix For: java-chassis-1.0.0-m1
>
>
> Java Chassis metrics can support HealthCheck rest interface like Spring boot 
> actuator



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-168) [pack] resend events on connection loss & load balance

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-168:


seanyinx commented on a change in pull request #107: [SCB-168] load balance
URL: 
https://github.com/apache/incubator-servicecomb-saga/pull/107#discussion_r160566518
 
 

 ##
 File path: 
omega/omega-connector/omega-connector-grpc/src/main/java/org/apache/servicecomb/saga/omega/connector/grpc/LoadBalancedClusterMessageSender.java
 ##
 @@ -0,0 +1,140 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.servicecomb.saga.omega.connector.grpc;
+
+import static java.util.Collections.emptyList;
+
+import java.lang.invoke.MethodHandles;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.function.Consumer;
+
+import org.apache.servicecomb.saga.omega.context.ServiceConfig;
+import org.apache.servicecomb.saga.omega.transaction.MessageDeserializer;
+import org.apache.servicecomb.saga.omega.transaction.MessageHandler;
+import org.apache.servicecomb.saga.omega.transaction.MessageSender;
+import org.apache.servicecomb.saga.omega.transaction.MessageSerializer;
+import org.apache.servicecomb.saga.omega.transaction.TxEvent;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import io.grpc.ManagedChannel;
+import io.grpc.ManagedChannelBuilder;
+
+public class LoadBalancedClusterMessageSender implements MessageSender {
+  private static final Logger log = 
LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
+  private final Map senders = new HashMap<>();
+  private final Collection channels;
+
+  public LoadBalancedClusterMessageSender(String[] addresses,
+  MessageSerializer serializer,
+  MessageDeserializer deserializer,
+  ServiceConfig serviceConfig,
+  MessageHandler handler) {
+
+if (addresses.length == 0) {
+  throw new IllegalArgumentException("No reachable cluster address 
provided");
+}
+
+channels = new ArrayList<>(addresses.length);
+for (String address : addresses) {
+  ManagedChannel channel = ManagedChannelBuilder.forTarget(address)
+  .usePlaintext(true)
+  .build();
+
+  channels.add(channel);
+  senders.put(
+  new GrpcClientMessageSender(
+  address,
+  channel,
+  serializer,
+  deserializer,
+  serviceConfig,
+  handler),
+  0L);
+}
+  }
+
+  LoadBalancedClusterMessageSender(MessageSender... messageSenders) {
+for (MessageSender sender : messageSenders) {
+  senders.put(sender, 0L);
+}
+channels = emptyList();
+  }
+
+  @Override
+  public void onConnected() {
+senders.keySet().forEach(sender -> {
+  try {
+sender.onConnected();
+  } catch (Exception e) {
+log.error("Failed connecting to alpha at {}", sender.target(), e);
+  }
+});
+  }
+
+  @Override
+  public void onDisconnected() {
+senders.keySet().forEach(sender -> {
+  try {
+sender.onDisconnected();
+  } catch (Exception e) {
+log.error("Failed disconnecting from alpha at {}", sender.target(), e);
+  }
+});
+
+  }
+
+  @Override
+  public void close() {
+channels.forEach(ManagedChannel::shutdownNow);
+  }
+
+  @Override
+  public void send(TxEvent event) {
+boolean success = false;
+do {
+  try {
+withFastestSender(messageSender -> {
 
 Review comment:
   that's what https://issues.apache.org/jira/browse/SCB-211 is for due to 
entire cluster unreachable


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


> [pack] resend events on connection loss & load balance
> --
>
>

[jira] [Commented] (SCB-173) [pack] mark start of saga

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-173:


coveralls commented on issue #109: [WIP]SCB-173 mark start of saga
URL: 
https://github.com/apache/incubator-servicecomb-saga/pull/109#issuecomment-356293089
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14966275/badge)](https://coveralls.io/builds/14966275)
   
   Coverage increased (+0.02%) to 94.872% when pulling 
**0a8d8118b08528ead5877a33011a8e3db21b9c42 on eric-lee-ltk:SCB-173** into 
**04e847825c8d223859b7ccd5b2b2f75d122635e2 on apache:master**.
   


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


> [pack] mark start of saga
> -
>
> Key: SCB-173
> URL: https://issues.apache.org/jira/browse/SCB-173
> Project: Apache ServiceComb
>  Issue Type: Improvement
>  Components: Saga
>Reporter: Yin Xiang
>Assignee: Eric Lee
> Fix For: saga-0.1.0
>
>
> with mark of saga start, we know exactly where the global transaction starts, 
> so that we can generate the global tx id there, to better support concurrent 
> sub-transactions to multiple services



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-160) Support empty environment scene

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-160:


codecov-io commented on issue #247: SCB-160 Support empty environment scene
URL: 
https://github.com/apache/incubator-servicecomb-service-center/pull/247#issuecomment-356269217
 
 
   # 
[Codecov](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=h1)
 Report
   > Merging 
[#247](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=desc)
 into 
[master](https://codecov.io/gh/apache/incubator-servicecomb-service-center/commit/559b5b38250f193ce9ebe56a4b4907a4e374516d?src=pr=desc)
 will **decrease** coverage by `0.05%`.
   > The diff coverage is `100%`.
   
   [![Impacted file tree 
graph](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/graphs/tree.svg?width=650=150=pr=GAaF7zrg8R)](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=tree)
   
   ```diff
   @@Coverage Diff @@
   ##   master #247  +/-   ##
   ==
   - Coverage   68.89%   68.84%   -0.06% 
   ==
 Files  17   17  
 Lines3556 3547   -9 
   ==
   - Hits 2450 2442   -8 
   + Misses933  930   -3 
   - Partials  173  175   +2
   ```
   
   
   | [Impacted 
Files](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=tree)
 | Coverage Δ | |
   |---|---|---|
   | 
[server/service/util/microservice\_util.go](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/diff?src=pr=tree#diff-c2VydmVyL3NlcnZpY2UvdXRpbC9taWNyb3NlcnZpY2VfdXRpbC5nbw==)
 | `77.34% <ø> (-0.25%)` | :arrow_down: |
   | 
[server/service/util/dependency.go](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/diff?src=pr=tree#diff-c2VydmVyL3NlcnZpY2UvdXRpbC9kZXBlbmRlbmN5Lmdv)
 | `54.24% <ø> (+0.44%)` | :arrow_up: |
   | 
[server/service/service\_dependency.go](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/diff?src=pr=tree#diff-c2VydmVyL3NlcnZpY2Uvc2VydmljZV9kZXBlbmRlbmN5Lmdv)
 | `74.78% <ø> (-0.22%)` | :arrow_down: |
   | 
[server/service/instances.go](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/diff?src=pr=tree#diff-c2VydmVyL3NlcnZpY2UvaW5zdGFuY2VzLmdv)
 | `70.75% <100%> (ø)` | :arrow_up: |
   | 
[server/service/microservices.go](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/diff?src=pr=tree#diff-c2VydmVyL3NlcnZpY2UvbWljcm9zZXJ2aWNlcy5nbw==)
 | `72.85% <0%> (-0.79%)` | :arrow_down: |
   | 
[server/service/tag.go](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/diff?src=pr=tree#diff-c2VydmVyL3NlcnZpY2UvdGFnLmdv)
 | `73.83% <0%> (-0.59%)` | :arrow_down: |
   
   --
   
   [Continue to review full report at 
Codecov](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=continue).
   > **Legend** - [Click here to learn 
more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute  (impact)`, `ø = not affected`, `? = missing data`
   > Powered by 
[Codecov](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=footer).
 Last update 
[559b5b3...e3efbb1](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=lastupdated).
 Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   


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


> Support empty environment scene
> ---
>
> Key: SCB-160
> URL: https://issues.apache.org/jira/browse/SCB-160
> Project: Apache ServiceComb
>  Issue Type: New Feature
>  Components: Service-Center
>Reporter: little-cui
> Fix For: service-center-1.0.0-m1
>
>




--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-118) Metrics need support prometheus Integration

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-118:


WillemJiang closed pull request #496: [SCB-118] fix modules missing in pom
URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/496
 
 
   

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/metrics/metrics-integration/pom.xml 
b/metrics/metrics-integration/pom.xml
index a59715247..e37fe07d1 100644
--- a/metrics/metrics-integration/pom.xml
+++ b/metrics/metrics-integration/pom.xml
@@ -29,4 +29,8 @@
   metrics-integration
   pom
 
+  
+metrics-prometheus
+  
+
 
\ No newline at end of file


 


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


> Metrics need support prometheus Integration
> ---
>
> Key: SCB-118
> URL: https://issues.apache.org/jira/browse/SCB-118
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: yangyongzheng
>Assignee: yangyongzheng
> Fix For: java-chassis-1.0.0-m1
>
>
> Metrics can publish data with prometheus standard format for integration



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-155) SC panic when report metrics concurrently

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-155:


little-cui closed pull request #246: SCB-155 Optimize metric.go
URL: https://github.com/apache/incubator-servicecomb-service-center/pull/246
 
 
   

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/pkg/etcdsync/mutex.go b/pkg/etcdsync/mutex.go
index 0ef019f6..96adcf8d 100644
--- a/pkg/etcdsync/mutex.go
+++ b/pkg/etcdsync/mutex.go
@@ -163,7 +163,7 @@ func (m *DLock) Lock(wait bool) error {
func(message string, evt 
*registry.PluginResponse) error {
if evt != nil && evt.Action == 
registry.Delete {
// break this for-loop, 
and try to create the node again.
-   return fmt.Errorf("Lock 
released, id=%s", m.id)
+   return fmt.Errorf("Lock 
released")
}
return nil
}))
diff --git a/server/rest/metric.go b/server/rest/metric.go
index 350aed81..56423822 100644
--- a/server/rest/metric.go
+++ b/server/rest/metric.go
@@ -62,7 +62,7 @@ func init() {
 
 func ReportRequestCompleted(w http.ResponseWriter, r *http.Request, start 
time.Time) {
instance := fmt.Sprint(core.Instance.Endpoints)
-   elapsed := float64(time.Since(start).Nanoseconds()) / 1000
+   elapsed := float64(time.Since(start).Nanoseconds()) / 
float64(time.Microsecond)
route, _ := r.Context().Value(rest.CTX_MATCH_PATTERN).(string)
 
if strings.Index(r.Method, "WATCH") != 0 {


 


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


> SC panic when report metrics concurrently
> -
>
> Key: SCB-155
> URL: https://issues.apache.org/jira/browse/SCB-155
> Project: Apache ServiceComb
>  Issue Type: Bug
>  Components: Service-Center
>Reporter: little-cui
>Assignee: little-cui
> Fix For: service-center-1.0.0-m1
>
>




--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-173) [pack] mark start of saga

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-173:


eric-lee-ltk commented on a change in pull request #109: [WIP]SCB-173 mark 
start of saga
URL: 
https://github.com/apache/incubator-servicecomb-saga/pull/109#discussion_r160354517
 
 

 ##
 File path: 
omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAnnotationProcessor.java
 ##
 @@ -0,0 +1,50 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.servicecomb.saga.omega.transaction;
+
+import org.apache.servicecomb.saga.omega.context.OmegaContext;
+
+public class SagaStartAnnotationProcessor {
+
+  private final OmegaContext omegaContext;
+
+  private final MessageSender sender;
+
+  SagaStartAnnotationProcessor(OmegaContext omegaContext, MessageSender 
sender) {
+this.omegaContext = omegaContext;
+this.sender = sender;
+  }
+
+  void preIntercept() {
+String globalTxId = initChildContext();
+// reuse the globalTxId as localTxId to differ localTxId in 
SagaStartedEvent and the first TxStartedEvent
+sender.send(new SagaStartedEvent(globalTxId, globalTxId));
+  }
+
+  void postIntercept() {
+String globalTxId = omegaContext.globalTxId();
+sender.send(new SagaEndedEvent(globalTxId, globalTxId));
+  }
+
+  private String initChildContext() {
+String globalTxId = omegaContext.newGlobalTxId();
+omegaContext.newLocalTxId();
 
 Review comment:
   It's a child context. Unable to find any place suitable to initialize the 
child context. Besides, as the omegaContext is shared threadlocal, setting the 
localTxId will mislead the child TxStartedEvent.


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


> [pack] mark start of saga
> -
>
> Key: SCB-173
> URL: https://issues.apache.org/jira/browse/SCB-173
> Project: Apache ServiceComb
>  Issue Type: Improvement
>  Components: Saga
>Reporter: Yin Xiang
>Assignee: Eric Lee
> Fix For: saga-0.1.0
>
>
> with mark of saga start, we know exactly where the global transaction starts, 
> so that we can generate the global tx id there, to better support concurrent 
> sub-transactions to multiple services



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-173) [pack] mark start of saga

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-173:


seanyinx commented on a change in pull request #109: [WIP]SCB-173 mark start of 
saga
URL: 
https://github.com/apache/incubator-servicecomb-saga/pull/109#discussion_r160350836
 
 

 ##
 File path: 
omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAnnotationProcessor.java
 ##
 @@ -0,0 +1,50 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.servicecomb.saga.omega.transaction;
+
+import org.apache.servicecomb.saga.omega.context.OmegaContext;
+
+public class SagaStartAnnotationProcessor {
+
+  private final OmegaContext omegaContext;
+
+  private final MessageSender sender;
+
+  SagaStartAnnotationProcessor(OmegaContext omegaContext, MessageSender 
sender) {
+this.omegaContext = omegaContext;
+this.sender = sender;
+  }
+
+  void preIntercept() {
+String globalTxId = initChildContext();
+// reuse the globalTxId as localTxId to differ localTxId in 
SagaStartedEvent and the first TxStartedEvent
+sender.send(new SagaStartedEvent(globalTxId, globalTxId));
+  }
+
+  void postIntercept() {
+String globalTxId = omegaContext.globalTxId();
+sender.send(new SagaEndedEvent(globalTxId, globalTxId));
+  }
+
+  private String initChildContext() {
+String globalTxId = omegaContext.newGlobalTxId();
+omegaContext.newLocalTxId();
+omegaContext.setParentTxId(globalTxId);
 
 Review comment:
   setting parent tx id to itself seems weird...


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


> [pack] mark start of saga
> -
>
> Key: SCB-173
> URL: https://issues.apache.org/jira/browse/SCB-173
> Project: Apache ServiceComb
>  Issue Type: Improvement
>  Components: Saga
>Reporter: Yin Xiang
>Assignee: Eric Lee
> Fix For: saga-0.1.0
>
>
> with mark of saga start, we know exactly where the global transaction starts, 
> so that we can generate the global tx id there, to better support concurrent 
> sub-transactions to multiple services



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-173) [pack] mark start of saga

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-173:


seanyinx commented on a change in pull request #109: [WIP]SCB-173 mark start of 
saga
URL: 
https://github.com/apache/incubator-servicecomb-saga/pull/109#discussion_r160350689
 
 

 ##
 File path: 
omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAnnotationProcessor.java
 ##
 @@ -0,0 +1,50 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.servicecomb.saga.omega.transaction;
+
+import org.apache.servicecomb.saga.omega.context.OmegaContext;
+
+public class SagaStartAnnotationProcessor {
+
+  private final OmegaContext omegaContext;
+
+  private final MessageSender sender;
+
+  SagaStartAnnotationProcessor(OmegaContext omegaContext, MessageSender 
sender) {
+this.omegaContext = omegaContext;
+this.sender = sender;
+  }
+
+  void preIntercept() {
+String globalTxId = initChildContext();
+// reuse the globalTxId as localTxId to differ localTxId in 
SagaStartedEvent and the first TxStartedEvent
+sender.send(new SagaStartedEvent(globalTxId, globalTxId));
+  }
+
+  void postIntercept() {
+String globalTxId = omegaContext.globalTxId();
+sender.send(new SagaEndedEvent(globalTxId, globalTxId));
+  }
+
+  private String initChildContext() {
+String globalTxId = omegaContext.newGlobalTxId();
+omegaContext.newLocalTxId();
 
 Review comment:
   why not set local tx id = global tx id?


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


> [pack] mark start of saga
> -
>
> Key: SCB-173
> URL: https://issues.apache.org/jira/browse/SCB-173
> Project: Apache ServiceComb
>  Issue Type: Improvement
>  Components: Saga
>Reporter: Yin Xiang
>Assignee: Eric Lee
> Fix For: saga-0.1.0
>
>
> with mark of saga start, we know exactly where the global transaction starts, 
> so that we can generate the global tx id there, to better support concurrent 
> sub-transactions to multiple services



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-173) [pack] mark start of saga

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-173:


seanyinx commented on a change in pull request #109: [WIP]SCB-173 mark start of 
saga
URL: 
https://github.com/apache/incubator-servicecomb-saga/pull/109#discussion_r160352115
 
 

 ##
 File path: 
omega/omega-transport/omega-transport-resttemplate/src/main/java/org/apache/servicecomb/saga/omega/transport/resttemplate/TransactionClientHttpRequestInterceptor.java
 ##
 @@ -56,7 +61,7 @@ private String localTxId() {
 String localTxId = omegaContext.localTxId();
 
 if (localTxId == null) {
-  return omegaContext.newLocalTxId();
+  LOG.error("Local tx id should not be null of global tx {}.", 
omegaContext.globalTxId());
 
 Review comment:
   same as above


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


> [pack] mark start of saga
> -
>
> Key: SCB-173
> URL: https://issues.apache.org/jira/browse/SCB-173
> Project: Apache ServiceComb
>  Issue Type: Improvement
>  Components: Saga
>Reporter: Yin Xiang
>Assignee: Eric Lee
> Fix For: saga-0.1.0
>
>
> with mark of saga start, we know exactly where the global transaction starts, 
> so that we can generate the global tx id there, to better support concurrent 
> sub-transactions to multiple services



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-173) [pack] mark start of saga

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-173:


seanyinx commented on a change in pull request #109: [WIP]SCB-173 mark start of 
saga
URL: 
https://github.com/apache/incubator-servicecomb-saga/pull/109#discussion_r160352060
 
 

 ##
 File path: 
omega/omega-transport/omega-transport-resttemplate/src/main/java/org/apache/servicecomb/saga/omega/transport/resttemplate/TransactionClientHttpRequestInterceptor.java
 ##
 @@ -47,7 +52,7 @@ private String globalTxId() {
 String globalTxId = omegaContext.globalTxId();
 
 if (globalTxId == null) {
-  return omegaContext.newGlobalTxId();
+  LOG.error("Global tx id should not be null.");
 
 Review comment:
   this message is misleading, since the rest template may be used for non 
transaction request. better just not setting header at all and show error at 
compensable aspect.
 


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


> [pack] mark start of saga
> -
>
> Key: SCB-173
> URL: https://issues.apache.org/jira/browse/SCB-173
> Project: Apache ServiceComb
>  Issue Type: Improvement
>  Components: Saga
>Reporter: Yin Xiang
>Assignee: Eric Lee
> Fix For: saga-0.1.0
>
>
> with mark of saga start, we know exactly where the global transaction starts, 
> so that we can generate the global tx id there, to better support concurrent 
> sub-transactions to multiple services



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-173) [pack] mark start of saga

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-173:


coveralls commented on issue #109: [WIP]SCB-173 mark start of saga
URL: 
https://github.com/apache/incubator-servicecomb-saga/pull/109#issuecomment-356222046
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14962384/badge)](https://coveralls.io/builds/14962384)
   
   Coverage increased (+0.08%) to 94.928% when pulling 
**fcb479df5596cd1e1e4912063aa5b3f4e7f5c78d on eric-lee-ltk:SCB-173** into 
**04e847825c8d223859b7ccd5b2b2f75d122635e2 on apache:master**.
   


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


> [pack] mark start of saga
> -
>
> Key: SCB-173
> URL: https://issues.apache.org/jira/browse/SCB-173
> Project: Apache ServiceComb
>  Issue Type: Improvement
>  Components: Saga
>Reporter: Yin Xiang
>Assignee: Eric Lee
> Fix For: saga-0.1.0
>
>
> with mark of saga start, we know exactly where the global transaction starts, 
> so that we can generate the global tx id there, to better support concurrent 
> sub-transactions to multiple services



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-118) Metrics need support prometheus Integration

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-118:


liubao68 closed pull request #480: [SCB-118] add prometheus integration impl
URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/480
 
 
   

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/demo/demo-springmvc/springmvc-client/src/main/java/io/servicecomb/demo/springmvc/client/SpringmvcClient.java
 
b/demo/demo-springmvc/springmvc-client/src/main/java/io/servicecomb/demo/springmvc/client/SpringmvcClient.java
index bd2343374..f03b9b45c 100644
--- 
a/demo/demo-springmvc/springmvc-client/src/main/java/io/servicecomb/demo/springmvc/client/SpringmvcClient.java
+++ 
b/demo/demo-springmvc/springmvc-client/src/main/java/io/servicecomb/demo/springmvc/client/SpringmvcClient.java
@@ -128,6 +128,38 @@ public static void run() throws Exception {
 } catch (Exception e) {
   TestMgr.check("true", "false");
 }
+
+//prometheus integration test
+try {
+  String content = 
restTemplate.getForObject("cse://springmvc/codeFirstSpringmvc/prometheusForTest",
 String.class);
+
+  
TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_addDate"));
+  
TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_sayHello"));
+  
TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_fallbackFromCache"));
+  
TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_isTrue_producer"));
+  
TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_add"));
+  
TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_sayHi2"));
+  
TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_saySomething"));
+
+  String[] metricLines = content.split("\n");
+  if (metricLines.length > 0) {
+for (String metricLine : metricLines) {
+  if (!metricLine.startsWith("#")) {
+String[] metricKeyAndValue = metricLine.split(" ");
+if 
(!metricKeyAndValue[0].startsWith("servicecomb_instance_system")) {
+  if (Double.parseDouble(metricKeyAndValue[1]) < 0) {
+TestMgr.check("true", "false");
+break;
+  }
+}
+  }
+}
+  } else {
+TestMgr.check("true", "false");
+  }
+} catch (Exception e) {
+  TestMgr.check("true", "false");
+}
   }
 
   private static void testController(RestTemplate template, String 
microserviceName) {
diff --git a/demo/demo-springmvc/springmvc-server/pom.xml 
b/demo/demo-springmvc/springmvc-server/pom.xml
index 772e35f05..43a7551c1 100644
--- a/demo/demo-springmvc/springmvc-server/pom.xml
+++ b/demo/demo-springmvc/springmvc-server/pom.xml
@@ -39,7 +39,7 @@
 

io.servicecomb
-   metrics-core
+   metrics-prometheus

 

diff --git 
a/demo/demo-springmvc/springmvc-server/src/main/java/io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java
 
b/demo/demo-springmvc/springmvc-server/src/main/java/io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java
index a244e03cd..8011dbf75 100644
--- 
a/demo/demo-springmvc/springmvc-server/src/main/java/io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java
+++ 
b/demo/demo-springmvc/springmvc-server/src/main/java/io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java
@@ -50,6 +50,7 @@
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RequestPart;
 import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.client.RestTemplate;
 import org.springframework.web.multipart.MultipartFile;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
@@ -352,6 +353,13 @@ public String metricsForTest() {
 }
   }
 
+  //Only for Prometheus integration test
+  @RequestMapping(path = "/prometheusForTest", method = RequestMethod.GET)
+  public String prometheusForTest() {
+RestTemplate defaultRestTemplate = new RestTemplate();
+return defaultRestTemplate.getForObject("http://localhost:9696/metrics;, 
String.class);
+  }
+
   @GetMapping(path = "/traceId")
   public String getTraceId() {
 return ContextUtils.getInvocationContext().getContext(Const.TRACE_ID_NAME);
diff --git 
a/demo/demo-springmvc/springmvc-server/src/main/resources/microservice.yaml 
b/demo/demo-springmvc/springmvc-server/src/main/resources/microservice.yaml
index f5d230404..034f0d074 100644
--- 

[jira] [Commented] (SCB-179) When RequestParam name contains -, exception thrown when consumer invokes api using highway

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-179:


acsukesh commented on issue #491: SCB-179 support -(java identifiers) as 
parameter name with RequestParam
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/491#issuecomment-356216837
 
 
   @wujimin comments fixed. Will add IT and update PR.


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


> When RequestParam name contains -, exception thrown when consumer invokes api 
> using highway
> ---
>
> Key: SCB-179
> URL: https://issues.apache.org/jira/browse/SCB-179
> Project: Apache ServiceComb
>  Issue Type: Bug
>  Components: Java-Chassis
>Reporter: Mohammad Asif Siddiqui
> Fix For: java-chassis-1.0.0-m1
>
>
> When RequestParam name contains -, exception thrown when consumer invokes api 
> using highway 
> Define api as below
> public boolean buyWithTransaction(@RequestHeader(name = "user-name") long 
> userId,
> @RequestParam(name = "productId") long productId, @RequestParam(name = 
> "price") double price) {
> Below exception thrown
> 2017-12-10 16:54:35,237 [WARN] bizkeeper execution error 
> io.servicecomb.bizkeeper.BizkeeperHandler$1.onExecutionError(BizkeeperHandler.java:59)
> java.lang.Exception: Throwable caught while executing.
> at 
> com.netflix.hystrix.AbstractCommand.getExceptionFromThrowable(AbstractCommand.java:1970)
> at 
> com.netflix.hystrix.AbstractCommand.wrapWithOnExecutionErrorHook(AbstractCommand.java:1490)
> at com.netflix.hystrix.AbstractCommand.access$1300(AbstractCommand.java:60)
> at 
> com.netflix.hystrix.AbstractCommand$ExecutionHookApplication$1.onError(AbstractCommand.java:1361)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:56)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.Observable.unsafeSubscribe(Observable.java:8666)
> at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:52)
> at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:36)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.Observable.unsafeSubscribe(Observable.java:8666)
> at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:52)
> at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:36)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50)
> at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
> at rx.Observable.unsafeSubscribe(Observable.java:8666)
> at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:52)
> at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:36)
> at rx.Observable.subscribe(Observable.java:8759)
> at rx.Observable.subscribe(Observable.java:8726)
> at rx.Observable.subscribe(Observable.java:8619)
> at io.servicecomb.bizkeeper.BizkeeperHandler.handle(BizkeeperHandler.java:82)
> at 

[jira] [Created] (SCB-211) [pack] exponential backoff reconnect on cluster down or network down

2018-01-09 Thread Yin Xiang (JIRA)
Yin Xiang created SCB-211:
-

 Summary: [pack] exponential backoff reconnect on cluster down or 
network down
 Key: SCB-211
 URL: https://issues.apache.org/jira/browse/SCB-211
 Project: Apache ServiceComb
  Issue Type: Improvement
  Components: Saga
Reporter: Yin Xiang


when omega is disconnected from alpha cluster, it keeps trying on failure of 
sending event.
an exponential back off retry is better for the sake of cpu resources and disk 
space due to logs



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-188) optimize transport for reactive mode

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-188:


coveralls commented on issue #495: [SCB-188] Transport optimize for reactive
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/495#issuecomment-356215931
 
 
   
   [![Coverage 
Status](https://coveralls.io/builds/14962165/badge)](https://coveralls.io/builds/14962165)
   
   Coverage increased (+0.1%) to 87.517% when pulling 
**e9d630f563f8f26d1e98c9c00fe0750a4cfaf07e on 
wujimin:transport-optimize-for-reactive** into 
**9c4416d69c8ba8db146806ca1ced3876b3a0c411 on apache:master**.
   


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


> optimize transport for reactive mode
> 
>
> Key: SCB-188
> URL: https://issues.apache.org/jira/browse/SCB-188
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: wujimin
>Assignee: wujimin
> Fix For: java-chassis-1.0.0-m1
>
>




--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-164) [pack] alpha connection recovery on crash

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-164:


seanyinx opened a new pull request #110: [SCB-164] reconnect on crash
URL: https://github.com/apache/incubator-servicecomb-saga/pull/110
 
 
   Follow this checklist to help us incorporate your contribution quickly and 
easily:
   
- [ ] Make sure there is a [JIRA 
issue](https://issues.apache.org/jira/browse/SCB) filed for the change (usually 
before you start working on it).  Trivial changes like typos do not require a 
JIRA issue.  Your pull request should address just this issue, without pulling 
in other changes.
- [ ] Each commit in the pull request should have a meaningful subject line 
and body.
- [ ] Format the pull request title like `[SCB-XXX] Fixes bug in 
ApproximateQuantiles`, where you replace `SCB-XXX` with the appropriate JIRA 
issue.
- [ ] Write a pull request description that is detailed enough to 
understand what the pull request does, how, and why.
- [ ] Run `mvn clean install` to make sure basic checks pass. A more 
thorough check will be performed on your pull request automatically.
- [ ] If this contribution is large, please file an Apache [Individual 
Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
   
   ---
   


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


> [pack] alpha connection recovery on crash
> -
>
> Key: SCB-164
> URL: https://issues.apache.org/jira/browse/SCB-164
> Project: Apache ServiceComb
>  Issue Type: Improvement
>  Components: Saga
>Reporter: Yin Xiang
>Assignee: Yin Xiang
>
> as a user, i want to resume my global transaction on alpha crash, so that 
> * pending sub transactions can continue
> * completed sub transactions can be compensated on failure



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-210) Use map feature to design microservice yaml file to support control flag of config center

2018-01-09 Thread Bo Li (JIRA)

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

Bo Li commented on SCB-210:
---

Need to ask some help from ZhangQi about how to use the feature of mapping a 
key to another.

> Use map feature to design microservice yaml file to support control flag of 
> config center
> -
>
> Key: SCB-210
> URL: https://issues.apache.org/jira/browse/SCB-210
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: Bo Li
>Assignee: Bo Li
>
> check comment of wujimin at:
> https://github.com/apache/incubator-servicecomb-java-chassis/pull/489/



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-188) optimize transport for reactive mode

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-188:


wujimin commented on a change in pull request #495: [SCB-188] Transport 
optimize for reactive
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/495#discussion_r160340407
 
 

 ##
 File path: demo/perf/src/main/java/io/servicecomb/demo/perf/PerfMain.java
 ##
 @@ -0,0 +1,48 @@
+/*
 
 Review comment:
   done


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


> optimize transport for reactive mode
> 
>
> Key: SCB-188
> URL: https://issues.apache.org/jira/browse/SCB-188
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: wujimin
>Assignee: wujimin
> Fix For: java-chassis-1.0.0-m1
>
>




--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

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

lijasonvip commented on a change in pull request #489: [WIP] SCB-36 Support 
dynamic configuration for chassis by integrating with …
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#discussion_r160340288
 
 

 ##
 File path: 
foundations/foundation-config/src/main/java/io/servicecomb/config/ConfigUtil.java
 ##
 @@ -151,7 +153,8 @@ private static void 
duplicateServiceCombConfigToCse(ConcurrentCompositeConfigura
   }
 
   public static DynamicWatchedConfiguration 
createConfigFromConfigCenter(Configuration localConfiguration) {
-if (localConfiguration.getProperty(configCenterUrlKey) == null) {
+if (localConfiguration.getProperty(configCenterUrlKey) == null &&
 
 Review comment:
   Improvement of this problem will be watched at 
https://issues.apache.org/jira/browse/SCB-210


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


> Support connecting to the third party dynamic config center
> ---
>
> Key: SCB-36
> URL: https://issues.apache.org/jira/browse/SCB-36
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: mabin
>Assignee: mabin
> Fix For: java-chassis-1.0.0-m1
>
> Attachments: Dynamic Config Proposal.pdf
>
>
> Java-chassis can connect to another open source config center to support 
> changing the setting dynamically.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Assigned] (SCB-210) Use map feature to design microservice yaml file to support control flag of config center

2018-01-09 Thread Bo Li (JIRA)

 [ 
https://issues.apache.org/jira/browse/SCB-210?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bo Li reassigned SCB-210:
-

Assignee: Bo Li

> Use map feature to design microservice yaml file to support control flag of 
> config center
> -
>
> Key: SCB-210
> URL: https://issues.apache.org/jira/browse/SCB-210
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: Bo Li
>Assignee: Bo Li
>
> check comment of wujimin at:
> https://github.com/apache/incubator-servicecomb-java-chassis/pull/489/



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (SCB-210) Use map feature to design microservice yaml file to support control flag of config center

2018-01-09 Thread Bo Li (JIRA)
Bo Li created SCB-210:
-

 Summary: Use map feature to design microservice yaml file to 
support control flag of config center
 Key: SCB-210
 URL: https://issues.apache.org/jira/browse/SCB-210
 Project: Apache ServiceComb
  Issue Type: Sub-task
  Components: Java-Chassis
Reporter: Bo Li


check comment of wujimin at:
https://github.com/apache/incubator-servicecomb-java-chassis/pull/489/



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-118) Metrics need support prometheus Integration

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-118:


zhengyangyong commented on issue #480: [SCB-118] add prometheus integration impl
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/480#issuecomment-356208287
 
 
   Rebase on upstream master and resolve conflicts


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


> Metrics need support prometheus Integration
> ---
>
> Key: SCB-118
> URL: https://issues.apache.org/jira/browse/SCB-118
> Project: Apache ServiceComb
>  Issue Type: Sub-task
>  Components: Java-Chassis
>Reporter: yangyongzheng
>Assignee: yangyongzheng
> Fix For: java-chassis-1.0.0-m1
>
>
> Metrics can publish data with prometheus standard format for integration



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SCB-172) Upgrade to zipkin2

2018-01-09 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on SCB-172:


yangbor commented on a change in pull request #488: [SCB-172] upgrade zipkin 
libraries to zipkin2
URL: 
https://github.com/apache/incubator-servicecomb-java-chassis/pull/488#discussion_r160310146
 
 

 ##
 File path: integration-tests/pom.xml
 ##
 @@ -54,10 +54,15 @@
 0.6.0-SNAPSHOT
 test-jar
   
+  
+io.zipkin.zipkin2
+zipkin
+2.4.2
 
 Review comment:
   This is inside the \ section so the version is 
required. The integration-tests/pom.xml does not include the 
java-chassis-dependencies pom so a separate dependencyManagement is required.
 


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


> Upgrade to zipkin2
> --
>
> Key: SCB-172
> URL: https://issues.apache.org/jira/browse/SCB-172
> Project: Apache ServiceComb
>  Issue Type: Improvement
>  Components: Java-Chassis
>Reporter: Yang Bo
>Assignee: Yang Bo
> Fix For: java-chassis-1.0.0-m1
>
>   Original Estimate: 48h
>  Remaining Estimate: 48h
>
> The upstream zipkin libraries are moving to use the v2 http api introduced in 
> zipkin-1.31. It's also including other features and improvements.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)