Hi Hartmut
I see a backslash before a } in your request
ret= DB.execute { 'MATCH {class: Industry, as: Industries\} <-- {} <-- {
as: Subcategories } RETURN Industries, Subcategories' }
Could that be the problem?
About the NPE, I'm checking it now
Thanks
Luigi
2016-06-29 17:20 GMT+02:00 hartmut bischoff <[email protected]>:
> Hi,
> I am trying to implement the match-query-syntax either in the java-api
> (through jruby) or via REST.
>
> This works in Studio:
>
>> MATCH {class: Industry, as: Industries} <-- {} <-- { as: Subcategories }
>> RETURN Industries, Subcategories
>>
>
>
>
> "result": [
>
> {
>
> "@type": "d",
>
> "@version": 0,
>
> "Industries": "#21:3",
>
> "Subcategories": "#28:46",
>
> "@fieldTypes": "Industries=x,Subcategories=x"
>
> },
>
> {
>
> "@type": "d",
>
> "@version": 0,
>
> "Industries": "#23:1",
>
> "Subcategories": "#26:2",
>
> "@fieldTypes": "Industries=x,Subcategories=x"
>
> }, (...)
>
>
> However "explain" gives a java.lang.NullPointerException.#
>
> Now my problem.
>
> When submitting the query via REST(batch) it is parsed via json
> and ends up with a Timeout-Error (im my case
>
> #
>>> /home/topo/.rvm/gems/ruby-2.3.1/gems/rest-client-1.8.0/lib/restclient/request.rb:427:in
>>> `rescue in transmit
>>
>> #
>>> /home/topo/.rvm/gems/ruby-2.3.1/gems/rest-client-1.8.0/lib/restclient/request.rb:350:in
>>> `transmit'
>>
>> #
>>> /home/topo/.rvm/gems/ruby-2.3.1/gems/rest-client-1.8.0/lib/restclient/request.rb:176:in
>>> `execute'
>>
>> #
>>> /home/topo/.rvm/gems/ruby-2.3.1/gems/rest-client-1.8.0/lib/restclient/request.rb:41:in
>>> `execute'
>>
>> #
>>> /home/topo/.rvm/gems/ruby-2.3.1/gems/rest-client-1.8.0/lib/restclient/resource.rb:67:in
>>> `post'
>>
>> # /home/topo/activeorient/lib/rest_operations.rb:63:in `execute'
>>
>> # /home/topo/activeorient/lib/model_class.rb:353:in `query_database'
>>
>> # /home/topo/activeorient/lib/model_class.rb:316:in `match'
>>
>> # ./spec/usecase/contracts_spec.rb:87:in `block (3 levels) in <top
>>> (required)>'
>>
>> # ------------------
>>
>> # --- Caused by: ---
>>
>> # Net::ReadTimeout:
>>
>> # Net::ReadTimeout
>>
>> #
>>> /home/topo/.rvm/gems/ruby-2.3.1/gems/rest-client-1.8.0/lib/restclient/request.rb:270:in
>>> `net_http_do_requestt
>>
>>
> when transmitting via the java api using the command method,
> jruby-head :012 > ret= DB.execute { 'MATCH {class: Industry, as:
> Industries\} <-- {} <-- { as: Subcategories } RETURN Industries,
> Subcategories' }
> Java::ComOrientechnologiesOrientEnterpriseChannelBinary::OResponseProcessingException:
> Exception during response processing
> from
> com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.throwSerializedException(com/orientechnologies/orient/client/binary/OChannelBinaryAsynchClient.java:447)
> from
> com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.handleStatus(com/orientechnologies/orient/client/binary/OChannelBinaryAsynchClient.java:382)
> from
> com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(com/orientechnologies/orient/client/binary/OChannelBinaryAsynchClient.java:264)
> from
> com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(com/orientechnologies/orient/client/binary/OChannelBinaryAsynchClient.java:152)
> from
> com.orientechnologies.orient.client.remote.OStorageRemote.beginResponse(com/orientechnologies/orient/client/remote/OStorageRemote.java:2117)
> from
> com.orientechnologies.orient.client.remote.OStorageRemote.beginResponse(com/orientechnologies/orient/client/remote/OStorageRemote.java:2112)
> from
> com.orientechnologies.orient.client.remote.OStorageRemote$19.execute(com/orientechnologies/orient/client/remote/OStorageRemote.java:1154)
> from
> com.orientechnologies.orient.client.remote.OStorageRemote.networkOperation(com/orientechnologies/orient/client/remote/OStorageRemote.java:168)
> from
> com.orientechnologies.orient.client.remote.OStorageRemote.command(com/orientechnologies/orient/client/remote/OStorageRemote.java:1130)
> from
> com.orientechnologies.orient.core.command.OCommandRequestTextAbstract.execute(com/orientechnologies/orient/core/command/OCommandRequestTextAbstract.java:69)
> from java.lang.reflect.Method.invoke(java/lang/reflect/Method.java:498)
> from
> org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(org/jruby/javasupport/JavaMethod.java:423)
> from
> org.jruby.javasupport.JavaMethod.invokeDirect(org/jruby/javasupport/JavaMethod.java:290)
> from RUBY.run_command(/home/topo/orientdb-jruby/lib/orientdb/database.rb:6)
> from RUBY.block in execute(/home/topo/activeorient/lib/java-api.rb:306)
>
> As there is a SerializedException-Error, I suspect, this is simply a
> matter of escaping some characters.
> How is this done?
>
> Thanks
>
> hartmut
>
>
> --
>
> ---
> 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.
>
--
---
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.