title: Postgres dblink stored procedure call with specifying transaction level
body: <p>I want to use dblink in PL/pgSQL stored procedure in such way:</p>
  
  <pre><code>PERFORM dblink_exec('myconn', 'BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE');
  PERFORM dblink_exec('myconn', 'SELECT another_stored_procedure()');
  PERFORM dblink_exec('myconn', 'COMMIT');
  </code></pre>
  
  <p>but I got an error in runtime:</p>
  
  <pre><code>ERROR:  statement returning results not allowed
  CONTEXT:  SQL statement "SELECT dblink_exec('myconn', 'select another_stored_procedure()')"
  </code></pre>
  
  <p>so execution fails, although I tried to get the desired result in different ways.</p>
  
  <p><strong>UPDATE 1:</strong></p>
  
  <p>I know that stored procedures in postgresql are transactional.
  I'm using dblink for the autonomous transactions functionality to use it on the same server.</p>
  
  <p>The matter is that the default level of transactions on my server 
  is "read commited" but sometimes I need to start transactions with another level, e.g. "serializable".</p>
  
  <p>So I need to execute stored procedure in autonomous transaction with explicit transaction level specifying.</p>
  
  <p>And as far as I know dblink allows that, but I failed to find any useful info about dblink or dblink_exec functions which are suitable for my situation.</p>