Skip to content

IS NULL doesn't use indexes #9016

@Y0ba

Description

@Y0ba

OrientDB Version: both 3.0.23 and 3.1-M3

Java Version: Any

OS: Any

Steps to reproduce

Testcase:

OrientDB oDb = new OrientDB("memory:test", OrientDBConfig.defaultConfig());
oDb.create("test", ODatabaseType.MEMORY);
ODatabaseSession session = oDb.open("test","admin","admin");

OClass c = session.createClass("myClass");
c.createProperty("p", OType.INTEGER);
c.createIndex("pIndex", OClass.INDEX_TYPE.UNIQUE, "p");

// Doesn't use index
System.out.println("IS NULL: ");
System.out.println(session.query("SELECT FROM myClass WHERE p IS NULL").getExecutionPlan().get().prettyPrint(0, 0));

// Uses index
System.out.println("\n= ?: ");
System.out.println(session.query("SELECT FROM myClass WHERE p = ?", (Object) null).getExecutionPlan().get().prettyPrint(0, 0));

Metadata

Metadata

Labels

No labels
No labels

Type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions