<!doctype html>
<!--
  Minimal Mistakes Jekyll Theme 4.4.1 by Michael Rose
  Copyright 2017 Michael Rose - mademistakes.com | @mmistakes
  Free for personal and commercial use under the MIT license
  https://github.com/mmistakes/minimal-mistakes/blob/master/LICENSE.txt
-->
<html lang="en" class="no-js">
  <head>
    <meta charset="utf-8">

<!-- begin SEO -->









<title>Release Notes - Apache ServiceComb</title>




<meta name="description" content="Release Notes">




<meta name="author" content="">

<meta property="og:locale" content="en">
<meta property="og:site_name" content="Apache ServiceComb">
<meta property="og:title" content="Release Notes">


  <link rel="canonical" href="https://github.com/pages/apache/incubator-servicecomb-website/release/saga-release-notes/">
  <meta property="og:url" content="https://github.com/pages/apache/incubator-servicecomb-website/release/saga-release-notes/">



  <meta property="og:description" content="Release Notes">



  <meta name="twitter:site" content="@ServiceComb">
  <meta name="twitter:title" content="Release Notes">
  <meta name="twitter:description" content="Release Notes">
  <meta name="twitter:url" content="">

  
    <meta name="twitter:card" content="summary">
    
  

  



  

  












  <script type="application/ld+json">
    {
      "@context" : "http://schema.org",
      "@type" : "Person",
      "name" : "Apache ServiceComb",
      "url" : "https://github.com/pages/apache/incubator-servicecomb-website",
      "sameAs" : null
    }
  </script>



  <meta name="google-site-verification" content="HvJjNd7vvJ-yjSTHlBiIWEYxp_Hrz-PYEY5Idz9LRcA" />




<!-- end SEO -->


<link href="/feed.xml" type="application/atom+xml" rel="alternate" title="Apache ServiceComb Feed">

<!-- http://t.co/dKP3o1e -->
<meta name="HandheldFriendly" content="True">
<meta name="MobileOptimized" content="320">
<meta name="viewport" content="width=device-width, initial-scale=1.0">

<script>
  document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js ';
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.7.1/clipboard.min.js"></script>
<script src="/assets/vendor/prism/prism.js"></script>

<script type="text/javascript" async
  src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-MML-AM_CHTML">
</script>

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">

<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
<!-- For all browsers -->
<link rel="stylesheet" href="/assets/css/main.css?v=1">
<link rel="stylesheet" href="/assets/vendor/prism/prism.css?v=1">

<!--[if lte IE 9]>
  <style>
    /* old IE unsupported flexbox fixes */
    .greedy-nav .site-title {
      padding-right: 3em;
    }
    .greedy-nav button {
      position: absolute;
      top: 0;
      right: 0;
      height: 100%;
    }
  </style>
<![endif]-->

<meta http-equiv="cleartype" content="on">

    <!-- start custom head snippets -->

<!-- insert favicons. use http://realfavicongenerator.net/ -->
<link href="https://fonts.loli.net/css?family=Roboto:400,500,700|Source+Code+Pro" rel="stylesheet">
<script src="/assets/js/custom.js"></script>
<!-- end custom head snippets -->

  </head>

  <body class="layout--single">

    <!--[if lt IE 9]>
<div class="notice--danger align-center" style="margin: 0;">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</div>
<![endif]-->
    <div class="masthead" onmouseleave="$('#childrenShow').css('display', 'none')">
  <div class="masthead__inner-wrap">
    <div class="masthead__menu">
      <nav id="site-nav" class="greedy-nav">
	      
          <a class="site-title active" href="/"><img src="https://www.apache.org/img/servicecomb.png"></a>
	      
        <ul class="visible-links">
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/">Home</a>
                
              </li>
            
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/developers/">Projects</a>
                
              </li>
            
          
            
          
          
            
            <li class="def-nav-li" onmouseenter="$('#childrenShow').css('display', 'block')">
              
              
              

              
                <a href="/docs/users/">Documentation</a>
              

              <ul id="childrenShow" class="def-children-show-en" onmouseleave="$('#childrenShow').css('display', 'none')">
                
                <li><a href="/docs/getting-started/" class="">Getting started</a></li>
                
                <li><a href="/docs/users/" class="">Docs</a></li>
                
                <li><a href="/slides/" class="">Video</a></li>
                
                <li><a href="/faqs/" class="">FAQ</a></li>
                
              </ul>
            </li>
          
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/developers/contributing">Community</a>
                
              </li>
            
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a href="/year-archive/">Blogs</a>
                
              </li>
            
          
            
          
          
            
              <li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
                
                  <a class="active" href="/release/">Downloads</a>
                
              </li>
            
          
        </ul>
        <button><div class="navicon"></div></button>
        <ul class="hidden-links hidden"></ul>
        <div class="nav-lang">
          
            
            <a href=/cn/release/saga-release-notes/>中文</a>
          
        </div>
      </nav>
    </div>
  </div>
