Hi,

I'm testing OrientDB 1.7-rc2-SNAPSHOT and i have a regression in the 
creation of the database schema.

I have extracted the following test :

@Test
public void testCreateIndexOnAbstractClass_1() {
  OrientGraphFactory factory = new OrientGraphFactory("memory:test1");

  OrientBaseGraph graph = factory.getNoTx();
  try {
    OSchema schema = graph.getRawGraph().getMetadata().getSchema();
    OClass clazz = schema.createAbstractClass("MyAbstractClass");

    clazz.createProperty("key", OType.STRING);
    clazz.createIndex("key", INDEX_TYPE.UNIQUE, "key");
  } finally {
    graph.shutdown();
  }
}
 
@Test
public void testCreateIndexOnAbstractClass_2_Ok_RC1() {
  OrientGraphFactory factory = new OrientGraphFactory("memory:test2");

  OrientBaseGraph graph = factory.getNoTx();
  try {
    OSchema schema = graph.getRawGraph().getMetadata().getSchema();
    OClass clazz = schema.createClass("MyAbstractClass");
    clazz.setAbstract(true);

    schema.createClass("MyClass");

    clazz.createProperty("key", OType.STRING);
    clazz.createIndex("key", INDEX_TYPE.UNIQUE, "key");
  } finally {
    graph.shutdown();
  }
}

In 1.7-rc1, the first test fail but the second one is OK (the real use case 
is more complicated but the simple test i have found is this one). 
Moreover, the index seems to work correctly.
In 1.7-rc2, both fail (the second test fail with "Cluster with id 11 
already belongs to class MyAbstractClass")

After reading the documentation, i don't know if creating an index on an 
abstract class is implemented or if it worked by a "strange" side-effect ?

Thanks - and I apologize for my bad english ;-)
Jérémie



-- 

--- 
You received this message because you are subscribed to the Google Groups 
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to