[ https://issues.apache.org/jira/browse/ARROW-187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15271904#comment-15271904 ]
Micah Kornfield commented on ARROW-187: --------------------------------------- I don't think the allocations are expensive generally (10s of bytes) but if we guarantee exception safety then we should avoid them. I say "should" because it seems very likely that if the allocations on these small amounts fail, something in the system would likely fail soon afterwards anyways. But at least it wouldn't be Arrow causing the segfault. I don't have much experience here either. Most of my C++ work has been done assuming exceptions. I was going to send out an e-mail to the mailing list to see if I could get more of a response. > [C++] Decide on how pedantic we want to be about exceptions > ----------------------------------------------------------- > > Key: ARROW-187 > URL: https://issues.apache.org/jira/browse/ARROW-187 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Reporter: Micah Kornfield > > We currently have code sprinkled around constructors that can technically > fail because we either do a memcpy/allocation via vector copy constructor (we > might be using a move constructor in places) and make_shared<>. > These are very small memory allocations but they can throw std::bad_alloc. > Technically, we would need to convert these to use Init or static factories. > (types.h is one place to look) -- This message was sent by Atlassian JIRA (v6.3.4#6332)