title: Postgres GRANT ROLE of db owner to other another user not doing what expected. What am I missing?
body: <p>I am a bit baffled here. Using pg 9.6</p>
  
  <pre><code>CREATE USER user1;
  CREATE DATABASE mydb with OWNER user1;
  CREATE TABLE x ...;
  CREATE USER user2; 
  GRANT user1 to user2;
  </code></pre>
  
  <p>Login as <code>user2</code>.</p>
  
  <pre><code>INSERT INTO TABLE x ...;
  CREATE TABLE z ...;
  </code></pre>
  
  <p>All is good up to here.</p>
  
  <p>Login as <code>user1</code> (DB owner).</p>
  
  <pre><code>SELECT FROM z; -- fails; table is owned by user2
  </code></pre>
  
  <p>Shouldn't the db owner have access to ALL objects?</p>
  
  <p>Also, if I:</p>
  
  <pre><code>CREATE USER user3;
  GRANT user1 /* db owner */ TO user3;
  </code></pre>
  
  <p>I cannot access objects created by <code>user2</code> even though <code>user3</code> has role granted from DB owner.</p>