@dkuppitz Thanks for your review.

@spmallette Currently there is a problem blocking me: different results are 
returned with the same gremlin `g.E().properties().dedup().value()` in OLTP 
mode and OLAP mode:
```
OLTP mode: [0.5, 0.4, 1.0, 0.2, 0.4, 1.0]  (return TinkerProperty with element 
!= null)
OLAP mode: [0.5, 1.0, 0.4, 0.2]            (return DetachedProperty with 
element = null)
```
I'm not sure what's the expected behavior for the following scenarios:
(1) the comparison of properties(of edge) with **element = null**
(2) the comparison of properties(of edge) with **element != null**:

1. Should p1_null and p2_null be equal for the following scenario? (like 
DetachedProperty from `g.E().properties()` with OLAP mode)
```java
p1_null = {
  key = k1
  value = v1
  element = null
}

p2_null = {
  key = k1
  value = v1
  element = null
}
```
2. Should p1 and p2 be equal for the following scenario? (like TinkerProperty 
from `g.E().properties()` with OLTP mode)
```java
p1 = {
  key = k1
  value = v1
  element = edge-1
}

p2 = {
  key = k1
  value = v1
  element = edge-2
}
```
I think p1 and p2 are expected to be equal even if their parent elements are 
not equal. When comparing properties, maybe it is more reasonable to focus on 
the property itself. This also makes it easier to get uniform behavior.



[ Full content available at: https://github.com/apache/tinkerpop/pull/1224 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to