[orientdb] Dijkstra with dynamic weight

2015-02-06 Thread Georg Göttlich
Hello everyone.

I have another newbie question regarding the graph model. Is it somehow 
possible to have the result of a custom function being the weight parameter 
in dijkstra()?

Cheers
Georg

-- 

--- 
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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[orientdb] phpOrient and DATE

2015-02-06 Thread Dlpnet
Hello,

I have a vertex with 2 DATE properties. When I use phporient to get the
data from the vertex the resulting dates are not correct. If I do the same
request using Studio the answer is correct.
Is there anyway to convert the result from phporient to a proper value ?
I tried converting from a DateTime object but the answer is not correct:

$start_time = date_format($start_time, Y-m-d\Th:m:s);
-- 47003-02-05T12:02:00


SELECT start_time, end_time FROM S WHERE @rid=#14:0
Array
(
[0] = PhpOrient\Protocols\Binary\Data\Record Object
(
[rid:protected] = PhpOrient\Protocols\Binary\Data\ID Object
(
[cluster] = -2
[position] = 1
)

[oClass:protected] =
[version:protected] = 0
[oData:protected] = Array
(
[start_time] = DateTime Object
(
[date] = 47003-02-05 00:00:00.00
[timezone_type] = 1
[timezone] = +00:00
)

[end_time] = DateTime Object
(
[date] = 47066-01-25 00:00:00.00
[timezone_type] = 1
[timezone] = +00:00
)

)

)

)

whereas the correct dates are (using studio):
PROPERTIES
start_time
end_time
2015-01-13 00:00:002015-02-05 00:00:00
thanks

-- 

--- 
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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [orientdb] UnsupportedOperationException When Creating in Memory Distributed Database

2015-02-06 Thread Luigi Dell'Aquila
Hi Andy,

This is a known issue, you can find all the details here:

https://github.com/orientechnologies/orientdb/issues/3203

Luigi


2015-02-05 16:58 GMT+01:00 dakota.pric...@gmail.com:


 Hello,
   I am unable to create an in MEMORY distributed database due to the
 following exception:
 java.lang.UnsupportedOperationException
 at
 com.orientechnologies.orient.core.storage.impl.memory.ODirectMemoryStorage.backup(ODirectMemoryStorage.java:97)
 at
 com.orientechnologies.orient.server.distributed.ODistributedStorage.backup(ODistributedStorage.java:1163)
 at
 com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.backup(ODatabaseDocumentTx.java:2489)
 at
 com.orientechnologies.orient.server.distributed.task.ODeployDatabaseTask.execute(ODeployDatabaseTask.java:129)
 at
 com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.executeOnLocalNode(OHazelcastPlugin.java:735)
 at
 com.orientechnologies.orient.server.hazelcast.ODistributedWorker.onMessage(ODistributedWorker.java:300)
 at
 com.orientechnologies.orient.server.hazelcast.ODistributedWorker.run(ODistributedWorker.java:121)

 I use the free community 2.0.1 version of Orient DB running two remote
 nodes interfacing via tcp-ip enable Hazelcast config since multicat does
 not work in that version.

 Please advise if it is a limitation of the community version,
 missconfiguration or a bug in 2.0.1 release.

 Andy

 --

 ---
 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 orient-database+unsubscr...@googlegroups.com.
 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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[orientdb] Re: sql update with query - will eventually hang

2015-02-06 Thread syshex
Hi Alexander

Do you need to Expand ?  

select expand(in('Manages'))  from asset where guid = 
'19da4856-57c0-4b39-8f4b-53fc47f86dcf') 

Returns a result set of the complete records, which you don't seem to need, 
just the rid. 

select in('Manages') from asset where guid = 
'19da4856-57c0-4b39-8f4b-53fc47f86dcf')

return a  List   (like   [rid1,rid1,rid3, etc] )  which should be 
enough for your purpose, no?

On Friday, February 6, 2015 at 2:11:46 PM UTC, alexander anguiano wrote:

 orientdb version 2.0.1
 java 7
 windows and linux

 i'm making alot of these calls and eventually they begin to hang

 update Agent set lastCommunicationTime=date() where @rid in 
 (select @rid from (select expand(in('Manages')) from
  asset where guid = '19da4856-57c0-4b39-8f4b-53fc47f86dcf'))


 Also is there a better way to make this update?



-- 

--- 
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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[orientdb] sql update with query - will eventually hang

2015-02-06 Thread alexander anguiano
orientdb version 2.0.1
java 7
windows and linux

i'm making alot of these calls and eventually they begin to hang

update Agent set lastCommunicationTime=date() where @rid in (select 
@rid from (select expand(in('Manages')) from
 asset where guid = '19da4856-57c0-4b39-8f4b-53fc47f86dcf'))


