Re: [DISCUSSION][Toolkit] Prepare to release 0.2.0
+1 looking forward to corresponding articles too Daniel Qian 于2019年11月26日周二 下午3:34写道: > +1 looking forward to toolkit 0.2.0 > > sen sun 于2019年11月26日周二 上午11:16写道: > > > > Hi toolkit team, > > > > We have developed many new features, I think it's time to release 0.2.0 > > Our new features are as follows: > > * oas-validator for compliance check > > * oas-validator for compatibility check > > * new oas-generator for generating contract from code > > * support openapi v3 > > * support generate springcloud microservice project > > * etc ... I may not list enough, I hope everyone can add what you know > > > > What do you think about releasing 0.2.0? > > > > If everyone agrees to release a new version, we may start to do some > work: > > * make sure the license is ok > > * make sure our features are complete > > * make sure our tests are complete > > * etc ... I may not list enough, I hope everyone can add what you know > > > > If not, maybe we need to discuss what needs to be done to get it to > release > > > > > > And I attach the information for reference. This is the roadmap for the > > previous community discussions: > > * > > > https://lists.apache.org/thread.html/5048ca4aa778b13952cefcd32ec25be24eb38eb8424f24c80340183b@%3Cdev.servicecomb.apache.org%3E > > > > Any ideas are welcome > > > > -- > Daniel Qian > Apache Committer(chanjarster) > blog:https://chanjarster.github.io > github:https://github.com/chanjarster > segmentfault: https://segmentfault.com/u/chanjarster >
Re: [DISCUSSION][Toolkit] Prepare to release 0.2.0
+1 looking forward to toolkit 0.2.0 sen sun 于2019年11月26日周二 上午11:16写道: > > Hi toolkit team, > > We have developed many new features, I think it's time to release 0.2.0 > Our new features are as follows: > * oas-validator for compliance check > * oas-validator for compatibility check > * new oas-generator for generating contract from code > * support openapi v3 > * support generate springcloud microservice project > * etc ... I may not list enough, I hope everyone can add what you know > > What do you think about releasing 0.2.0? > > If everyone agrees to release a new version, we may start to do some work: > * make sure the license is ok > * make sure our features are complete > * make sure our tests are complete > * etc ... I may not list enough, I hope everyone can add what you know > > If not, maybe we need to discuss what needs to be done to get it to release > > > And I attach the information for reference. This is the roadmap for the > previous community discussions: > * > https://lists.apache.org/thread.html/5048ca4aa778b13952cefcd32ec25be24eb38eb8424f24c80340183b@%3Cdev.servicecomb.apache.org%3E > > Any ideas are welcome -- Daniel Qian Apache Committer(chanjarster) blog:https://chanjarster.github.io github:https://github.com/chanjarster segmentfault: https://segmentfault.com/u/chanjarster
[DISCUSSION][Toolkit] Prepare to release 0.2.0
Hi toolkit team, We have developed many new features, I think it's time to release 0.2.0 Our new features are as follows: * oas-validator for compliance check * oas-validator for compatibility check * new oas-generator for generating contract from code * support openapi v3 * support generate springcloud microservice project * etc ... I may not list enough, I hope everyone can add what you know What do you think about releasing 0.2.0? If everyone agrees to release a new version, we may start to do some work: * make sure the license is ok * make sure our features are complete * make sure our tests are complete * etc ... I may not list enough, I hope everyone can add what you know If not, maybe we need to discuss what needs to be done to get it to release And I attach the information for reference. This is the roadmap for the previous community discussions: * https://lists.apache.org/thread.html/5048ca4aa778b13952cefcd32ec25be24eb38eb8424f24c80340183b@%3Cdev.servicecomb.apache.org%3E Any ideas are welcome
Re: Improve the transaction compensation mechanism for FSM
Hi, Yes, they are class exception, Maybe the following name will be better class BusinessCompensationFailureException class OmegaConnectedException My idea is to catch an exception and send a compensation result in the compensation method[1] on the Omega side. You can see it in the following TODO position public void apply(String globalTxId, String localTxId, String callbackMethod, Object... payloads) { CallbackContextInternal contextInternal = contexts.get(callbackMethod); String oldGlobalTxId = omegaContext.globalTxId(); String oldLocalTxId = omegaContext.localTxId(); try { omegaContext.setGlobalTxId(globalTxId); omegaContext.setLocalTxId(localTxId); contextInternal.callbackMethod.invoke(contextInternal.target, payloads); LOG.info("Callback transaction with global tx id [{}], local tx id [{}]", globalTxId, localTxId); // TODO send TxCompensateSucceedAckEvent to Alpha } catch (IllegalAccessException | InvocationTargetException e) { LOG.error( "Pre-checking for callback method " + contextInternal.callbackMethod.toString() + " was somehow skipped, did you forget to configure callback method checking on service startup?", e); // TODO send TxCompensateFailedAckEvent to Alpha } finally { omegaContext.setGlobalTxId(oldGlobalTxId); omegaContext.setLocalTxId(oldLocalTxId); } } Alpha waits for compensation result and catching exception after calling compensation method 1. Received TxCompensateSucceedAckEvent: transaction completed 2. Received TxCompensateFailedAckEvent: throw BusinessCompensationFailureException 3. catch other exception throw OmegaConnectedException [1] https://github.com/apache/servicecomb-pack/blob/a89c7cd8b416c9b281fdbe28644cb6b7e2e78f91/omega/omega-context/src/main/java/org/apache/servicecomb/pack/omega/context/CallbackContext.java#L43 [2] https://github.com/apache/servicecomb-pack/blob/694b8d701097226d898e7a342c902ff711caa3cf/alpha/alpha-server/src/main/java/org/apache/servicecomb/pack/alpha/server/fsm/GrpcOmegaCallback.java#L35 Best regards, Lei Zhang On November 25, 2019 at 7:49:47 PM, Zheng Feng (zh.f...@gmail.com) wrote: Hi, I wonder how we can diff the "Omega compensation failure" from the "Business compensation failure" ? the different exception classes ? Zhang Lei 于2019年11月25日周一 下午5:32写道: > Hi, Pack Team > > Currently, Alpha compensation mechanism has some defects [1], I plan to > solve this problem step by step [2] > > Step1: Modify the OnConnected method to bidirectional streaming RPC > > This will be needed for the Step2 > > Step2: Custom compensation exception rules to distinguish between business > compensation exceptions and framework compensation exceptions for FSM. > > After calling the compensation method, Alpha needs to wait for > Omega to send a compensation result message. The message type is as > follows: > > Successful compensation: > Business compensation failure:business code throws an exception, > Do not switch Omega instance and retry(Retry rule is implemented in the > Step3) > Omega compensation failure: omega code throws an exception, > switch other Omega instance and retry(Retry rule is implemented in the > Step3) > > > Step3. Added retry and timeout rule to compensate for failures > > Exceeded the number of retries or timeout will change state to > suspended > > Any Suggestion? > > [1] https://github.com/apache/servicecomb-pack/issues/590 > [2] https://github.com/apache/servicecomb-pack/pull/607 > > Best regards, > Lei Zhang > > > Best regards, > Lei Zhang >
Re: Improve the transaction compensation mechanism for FSM
Hi, I wonder how we can diff the "Omega compensation failure" from the "Business compensation failure" ? the different exception classes ? Zhang Lei 于2019年11月25日周一 下午5:32写道: > Hi, Pack Team > > Currently, Alpha compensation mechanism has some defects [1], I plan to > solve this problem step by step [2] > > Step1: Modify the OnConnected method to bidirectional streaming RPC > >This will be needed for the Step2 > > Step2: Custom compensation exception rules to distinguish between business > compensation exceptions and framework compensation exceptions for FSM. > >After calling the compensation method, Alpha needs to wait for > Omega to send a compensation result message. The message type is as > follows: > >Successful compensation: >Business compensation failure:business code throws an exception, > Do not switch Omega instance and retry(Retry rule is implemented in the > Step3) >Omega compensation failure: omega code throws an exception, > switch other Omega instance and retry(Retry rule is implemented in the > Step3) > > > Step3. Added retry and timeout rule to compensate for failures > >Exceeded the number of retries or timeout will change state to > suspended > > Any Suggestion? > > [1] https://github.com/apache/servicecomb-pack/issues/590 > [2] https://github.com/apache/servicecomb-pack/pull/607 > > Best regards, > Lei Zhang > > > Best regards, > Lei Zhang >
Re: [DISCUSSION][Website] Optimization
do not use markdown to write documents, use sphinx, a powerful doc framework, and as I go through jekyll framework, I think we can still use it. but need to refactor code of website Liubao (A) 于2019年11月20日周三 下午5:11写道: > Documents are http://servicecomb.apache.org/ & > https://docs.servicecomb.io/java-chassis/en_US/index.html > related source repo: https://github.com/apache/servicecomb-website & > https://github.com/apache/servicecomb-docs > > -邮件原件- > 发件人: Shuo Chen [mailto:sureche...@gmail.com] > 发送时间: 2019年11月20日 15:43 > 收件人: dev@servicecomb.apache.org > 主题: Re: [DISCUSSION][Website] Optimization > > Can you list the documents we have had and need to write in the future? > > Liubao (A) 于2019年11月20日周三 下午3:41写道: > > > How about using gitbook? Because markdown is easier to edit(the user > > manual using markdown and gitbook) . I find official website using > > Jekyll is quite difficult to update the contents, although the website > > is more beautiful than gitbook. > > > > -邮件原件- > > 发件人: victor chan [mailto:victorchan...@gmail.com] > > 发送时间: 2019年11月20日 15:33 > > 收件人: yhs0092 > > 主题: Re: [DISCUSSION][Website] Optimization > > > > Tools to transform your plain text into static websites, like jekyll, > > sphinx, etc. > > > > sen sun 于2019年11月20日周三 下午3:31写道: > > > > > What is "documentation framework"? > > > > > > sen sun 于2019年11月20日周三 下午3:26写道: > > > > > > > Agree with your suggestion. > > > > The official website has not been updated for a long time. It’s > > > > time to > > > do > > > > it. > > > > > > > > victor chan 于2019年11月20日周三 下午3:17写道: > > > > > > > >> I am doing website optimization, I have some ideas, I look > > > >> forward to > > > your > > > >> suggestions. > > > >> 1. I think we need to bring together the documents for our projects. > > > >> 2. We need to merge the "user manual" and the "getting started". > > > >> Now, > > > they > > > >> are displayed separately on the website, which will make the user > > > >> read discontinuous. > > > >> 3. We need to use the same documentation framework in each > > > >> project so > > > that > > > >> they can be easily integrated into the website. > > > >> > > > > > > > > > >
Improve the transaction compensation mechanism for FSM
Hi, Pack Team Currently, Alpha compensation mechanism has some defects [1], I plan to solve this problem step by step [2] Step1: Modify the OnConnected method to bidirectional streaming RPC This will be needed for the Step2 Step2: Custom compensation exception rules to distinguish between business compensation exceptions and framework compensation exceptions for FSM. After calling the compensation method, Alpha needs to wait for Omega to send a compensation result message. The message type is as follows: Successful compensation: Business compensation failure:business code throws an exception, Do not switch Omega instance and retry(Retry rule is implemented in the Step3) Omega compensation failure: omega code throws an exception, switch other Omega instance and retry(Retry rule is implemented in the Step3) Step3. Added retry and timeout rule to compensate for failures Exceeded the number of retries or timeout will change state to suspended Any Suggestion? [1] https://github.com/apache/servicecomb-pack/issues/590 [2] https://github.com/apache/servicecomb-pack/pull/607 Best regards, Lei Zhang Best regards, Lei Zhang
Improve the transaction compensation mechanism for FSM
Hi, Pack Team Currently, Alpha compensation mechanism has some defects [1], I plan to solve this problem step by step [2] Step1: Modify the OnConnected method to bidirectional streaming RPC This will be needed for the Step2 Step2: Custom compensation exception rules to distinguish between business compensation exceptions and framework compensation exceptions for FSM. After calling the compensation method, Alpha needs to wait for Omega to send a compensation result message. The message type is as follows: Successful compensation: Business compensation failure:business code throws an exception, Do not switch Omega instance and retry(Retry rule is implemented in the Step3) Omega compensation failure: omega code throws an exception, switch other Omega instance and retry(Retry rule is implemented in the Step3) Step3. Added retry and timeout rule to compensate for failures Exceeded the number of retries or timeout will change state to suspended Any Suggestion? [1] https://github.com/apache/servicecomb-pack/issues/590 [2] https://github.com/apache/servicecomb-pack/pull/607 Best regards, Lei Zhang