VoltDB/voltdb — pull request #1731 by cwolff-voltdb (2014-10-24 21:38:55+00:00)
Title: Refactor ExecutorVector class

I've made this class to be more object-oriented, making member variables private and providing accessors where needed, and `init`, `execute`, and `cleanup` methods.

In order to support purging rows when row limits are exceeded, I wanted to be able to execute an `ExecutorVector` without the extra stuff that happens in the normal codepath (like setting state in the `ExecutorContext`), but *with* the stuff that I want (like managing exceptions). Making `ExecutorVector` into more of an independent class seemed to be the way to go.

I tried to keep the changes down to a minimum here because Mike A.'s pending changes to this area, but I found that tricky since the code here was a little spaghetti-like. If these changes make it difficult to merge the in/exists work, I'm open to other options.