Here's my point. This is the function:

    VoltDBEngine::ExecutorVector *VoltDBEngine::getExecutorVectorForFragmentId(const int64_t fragId) {
        ... blah blah blah
        if (iter != m_plans.get<1>().end()) {
            ... blah blah blah
            VoltDBEngine::ExecutorVector *retval = (*iter).get();
            assert(retval);
            return retval;
        }
        else {
            ... blah blah blah
            ... blah blah blah
            ... blah blah blah
            VoltDBEngine::ExecutorVector *retval = ev.get();
            assert(retval);
            return retval;
        }
        return NULL;
    }

So, when you THINK about it, the final "return NULL;" looks pointless.
So, sure, you can just drop the statement.

BUT, if, instead, you (like, by habit) eliminated the redundant "else" after the first return,
the code would be:

    VoltDBEngine::ExecutorVector *VoltDBEngine::getExecutorVectorForFragmentId(const int64_t fragId) {
        ... blah blah blah
        if (iter != m_plans.get<1>().end()) {
            ... blah blah blah
            VoltDBEngine::ExecutorVector *retval = (*iter).get();
            assert(retval);
            return retval;
        }
        ... blah blah blah
        ... blah blah blah
        ... blah blah blah
        VoltDBEngine::ExecutorVector *retval = ev.get();
        assert(retval);
        return retval;
        return NULL;
    }

NOW, even when you DON'T THINK about it, the "return NULL;" looks pointless!
It jumps out so clearly that even a lame compiler could figure it out.

So, by the "Don't make me think." principle, "return followed by else" is on my "bad form" list.