Antoine Pitrou created ARROW-7754: ------------------------------------- Summary: [C++] Result<T> is slow Key: ARROW-7754 URL: https://issues.apache.org/jira/browse/ARROW-7754 Project: Apache Arrow Issue Type: Improvement Components: C++ Reporter: Antoine Pitrou
When converting a short performance-critical function to return a Result (instead of returning a Status and filling a out-parameter), I noticed a catastrophic performance regression (around 2x or 3x slower). It seems the current Result implementation is very slow, for several reasons: - it imposes "safety" features even in release mode, for example on the critical path of move operators - the underlying mpark variant implementation is not optimized for performance-critical data structures -- This message was sent by Atlassian Jira (v8.3.4#803005)