</div>


    



<div id="main" role="main">
  
  <div class="sidebar sticky">
      
      <div class="back-to-home"><a href="/">Home</a> > Release Notes</div>
      
  
  
    
      
      
      
    
    
      

<nav class="nav__list">
  
  <input id="ac-toc" name="accordion-toc" type="checkbox" />
  <label for="ac-toc">Toggle Menu</label>
  <ul class="nav__items">
    
      <li>
        
          <span class="nav__sub-title">Service-Center</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/release/service-center-release-notes/" class="">Release Notes</a></li>
          
            
            

            
            

            <li><a href="/release/service-center-downloads/" class="">Downloads</a></li>
          
        </ul>
        
      </li>
    
      <li>
        
          <span class="nav__sub-title">Kie</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/release/kie-release-notes/" class="">Release Notes</a></li>
          
            
            

            
            

            <li><a href="/release/kie-downloads/" class="">Downloads</a></li>
          
        </ul>
        
      </li>
    
      <li>
        
          <span class="nav__sub-title">Java-Chassis</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/release/java-chassis-release-notes/" class="">Release Notes</a></li>
          
            
            

            
            

            <li><a href="/release/java-chassis-downloads/" class="">Downloads</a></li>
          
        </ul>
        
      </li>
    
      <li>
        
          <span class="nav__sub-title">Mesher</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/release/mesher-release-notes/" class="">Release Notes</a></li>
          
            
            

            
            

            <li><a href="/release/mesher-downloads/" class="">Downloads</a></li>
          
        </ul>
        
      </li>
    
      <li>
        
          <span class="nav__sub-title">Pack</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/release/pack-release-notes/" class="">Release Notes</a></li>
          
            
            

            
            

            <li><a href="/release/pack-downloads/" class="">Downloads</a></li>
          
        </ul>
        
      </li>
    
      <li>
        
          <span class="nav__sub-title">Toolkit</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/release/toolkit-release-notes/" class="">Release Notes</a></li>
          
            
            

            
            

            <li><a href="/release/toolkit-downloads/" class="">Downloads</a></li>
          
        </ul>
        
      </li>
    
      <li>
        
          <span class="nav__sub-title">Saga Actuator</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/release/saga-actuator-release-notes/" class="">Release Notes</a></li>
          
            
            

            
            

            <li><a href="/release/saga-actuator-downloads/" class="">Downloads</a></li>
          
        </ul>
        
      </li>
    
      <li>
        
          <span class="nav__sub-title">Saga</span>
        

        
        <ul>
          
            
            

            
            

            <li><a href="/release/saga-release-notes/" class="active">Release Notes</a></li>
          
            
            

            
            

            <li><a href="/release/saga-downloads/" class="">Downloads</a></li>
          
        </ul>
        
      </li>
    
  </ul>
</nav>

    
  
  </div>



  <article class="page" itemscope itemtype="http://schema.org/CreativeWork">
    <meta itemprop="headline" content="Release Notes">
    <meta itemprop="description" content="Release Notes">
    
    <meta itemprop="dateModified" content="March 28, 2018">

    <div class="page__inner-wrap">
      
        
          <header>
            <h1 class="page__title" itemprop="headline">Release Notes
</h1>
            
          </header>
        
      

      <section class="page__content" itemprop="text">
        <div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>    Release Notes - Apache ServiceComb - Version saga-0.2.1
</code></pre></div></div>

