title: How @Transactional timeout works with multiple dataSource
body: <p>So here is the example, I have method where I defined timeout=10 seconds for DS1. now this method is also calling another transactional method for DS2. Will time taken by DS2 response also considered here for timeout?</p>
  <pre><code>MainService.java
  
  @Transactional(value = &quot;transactionManagerDS1&quot;, timeout = 10)
  public void tranTest(){
      try {
          DS1service.sleepDS1(1);
          DS2service.sleepDS2(10);
          DS1service.sleepDS1(1);
      }catch (RuntimeException e){
          logger.error(e.getMessage());
      }
  } 
  </code></pre>
  <p>Now these DS1service and DS2service do select sleep for respective seconds</p>
  <pre><code>@Transactional(value = &quot;transactionManagerDS1&quot;)
  public void sleepDS1(int sec) {
      SQLQuery query = getCurrentSession().createSQLQuery(&quot;select pg_sleep(&quot; + sec + &quot;)&quot;);
      System.out.println(query.uniqueResult());
  }
  
  @Transactional(value = &quot;transactionManagerDS2&quot;)
  public void sleepDS2(int sec) {
      SQLQuery query = getCurrentSession().createSQLQuery(&quot;select pg_sleep(&quot; + sec + &quot;)&quot;);
      System.out.println(query.uniqueResult());
  }
  </code></pre>
  <p>here time taken by DS2 query also counted and timeoutException were thrown.Is it correct behaviour?</p>