Also is there a better way to make this update?

-- 

--- 
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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[orientdb] Re: sql update with query - will eventually hang

2015-02-06 Thread alexander anguiano
yes it is faster, but it gets in a weird state.  If i remove the inner 
select and just run this

update Agent set lastCommunicationTime=date() where @rid = #13:3

it's taking 2 seconds.

On Friday, February 6, 2015 at 9:42:19 AM UTC-6, syshex wrote:

 Hi,
 Without the expand it should be faster now. 
 The hanging bit, are you saying that after running update commands like 
 that , after a bit the server starts hanging and/or the queries taking 
 longer to execute ?  
 Anything being printed on the logs ?


 On Friday, February 6, 2015 at 3:25:26 PM UTC, alexander anguiano wrote:

 Ok, i see what happened

 if i run this in the sql analyzer it i don't see a rid

 select in('Manages').@rid from
  asset where guid = '19da4856-57c0-4b39-8f4b-53fc47f86dcf'

 but if i run this new 

 update Agent set lastCommunicationTime=date() where @rid in (select 
 in('Manages').@rid from
  asset where guid = '19da4856-57c0-4b39-8f4b-53fc47f86dcf')

 it does work, any clue why the query slow down?


 On Friday, February 6, 2015 at 9:16:17 AM UTC-6, alexander anguiano wrote:

 I don't need to expand, how do i get the rid?  I tried 
 in(Manages).@rid and it didnt work

 select in('Manages').@rid  from asset where guid = 
 '19da4856-57c0-4b39-8f4b-53fc47f86dcf')

 On Friday, February 6, 2015 at 8:39:12 AM UTC-6, syshex wrote:

 Hi Alexander

 Do you need to Expand ?  

 select expand(in('Manages'))  from asset where guid = 
 '19da4856-57c0-4b39-8f4b-53fc47f86dcf') 

 Returns a result set of the complete records, which you don't seem to 
 need, just the rid. 

 select in('Manages') from asset where guid = 
 '19da4856-57c0-4b39-8f4b-53fc47f86dcf')

 return a  List   (like   [rid1,rid1,rid3, etc] )  which should be 
 enough for your purpose, no?

 On Friday, February 6, 2015 at 2:11:46 PM UTC, alexander anguiano wrote:

 orientdb version 2.0.1
 java 7
 windows and linux

 i'm making alot of these calls and eventually they begin to hang

 update Agent set lastCommunicationTime=date() where @rid in 
 (select @rid from (select expand(in('Manages')) from
  asset where guid = '19da4856-57c0-4b39-8f4b-53fc47f86dcf'))


 Also is there a better way to make this update?



-- 

--- 
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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [orientdb] Robustness Problem

2015-02-06 Thread Luca Garulli
Hi Chanras,
When you killed the process, OrientDB was flushing pages on disk. During
this operation you could have portion of your database lost. In this case
OrientDB read the WAL (Journal) and rollback any non committed
transactions. This is to *apply the ACIDity of transactions*.

About indexes they were rebuilt because you didn't apply changes in
transaction. Please be sure to *always do changes inside a transaction*,
otherwise indexes could be broken.

Luca


On 6 February 2015 at 03:43, Chanras Sun chanras@gmail.com wrote:

 Dear OrientDB Team,

 Thank for your great work, I really like the way of OrientDB design and it
 features.
 I have been evaluating OrientDB for big data project and every thing seem
 to be fine, except robustness with big data and slow in graph traversal.
 The problem is that, I got 300 millions of user records, the query time was
 great ( not graph traversal) but when the server was suddenly out of power,
 I mean power cut or kill Java process or JVM crash the OrientDB system take
 5 hours to recover database and take 12 hours to rebuild indexes(3 indexes,
 each index need at least 4 hours to rebuild). I think it hard to deal with
 this characteristic in production environment.

 (OrientDB 2.0.1 Community edition)
 best regards,

 @S. Chanras

  --

 ---
 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 orient-database+unsubscr...@googlegroups.com.
 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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[orientdb] Select using Index fires warning: result set with more than 10000 records

2015-02-06 Thread syshex
Using a Query like so : 

select
 expand(rid)
from index:Papers.publicationDate 
skip 10
limit 50
order by key DESC

makes orientdb fire a warning :

2015-02-06 12:16:33:718 INFO  {db=testdb} [TIP] Query 'select  expand(rid) 
from index:Papers.publicationDate  skip 10 limit 30 order by key DESC' 
returned a result set with more than 1 records. Reduce it to improve 
performance and reduce RAM used [OProfiler]

I'm failing to understand why it returns a result set with more than 1 
records.

-- 

--- 
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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[orientdb] Re: Select using Index fires warning: result set with more than 10000 records

