Here it is: #2350
Thanks Andrey.

On Friday, May 16, 2014 5:41:36 PM UTC-4, Andrey Lomakin wrote:
>
> Hi,
> If have issue could you create it in bug tracker ?
>
>
> On Fri, May 16, 2014 at 10:32 PM, Odysseas <[email protected]<javascript:>
> > wrote:
>
>> Here is a test case below that reproduces the problem.
>>
>> Before the index is created, the list of classes is:
>> Class: ORestricted
>> Class: personTest
>> Class: ORIDs
>> Class: OSchedule
>> Class: OTriggered
>> Class: ORole
>> Class: E
>> Class: OUser
>> Class: OFunction
>> Class: OIdentity
>> Class: V
>>
>> and right after that when we create the index the exception is:
>>
>> com.orientechnologies.orient.core.exception.OCommandExecutionException: 
>> Class PERSONTEST not found
>>  at 
>> com.orientechnologies.orient.core.sql.OCommandExecutorSQLCreateIndex.parse(OCommandExecutorSQLCreateIndex.java:101)
>> at 
>> com.orientechnologies.orient.core.sql.OCommandExecutorSQLCreateIndex.parse(OCommandExecutorSQLCreateIndex.java:47)
>>  at 
>> com.orientechnologies.orient.core.sql.OCommandExecutorSQLDelegate.parse(OCommandExecutorSQLDelegate.java:52)
>> at 
>> com.orientechnologies.orient.core.sql.OCommandExecutorSQLDelegate.parse(OCommandExecutorSQLDelegate.java:33)
>>  at 
>> com.orientechnologies.orient.core.storage.OStorageEmbedded.command(OStorageEmbedded.java:83)
>> at 
>> com.orientechnologies.orient.core.command.OCommandRequestTextAbstract.execute(OCommandRequestTextAbstract.java:59)
>>  at 
>> com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.command(ONetworkProtocolBinary.java:1100)
>> at 
>> com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.executeRequest(ONetworkProtocolBinary.java:350)
>>  at 
>> com.orientechnologies.orient.server.network.protocol.binary.OBinaryNetworkProtocolAbstract.execute(OBinaryNetworkProtocolAbstract.java:160)
>> at 
>> com.orientechnologies.common.thread.OSoftThread.run(OSoftThread.java:45)
>>
>> public class TestOrientDbCreateClassAndIndex extends TestCase
>> {
>>     private final static String DB_URL = "remote://localhost/person-db";
>>     private Logger log = Logger.getLogger(getClass());
>>
>>     public void testCreateClassAndIndex() {
>>         OrientGraphNoTx db = new OrientGraphNoTx(DB_URL);
>>         
>>         int[] clusterIds = null;
>>         String className = "personTest";
>>         OClass vertexClass = findGraphClass(db, "V");
>>         final OClassImpl sourceClass = (OClassImpl) ((OSchemaProxy) 
>> db.getRawGraph().getMetadata().getSchema())
>>                 .createClassInternal(className, vertexClass, clusterIds);
>>         log.info("Class " + className + " has been assigned cluster " + 
>> sourceClass.getDefaultClusterId());
>>         sourceClass.saveInternal();
>>
>>         String[] attributes = { "givenName", "familyName", "middleName" };
>>         for (String fieldName : attributes) {
>>             OType type = OType.STRING;
>>             OPropertyImpl prop = (OPropertyImpl) 
>> sourceClass.getProperty(fieldName);
>>             if (prop != null) {
>>                 log.warn("Property '" + className + "." + fieldName + "' 
>> already exists.");
>>                 continue;
>>             }
>>             prop = sourceClass.addPropertyInternal(fieldName, type, null, 
>> null);
>>             log.debug("Adding field " + fieldName + " to class " + 
>> className);
>>             sourceClass.saveInternal();
>>         }
>>         
>>         db.getRawGraph().getStorage().reload();
>>         db.getRawGraph().getMetadata().getSchema().reload();
>>         db.getRawGraph().getMetadata().getIndexManager().reload();
>>         
>>         Collection<OClass> classes = 
>> db.getRawGraph().getMetadata().getSchema().getClasses();
>>         StringBuffer sb = new StringBuffer();
>>         for (OClass clazz : classes) {
>>             sb.append("Class: " + clazz.getName() + "\n");
>>         }
>>         System.out.println("Before creating the indexes the list of 
>> classes is: " + sb.toString());
>>         
>>         String sql = "CREATE INDEX idx-person-familyName ON personTest 
>> (familyName)  NOTUNIQUE";
>>         log.debug("Creating index: " + sql);
>>         db.command(new OCommandSQL(sql.toString())).execute(new Object[] 
>> {});
>>     }
>>
>>     private OClass findGraphClass(OrientBaseGraph db, String className) {
>>         Collection<OClass> classes = 
>> db.getRawGraph().getMetadata().getSchema().getClasses();
>>         log.debug("The repository currently has " + classes.size() + " 
>> classes defined:");
>>         for (OClass oclass : classes) {
>>             if (oclass.getName().equalsIgnoreCase(className)) {
>>                 return oclass;
>>             }
>>         }
>>         return null;
>>     }
>>
>> -- 
>>
>> --- 
>> 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] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>
>
> -- 
> Best regards,
> Andrey Lomakin.
>
> Orient Technologies
> the Company behind OrientDB
>
>  

-- 

--- 
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