Github user srowen commented on the pull request:

    https://github.com/apache/spark/pull/11617#issuecomment-195258085
  
    Returning a value by  modifying an arg in place is exceptional, but I don't 
think it's something that can never happen. This is a case where it should, and 
it's done and documented in this special-purpose implementation intentionally 
for performance. I don't know about you, but around BLAS/lapack and related 
methods is exactly where I expect the function args to be modified, since 
that's the only way lapack works.
    
    Ideally, the modifying in-place semantics is reusable for a bunch of 
purposes. Since it's just the result of the lapack call, I suspect it could be. 
However that doesn't mean it's suitable for your use case. But if your solution 
is to clone for all calls, then a solution for this particular other usage is 
to pass a clone of your argument, yeah.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to