[
https://issues.apache.org/jira/browse/TINKERPOP-3235?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Stephen Mallette closed TINKERPOP-3235.
---------------------------------------
Fix Version/s: 4.0.0
3.7.6
3.8.1
Resolution: Fixed
Fixed via CTR with:
https://github.com/apache/tinkerpop/commit/1c8ad966f0ae68a95ff35ea920c9ccf44760fa82
> mergeE argument validation for onCreate overrides
> -------------------------------------------------
>
> Key: TINKERPOP-3235
> URL: https://issues.apache.org/jira/browse/TINKERPOP-3235
> Project: TinkerPop
> Issue Type: Bug
> Components: process, test-suite
> Affects Versions: 3.8.0
> Reporter: Stephen Mallette
> Assignee: Stephen Mallette
> Priority: Blocker
> Fix For: 4.0.0, 3.7.6, 3.8.1
>
>
> These 2 tests should expose a problem with the {{mergeE}} implementation:
> {code:java}
> g_mergeEXlabel_knows_out_vadasX_optionXonCreate_created_YX_optionXonMatch_created_NX_exists_updated
> g_mergeEXout_vadasX_optionXonCreate_created_YX_optionXonMatch_created_NX_exists_updated
> {code}
> because their {{onCreate}} has a {{Map}} key that overrides a key provided in
> the search {{{}Map{}}}. The Gremlin should fail with validation with
> something like "option(onCreate) cannot override values from merge()
> argument: (OUT, 6ece7191-115b-a424-c4ab-0730253db761)"
> It's passing because we're shortcutting to {{onMatch}} without executing the
> validation. it seems possible that folks could be exploiting this bug as a
> feature. Upgrade Docs should be clear that this change is in play.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)