title: Oracle user does not get privilege from role
body: <p>I am running an Oracle XE (11.2.0.2.0). I have one user U1 creating / owning the tables and another user U2 using them. When U1 grants privileges to U2, everything works.</p>
  
  <p>Now U1 has created a role TESTROLE, granted it some privileges, and granted U2 the TESTROLE. U2 can see TESTROLE in USER_ROLE_PRIVS but does not inherit its privileges: It cannot access the tables, and the privileges are not listed in USER_TAB_PRIVS.</p>
  
  <p>Here is what I did (as U1):</p>
  
  <pre><code>CREATE TABLE TABLE1 ( FIELD1 VARCHAR2(20) );
  CREATE ROLE TESTROLE NOT IDENTIFIED;
  GRANT SELECT ON TABLE1 TO TESTROLE;
  GRANT TESTROLE TO U2;
  ALTER USER U2 DEFAULT ROLE ALL;
  </code></pre>
  
  <p>(Yes, I gave U1 the ALTER USER privilege for this test.)</p>
  
  <p>Now when U2 makes a <code>SELECT * FROM U1.TABLE1</code> it gets ORA-00942 (table or view does not exist). When I grant the SELECT privilege directly to U2, access works. When U2 calls <code>SELECT * FROM USER_ROLE_PRIVS</code> the TESTROLE is there, with DEFAULT_ROLE=YES.</p>
  
  <p>At first I thought that maybe XE does not support roles but I find no such restriction. What am I missing? Any hint appreciated.</p>