Make setNValue allocate objects in temporary string pool, if needed 

Ok, I understand now.  

I'm guessing that we do some naive optimization of the target table schema already---and that this is why we don't throw an exception when just selecting an inlined varchar field from some table.  I was wondering about that.  Where does the code that determines temp table schema actually live?