<h2>        Bug
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-741">SCB-741</a>] -         Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column &#39;payloads&#39; at row 1
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-821">SCB-821</a>] -         Add missing dependencyManagement for omega-transport-feign
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-963">SCB-963</a>] -         Saga transactional method can&#39;t work when compensation happens
</li>
</ul>

<h2>        New Feature
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-730">SCB-730</a>] -         Add Feign transport for supporting Spring Cloud
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-732">SCB-732</a>] -         Add the omega-transport-feign into distribution kit
</li>
</ul>

<h2>        Improvement
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-785">SCB-785</a>] -         Cannot get the GlobalTxId and LocalTxId in the compensation method
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-805">SCB-805</a>] -         If the node time of alpha and omega are not same, the transaction could be aborted
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-806">SCB-806</a>] -         Polish alpha-server logger 
</li>
</ul>

<h2>        Task
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-784">SCB-784</a>] -         SagaStart annotated method should abort the saga transaction once the exception is thrown
</li>
</ul>

<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>    Release Notes - Apache ServiceComb - Version saga-0.2.0
</code></pre></div></div>

<h2>        Bug
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-426">SCB-426</a>] -         The type of CompensationContext.context field should be thread-safe
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-480">SCB-480</a>] -         [pack] GrpcTxEvent miss the timeout when converting the TxEvent 
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-505">SCB-505</a>] -         The service should throw the exception when the saga transaction is timeout
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-566">SCB-566</a>] -         mysql.sql doesn&#39;t have the retried and retryMethod in the TxEvent table
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-584">SCB-584</a>] -         DubboConsumerFilterTest fails on linux
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-615">SCB-615</a>] -         fix typos in EventScanner
</li>
</ul>

<h2>        New Feature
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-224">SCB-224</a>] -         [pack] retry sub-transaction on failure
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-342">SCB-342</a>] -         [pack] secure gRPC transport
</li>
</ul>

<h2>        Improvement
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-245">SCB-245</a>] -         [pack] support to intercept dubbo&#39;s requests
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-246">SCB-246</a>] -         [pack] add demo to use pack with dubbo
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-410">SCB-410</a>] -         Upgrade to Spring Boot 2.0 in Saga
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-428">SCB-428</a>] -         Add omegaUniquaIdGenerator to the omega id generator
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-429">SCB-429</a>] -         Upgrade Spring Boot version to 1.5.10
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-433">SCB-433</a>] -         Update the maven docker plugin running setting
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-436">SCB-436</a>] -         Clean up the docker-compose file of booking demo
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-463">SCB-463</a>] -         Upgrade Spring Boot version to 2.0.1.Release
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-464">SCB-464</a>] -         Upgrade Java Chassis version to 1.0.0-m1
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-465">SCB-465</a>] -         Start the build metrics of Saga in travis
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-497">SCB-497</a>] -         Omega test log issue
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-545">SCB-545</a>] -         Update the length of field serviceName from varchar(16) to varchar(36)
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-547">SCB-547</a>] -         EventScaner abort if the findFirstAbortedGlobalTxByType has more than one result
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-568">SCB-568</a>] -         Provide web page for pack Demo
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-569">SCB-569</a>] -         Add document about SSL setup of Pack
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-571">SCB-571</a>] -         Decouple OmegaContext in the Application
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-573">SCB-573</a>] -         Split the docker-compose file for debugging easily
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-583">SCB-583</a>] -         Upgrade Spring Boot version to 1.5.13.Release and 2.0.2.Release
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-628">SCB-628</a>] -         correct the naming of demos
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-632">SCB-632</a>] -         reformat code according to the google code style
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-633">SCB-633</a>] -         Correct artifactId and module of saga-spring-cloud-demo
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-641">SCB-641</a>] -         Add the dubbo transport plugin into release kit
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-642">SCB-642</a>] -         Update the third party dependencies version in the License file
</li>
</ul>

<h2>        Wish
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-20">SCB-20</a>] -         JDK9 not supported when unit testing while doc showing JDK8+
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-153">SCB-153</a>] -         Upgrade to Spring Boot 2.0 
</li>
</ul>

