I'm trying to use different classes to partition my graph. e.g.:
Say I have a FRUITBOWL graph with Apples, Bananas, classes that extend V.

That's fine, I can bulk load an initial set of Apples or Bananas but my 
issue is this.

My ETL process needs to load new Apples every day. Since the process takes 
several hours I want to load the new apples into my production graph as 
NewApples first,
then once the ETL process is finished, delete the Apples and rename 
NewApples to Apples.

Before trying to implement this in Java, I tried to simulate the process 
from the console.

Loading initial data works
        CREATE DATABASE remote:localhost/FRUIT admin admin plocal
        CREATE CLASS Apples EXTENDS V;
        INSERT INTO apples (name,version) VALUES ("apple",0)
        orientdb {FRUIT}> select * from Apples;
        ----+-----+-----+-------
        #   |@RID |name |version
        ----+-----+-----+-------
        0   |#11:0|apple|0
        ----+-----+-----+-------

The first iteration also works without errors (e.g.: version=1)
        CONNECT remote:localhost/FRUIT admin admin
        CREATE CLASS NewApples extends Apples
        INSERT INTO newapples (name,version) VALUES("apple",1)
        ALTER CLASS Apples removecluster apples
        ALTER CLASS NewApples removecluster newapples
        DROP CLASS NewApples
        ALTER CLASS Apples addcluster newapples
        DROP CLUSTER apples
        ALTER CLUSTER newapples name apples

        orientdb {FRUIT}> select * from Apples
        ----+-----+-----+-------
        #   |@RID |name |version
        ----+-----+-----+-------
        0   |#12:0|apple|1
        ----+-----+-----+-------

On the second iteration this is what happens:
        CONNECT remote:localhost/FRUIT admin admin
        CREATE CLASS NewApples extends Apples
        INSERT INTO newapples (name,version) VALUES("apple",2)
        ALTER CLASS Apples removecluster apples
        ALTER CLASS NewApples removecluster newapples
        DROP CLASS NewApples
        ALTER CLASS Apples addcluster newapples

        DROP CLUSTER apples
        ALTER CLUSTER newapples name apples
        orientdb {FRUIT}> info class Apples

        Class................: Apples
        Super class..........: V
        Default cluster......: apples (id=11)
        Supported cluster ids: [11]
        orientdb {FRUIT}> select * from Apples

        Error: 
com.orientechnologies.orient.enterprise.channel.binary.OResponseProcessingException:
 
Exception during response processing.
        Error: 
com.orientechnologies.orient.core.exception.OCommandExecutionException: 
Error on execution of command: sql.select * from Apples
        Error: java.lang.NullPointerException

In trying this numerous times, I noticed that after running the 
    DROP CLUSTER apples 
command that both the newapples and apples clusters are getting deleted. 
so shouldn't the 
    ALTER CLASS Apples addcluster newapples
command be complaining that the newapples cluster doesnt exist?


Alan

-- 

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