[ 
https://issues.apache.org/jira/browse/TINKERPOP-2705?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17501386#comment-17501386
 ] 

ASF GitHub Bot commented on TINKERPOP-2705:
-------------------------------------------

FlorianHockmann opened a new pull request #1580:
URL: https://github.com/apache/tinkerpop/pull/1580


   https://issues.apache.org/jira/browse/TINKERPOP-2705
   
   Changes made:
   * `GraphTraversal`/`GraphTraversalSource`: Ensure that no 
`NullReferenceException` gets thrown. Either allow `null` as an argument or 
throw an `ArgumentNullException` if it doesn't seem sensible and if Java also 
doesn't allow `null`.
   * `__`: Simply forward all `null` arguments to the steps in `GraphTraversal` 
so they can be handled there and we don't need to duplicate the logic whether 
we want to allow `null` or throw.
   
   I had to adapt the `DotNetTranslator` a bit as the logic to avoid problems 
where multiple overloads would be possible was to eager. This resulted in a 
`params object[]` argument that should be set to `null` for a scenario, being 
actually tested with an `object[]` which had `null` as an element. This let the 
scenarios pass although users would get a `NullReferenceException` since they 
probably won't add the unnecessary `object` cast.
   Example:
   `HasKey('name', null)` -> threw a `NullReferenceException`
   `HasKey('name', (object) null)` -> passed
   
   VOTE +1


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


> Support null as an argument where it makes sense in Gremlin.NET
> ---------------------------------------------------------------
>
>                 Key: TINKERPOP-2705
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2705
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: dotnet
>    Affects Versions: 3.5.2
>            Reporter: Florian Hockmann
>            Assignee: Florian Hockmann
>            Priority: Minor
>
> We improved support for {{null}} in the last few releases, but Gremlin.NET 
> still throws a {{NullReferenceExceptions}} if {{null}} is provided in some 
> places, especially when it's not obvious that {{null}} is a valid argument 
> value.
> We should find these places and then either allow {{null}} there or throw an 
> {{ArgumentNullException}} if we're really sure that {{null}} cannot be a 
> valid argument there. In places where we don't know for sure whether {{null}} 
> is always invalid or not, we should probably allow it in Gremlin.NET so that 
> the server can decide how to handle it.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to