2015-02-06 Thread syshex
Also 

skip 10
limit 50
order by key DESC

in this query gives different results than 

order by key DESC
skip 10
limit 50

on the same query, which was unexpected to me


On Friday, February 6, 2015 at 12:21:14 PM UTC, syshex wrote:

 Using a Query like so : 

 select
  expand(rid)
 from index:Papers.publicationDate 
 skip 10
 limit 50
 order by key DESC

 makes orientdb fire a warning :

 2015-02-06 12:16:33:718 INFO  {db=testdb} [TIP] Query 'select 
  expand(rid) from index:Papers.publicationDate  skip 10 limit 30 order by 
 key DESC' returned a result set with more than 1 records. Reduce it 
 to improve performance and reduce RAM used [OProfiler]

 I'm failing to understand why it returns a result set with more than 1 
 records.


-- 

--- 
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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[orientdb] Re: sql update with query - will eventually hang

2015-02-06 Thread alexander anguiano
Ok, i see what happened

if i run this in the sql analyzer it i don't see a rid

select in('Manages').@rid from
 asset where guid = '19da4856-57c0-4b39-8f4b-53fc47f86dcf'

but if i run this new 

update Agent set lastCommunicationTime=date() where @rid in (select 
in('Manages').@rid from
 asset where guid = '19da4856-57c0-4b39-8f4b-53fc47f86dcf')

it does work, any clue why the query slow down?


On Friday, February 6, 2015 at 9:16:17 AM UTC-6, alexander anguiano wrote:

 I don't need to expand, how do i get the rid?  I tried in(Manages).@rid 
 and it didnt work

 select in('Manages').@rid  from asset where guid = 
 '19da4856-57c0-4b39-8f4b-53fc47f86dcf')

 On Friday, February 6, 2015 at 8:39:12 AM UTC-6, syshex wrote:

 Hi Alexander

 Do you need to Expand ?  

 select expand(in('Manages'))  from asset where guid = 
 '19da4856-57c0-4b39-8f4b-53fc47f86dcf') 

 Returns a result set of the complete records, which you don't seem to 
 need, just the rid. 

 select in('Manages') from asset where guid = 
 '19da4856-57c0-4b39-8f4b-53fc47f86dcf')

 return a  List   (like   [rid1,rid1,rid3, etc] )  which should be 
 enough for your purpose, no?

 On Friday, February 6, 2015 at 2:11:46 PM UTC, alexander anguiano wrote:

 orientdb version 2.0.1
 java 7
 windows and linux

 i'm making alot of these calls and eventually they begin to hang

 update Agent set lastCommunicationTime=date() where @rid in 
 (select @rid from (select expand(in('Manages')) from
  asset where guid = '19da4856-57c0-4b39-8f4b-53fc47f86dcf'))


 Also is there a better way to make this update?



-- 

--- 
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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[orientdb] Re: sql update with query - will eventually hang

2015-02-06 Thread syshex
Hi,
Without the expand it should be faster now. 
The hanging bit, are you saying that after running update commands like 
that , after a bit the server starts hanging and/or the queries taking 
longer to execute ?  
Anything being printed on the logs ?


On Friday, February 6, 2015 at 3:25:26 PM UTC, alexander anguiano wrote:

 Ok, i see what happened

 if i run this in the sql analyzer it i don't see a rid

 select in('Manages').@rid from
  asset where guid = '19da4856-57c0-4b39-8f4b-53fc47f86dcf'

 but if i run this new 

 update Agent set lastCommunicationTime=date() where @rid in (select 
 in('Manages').@rid from
  asset where guid = '19da4856-57c0-4b39-8f4b-53fc47f86dcf')

 it does work, any clue why the query slow down?


 On Friday, February 6, 2015 at 9:16:17 AM UTC-6, alexander anguiano wrote:

 I don't need to expand, how do i get the rid?  I tried in(Manages).@rid 
 and it didnt work

 select in('Manages').@rid  from asset where guid = 
 '19da4856-57c0-4b39-8f4b-53fc47f86dcf')

 On Friday, February 6, 2015 at 8:39:12 AM UTC-6, syshex wrote:

 Hi Alexander

 Do you need to Expand ?  

 select expand(in('Manages'))  from asset where guid = 
 '19da4856-57c0-4b39-8f4b-53fc47f86dcf') 

 Returns a result set of the complete records, which you don't seem to 
 need, just the rid. 

 select in('Manages') from asset where guid = 
 '19da4856-57c0-4b39-8f4b-53fc47f86dcf')

 return a  List   (like   [rid1,rid1,rid3, etc] )  which should be 
 enough for your purpose, no?

 On Friday, February 6, 2015 at 2:11:46 PM UTC, alexander anguiano wrote:

 orientdb version 2.0.1
 java 7
 windows and linux

 i'm making alot of these calls and eventually they begin to hang

 update Agent set lastCommunicationTime=date() where @rid in 
 (select @rid from (select expand(in('Manages')) from
  asset where guid = '19da4856-57c0-4b39-8f4b-53fc47f86dcf'))


 Also is there a better way to make this update?