<h2>        Task
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-390">SCB-390</a>] -         [pack] Investigating the Byteman and the Cucumber with running the recovery acceptance tests
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-437">SCB-437</a>] -         [Doc] Provide a FAQ list for Saga project
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-452">SCB-452</a>] -         Write java doc for some class
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-555">SCB-555</a>] -         Add Saga Dubbo demo to show how to manage the transactions with Dubbo
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-635">SCB-635</a>] -         Cut Saga-0.2.0 Release
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-647">SCB-647</a>] -         Update LICENSE/NOTICE for release
</li>
</ul>

<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>    Release Notes - Apache ServiceComb - Version saga-0.1.0
</code></pre></div></div>

<h2>        Sub-task
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-237">SCB-237</a>] -         [pack] acceptance tests of success scenarios
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-278">SCB-278</a>] -         [pack] acceptance test of transaction failure and successful compensation scenario
</li>
</ul>

<h2>        Bug
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-130">SCB-130</a>] -         Update the Git PR template
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-323">SCB-323</a>] -         inconsistent port in saga demo
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-404">SCB-404</a>] -         The base folder name is the same for source and binary release
</li>
</ul>

<h2>        New Feature
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-95">SCB-95</a>] -         [pack] able to link sub-transactions as a single global transaction
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-96">SCB-96</a>] -         [pack] intercept sub-transaction commits
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-97">SCB-97</a>] -         [pack] update alpha about transaction state
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-98">SCB-98</a>] -         [pack] send compensate context from alpha to omegas
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-99">SCB-99</a>] -         [pack] compensate on transaction failure
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-100">SCB-100</a>] -         [pack] async transaction support
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-101">SCB-101</a>] -         [pack] design doc
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-138">SCB-138</a>] -         [pack] omega&#39;s callback about transaction state
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-151">SCB-151</a>] -         [pack] pack usage demo
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-152">SCB-152</a>] -         [pack] update alpha on compensation completed
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-212">SCB-212</a>] -         [pack] sub-transaction timeout support
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-227">SCB-227</a>] -         [pack] stop sub transaction from running when global tx failed
</li>
</ul>

<h2>        Improvement
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-140">SCB-140</a>] -         [pack] do not compensate duplicate transaction events
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-141">SCB-141</a>] -         [pack] support multiple sub transaction in a single service
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-149">SCB-149</a>] -         [pack] service/instance aware omega callback
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-164">SCB-164</a>] -         [pack] alpha connection recovery on crash
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-167">SCB-167</a>] -         [pack] inform alpha about omega id on connection
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-168">SCB-168</a>] -         [pack] resend events on connection loss &amp; load balance
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-169">SCB-169</a>] -         [pack] omega get notified whether events are sent successfully or not
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-173">SCB-173</a>] -         [pack] mark start of saga
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-174">SCB-174</a>] -         [pack] object serialization/deserialization
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-183">SCB-183</a>] -         [pack] omega callback cleanup on connection loss
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-211">SCB-211</a>] -         [pack] exponential backoff resending event on cluster down or network down
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-213">SCB-213</a>] -         [pack] proper timing to send out SagaEndedEvent on asynchronous compensation
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-218">SCB-218</a>] -         [pack] stateless alpha
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-220">SCB-220</a>] -         [pack] duplicate abort event filter to avoid redundant compensation
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-228">SCB-228</a>] -         Update to replace the type of TxEvent with Enum
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-232">SCB-232</a>] -         EventType should be same between omega and alpha
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-233">SCB-233</a>] -         Don&#39;t deploy if building with the PR
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-234">SCB-234</a>] -         [pack] fail fast if alpha cluster down
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-238">SCB-238</a>] -         Remove third-party dependencies which violates apache licensing policy
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-239">SCB-239</a>] -         [pack] omega recovery
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-243">SCB-243</a>] -         [pack] support to intercept java chassis
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-270">SCB-270</a>] -         [pack] in order compensation
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-305">SCB-305</a>] -         [pack] postIntercept should throw the exception when the timeout happens
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-330">SCB-330</a>] -         [pack] update documents of saga pack
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-395">SCB-395</a>] -         Add How to build into README file
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-400">SCB-400</a>] -         Add guides to run demo without docker compose 
</li>
</ul>

