UnsupportedOperationException In Match

Hi,

  • Question
    I search with match ,but I got the message called java.lang.UnsupportedOperationException

  • Version

    • orientdb-tp3-3.1.0
  • BackGround

I have two graph: the left one called Concept Graph,the right one called Instance Graph. And I search Instance datas by the Concept Graph. And the graph likes this:

  • v_yidongshijian_32 : instance datas of this is the red nodes on the right graph

  • v_renyuan_38 : instance datas of this is the yellow nodes on the right graph

  • v_gusuoshijian_32 : instance datas of this is the pink nodes on the right graph

  • SQL

 MATCH {class: v_yidongshijian_32, as:v_yidongshijian_32,where:(label  = 'v_yidongshijian_32')}.bothE("e_canyuzhe_50"){as:e_canyuzhe_501}.bothV(){as:v_renyuan_38,where:(label = 'v_renyuan_38')},
 {as:v_gusuoshijian_32,where:(label = 'v_gusuoshijian_32')}.bothE("e_canyuzhe_50"){as:e_canyuzhe_502}.bothV(){as:v_renyuan_38}
 return distinct e_canyuzhe_501,e_canyuzhe_502
  • Result

I got the message called java.lang.UnsupportedOperationException,but i changed the SQL,like this :

  • Changed SQL
 MATCH {class: v_yidongshijian_32, as:v_yidongshijian_32,where:(label  = 'v_yidongshijian_32')}.bothE("e_canyuzhe_50"){as:e_canyuzhe_501}.bothV(){as:v_renyuan_38,where:(label = 'v_renyuan_38')},
{as:v_renyuan_38}.bothE("e_canyuzhe_50"){as:e_canyuzhe_502}.bothV(){as:v_gusuoshijian_32,where:(label = 'v_gusuoshijian_32')}
 return distinct e_canyuzhe_501,e_canyuzhe_502

In this sql, I exchanged {as:v_renyuan_38} and {as:v_gusuoshijian_32,where:(label = 'v_gusuoshijian_32')} ,they are in the second sql, I got the right result with the changed sql.

  • And sometimes ,i will get message like Undefiend alias or Circular dependency, but not this SQL`
  • SomeBody help !

Thanks

52HZ

Hi @52HZ

I think this issue should be already fixed.
Could you please report the exact version you are using?

Thanks

Luigi

Hi, @luigidellaquila

what i used like this:

  • Maven
       <dependency>
            <groupId>com.orientechnologies</groupId>
            <artifactId>orientdb-jdbc</artifactId>
            <version>3.0.27</version>
        </dependency>

        <dependency>
                <groupId>com.orientechnologies</groupId>
                <artifactId>orientdb-gremlin</artifactId>
                <version>3.0.18</version>
        </dependency>

        <dependency>
                <groupId>org.apache.tinkerpop</groupId>
                <artifactId>tinkergraph-gremlin</artifactId>
                <version>3.4.0</version>
         </dependency>

Hi @52HZ

Please try to use the same version for all the OrientDB artifacts (I’d suggest 3.0.29, that is latest stable).
BTW, are you running embedded or on a stand-alone OrientDB server?

Thanks

Luigi

Hi @luigidellaquila

okay,I will try it. and I run it on a stand-alnoe server.

Ok, so what matters more is the server version, please make sure it’s latest stable (ie. 3.0.29 as of now)

Thanks

Luigi

Hi @luigidellaquila
okay, i will do it .

Thanks

52HZ

Hi @luigidellaquila

I did like what you said,that`s works for me . and now the dependencies like this:

  • Maven
       <dependency>
            <groupId>com.orientechnologies</groupId>
            <artifactId>orientdb-jdbc</artifactId>
            <version>3.0.29</version>
        </dependency>

        <dependency>
                <groupId>com.orientechnologies</groupId>
                <artifactId>orientdb-gremlin</artifactId>
                <version>3.0.29</version>
        </dependency>

        <dependency>
                <groupId>org.apache.tinkerpop</groupId>
                <artifactId>tinkergraph-gremlin</artifactId>
                <version>3.4.0</version>
        </dependency>
  • Server
         orientdb-tp3-3.0.29

Thanks

52HZ