-- 

--- 
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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [orientdb] Re: sql update with query - will eventually hang

2015-02-06 Thread Luca Garulli
Try this:

update (select expand(in('Manages')) from asset where guid =
'817ea932-4a4a-49a4-8454-37c5098703a2') set lastCommunicationTime=date()

With expand the collection becomes the resultset.

Lvc@


On 6 February 2015 at 17:40, alexander anguiano jobl...@gmail.com wrote:

 I didn't realize you can do this.

 The real query that i need is


 update (select in('Manages') from asset where guid =
 '817ea932-4a4a-49a4-8454-37c5098703a2') set lastCommunicationTime=date()

 but it isn't working, it get this

  java.lang.IllegalArgumentException: Cluster segment #-2 does not exist in
 database 'assets'

 any clue and how to for this query?


 On Friday, February 6, 2015 at 10:07:47 AM UTC-6, Emanuele wrote:

 Have you thought to do change in this way:

 update  #13:3 set lastCommunicationTime=date()

 bye

 Emanuel

 On 06/02/15 15:59, syshex wrote:
  update Agent set lastCommunicationTime=date() where @rid = #13:3
 

  --

 ---
 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 orient-database+unsubscr...@googlegroups.com.
 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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [orientdb] Re: sql update with query - will eventually hang

2015-02-06 Thread Emanuel

Have you thought to do change in this way:

update  #13:3 set lastCommunicationTime=date()

bye

Emanuel

On 06/02/15 15:59, syshex wrote:

update Agent set lastCommunicationTime=date() where @rid = #13:3



--

--- 
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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [orientdb] newbie traverse confusion

2015-02-06 Thread Georg Göttlich
Hi Riccardo.

Thank you very much for your  offer to help and please excuse the somewhat 
incomprehensible post late at night. Here is what I'm trying to do.

Consider the following setup.

create class NodeTypeA extends V
create property NodeTypeA.name string
create vertex NodeTypeA set name = 'NodeA1'

create class NodeTypeB extends V
create property NodeTypeB.name string
create vertex NodeTypeB set name = 'NodeB1'
create vertex NodeTypeB set name = 'NodeB2'
create vertex NodeTypeB set name = 'NodeB3'


create class EdgeTypeABase extends E Abstract
create property EdgeTypeABase.name string
create class EdgeTypeAExtended extends EdgeTypeABase
create edge EdgeTypeAExtended from (select from NodeTypeB where name = 
'NodeB1') to (select from NodeTypeA where name = 'NodeA1') content { name: 
EdgeA }

create class EdgeTypeB extends E
create property EdgeTypeB.name string
create edge EdgeTypeB from (select from NodeTypeB where name = 'NodeB1') to 
(select from NodeTypeB where name = 'NodeB2') content { name: EdgeB1 }
create edge EdgeTypeB from (select from NodeTypeB where name = 'NodeB3') to 
(select from NodeTypeB where name = 'NodeB2') content { name: EdgeB2 }



Now I want to get from NodeA1 to NodeB3. 
Or more general from a NodeTypeA via a subtype EdgeTypeABase to NodeTypeB 
and the traverse an varying number of EdgeTypeB and NodeTypeB.

According to the docs, this simple query schould work:
traverse V.both, E.both from NodeTypeA



Or for one hop, at least this should:
traverse V.out, E.in from NodeTypeA



It doesn't.
The following works and also let's me define the tpyes of Edges and Nodes 
to use, but not the node/edge type combination.

traverse bothE(NodeTypeA, NodeTypeB), inv(EdgeTypeABase,EdgeTypeB), outV(
EdgeTypeABase,EdgeTypeB) from NodeTypeA


Interestingly, if you query the paths using all() like this
select $path from (traverse all() from NodeTypeA)
You get a path look like this
(#16:1).in_EdgeTypeAExtended[0](#18:0).out(#17:0).out_EdgeTypeB[0](#19:0).in(#17:1).in_EdgeTypeB[1](#19:1).out(#17:2)

An indeed 
select in_EdgeTypeAExtended from NodeTypeA
get's the edge. But things like both_EdgeTypeAExtended or in_EdgeTypeABase 
don't. Plus, it doesn't work on edges.

I'm pretty confused by the whole thing and would be really greatful if you 
could shed some light on that for me.
Thanks a lot!

Cheers
Georg

-- 

--- 
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 orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.