<h2>        Task
</h2>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-104">SCB-104</a>] -         simplify transport rest template implementation
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-122">SCB-122</a>] -         Add incubating note to website
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-123">SCB-123</a>] -         Add DISLAIMER to the ServiceComb git repo
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-154">SCB-154</a>] -         Update the package  org.apache.servicecomb
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-157">SCB-157</a>] -         Update the release setting of pom
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-193">SCB-193</a>] -         Generated the Licenses,Notice and DISCLAIMER files when building the artifact
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-231">SCB-231</a>] -         Only publish the snapshot in master branch
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-249">SCB-249</a>] -         [pack] replace hibernate with other ORM tech to avoid license issue
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-260">SCB-260</a>] -         Prepare LICENSE/NOTICE files for releasing
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-344">SCB-344</a>] -         [pack] use mysql as alpha&#39;s backend database
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-346">SCB-346</a>] -         Create the distribution kit for Saga
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-363">SCB-363</a>] -         Remove legacy code from Saga
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-378">SCB-378</a>] -         Add readme for samples so that users can run the samples code by just reading the readme doc
</li>
<li>[<a href="https://issues.apache.org/jira/browse/SCB-380">SCB-380</a>] -         Add incubating to file name the release kit
</li>
</ul>

        
      </section>

      <footer class="page__meta">
        
        


        
      </footer>

      

      

    </div>

    
  </article>

  
  
</div>


    <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
    <div align="center" style="margin: 0 0;">
    <ins class="adsbygoogle"
         style="display:block; border-bottom: initial;"
         data-ad-client="ca-pub-7328585512091257"
         data-ad-slot="3049671934"
         data-ad-format="auto"></ins>
    </div>

    <div class="page__footer">
      <footer>
        <!-- start custom footer snippets -->

<!-- end custom footer snippets -->

        <div class="container">
  <div class="row justify-content-md-center">
    
    <div class="col">
      <ul>
        <p class="header">Resources</p>
        <li><a href="/docs/getting-started/">Getting started</a></li>
        <li><a href="/docs/users/">User Guide</a></li>
        <li><a href="/slides/">Slides</a></li>
        <li><a href="/users/faq/">Common Questions</a></li>
      </ul>
    </div>
    <div class="col">
      <ul>
        <p class="header">ASF</p>
        <li><a href="http://www.apache.org">Foundation</a></li>
        <li><a href="http://www.apache.org/licenses/">License</a></li>
        <li><a href="http://www.apache.org/events/current-event">Events</a></li>
        <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
        <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
      </ul>
    </div>
    <div class="col">
      <ul>
        <p class="header">Contribute</p>
        <li><a href="http://issues.apache.org/jira/browse/SCB">Report a Doc Issue</a></li>
        <li><a href="https://github.com/apache/servicecomb-website/edit/master/_release/saga_releaseNotes.md">Edit This Page on Github</a></li>
        <li><a href="/developers/submit-codes/">Code Submit Guide</a></li>
        <li><a href="/security">Security</a></li>
      </ul>
    </div>
    <div class="col">
      <ul class="social-icons">
        <p class="header">Community</p>
        <li>
            <a href="mailto:dev-subscribe@servicecomb.incubator.apache.org" rel="nofollow"><span class="mail">Mailing List</span></a>
        </li>
        <li>
            <a href="https://github.com/apache?q=ServiceComb" target="_blank"><span class="github">Github</span></a>
        </li>
        <li>
            <a href="https://twitter.com/ServiceComb" target="_blank"><span class="twitter">Twitter</span></a>
        </li>
        <li>
            <a href="/feed.xml" target="_blank"><span class="rss">Feed</span></a>
        </li>
      </ul>
    </div>
  </div>
</div>
<div class="page__footer-bottom">
  <div>&copy; 2020 Apache ServiceComb. Powered by <a href="http://jekyllrb.com" rel="nofollow">Jekyll</a> &amp; <a href="https://mademistakes.com/work/minimal-mistakes-jekyll-theme/" rel="nofollow">Minimal Mistakes</a>.</div>
  <div>All other marks mentioned may be trademarks or registered trademarks of their respective owners.</div>
</div>

      </footer>
    </div>

    <script src="/assets/js/main.min.js"></script>




  <script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-101622733-1', 'auto');
  ga('send', 'pageview');
</script>







  </body>
</html>
