title: Neo4j indices slow when querying across 2 labels
body: <p>I've got a graph where each node has label either A or B, and an index on the id property for each label:</p>
  
  <pre><code>CREATE INDEX ON :A(id);
  CREATE INDEX ON :B(id);
  </code></pre>
  
  <p>In this graph, I want to find the node(s) with id "42", but I don't know a-priori the label. To do this I am executing the following query:</p>
  
  <pre><code>MATCH (n {id:"42"}) WHERE (n:A OR n:B) RETURN n;
  </code></pre>
  
  <p>But this query takes 6 seconds to complete. However, doing either of:</p>
  
  <pre><code>MATCH (n:A {id:"42"}) RETURN n;
  MATCH (n:B {id:"42"}) RETURN n;
  </code></pre>
  
  <p>Takes only ~10ms. </p>
  
  <p>Am I not formulating my query correctly? What is the right way to formulate it so that it takes advantage of the installed indices?</p>