1. 04 8月, 2016 3 次提交
    • S
      Fix cpplint errors · 697ffc1a
      Shreedhar Hardikar 提交于
      697ffc1a
    • S
      Support Virtual Tuples and Memtuples in SlotGetAttrCodegen · c5e3aed4
      Shreedhar Hardikar 提交于
      We can avoid generating multiple versions of the slot_getattr. Once we
      deform any of the attributes in the tuples, we make it a virtual tuple.
      At code generation time, we know exactly how many need to be deformed
      and can in fact go ahead deform all the way. This way we don't need to
      worry about the case when slot_getattr is called on a virtual tuple with
      attnum > nvalid - that is deformation is partially complete.
      
      To enable this, we need to collect information from all the code
      generators that depend on SlotGetAttrCodegen before it is generated. We
      maintain a static map (keyed on the manager and the slot) to instances of
      SlotGetAttrCodegen. We also introduce a InitDependencies phase that
      happens before the GenerateCode phase, when dependants of
      SlotGetAttrCodegen can retrieve instances from the static map.
      c5e3aed4
    • S
      5996aaa7
  2. 03 8月, 2016 1 次提交
  3. 21 7月, 2016 3 次提交
  4. 14 7月, 2016 1 次提交
  5. 12 7月, 2016 1 次提交
    • S
      Use ExprTreeGeneratorInfo for expression tree generation. · 88a04412
      Shreedhar Hardikar 提交于
      ExprTreeGeneratorInfo object keeps track of metadata information
      needed to generate code for expression trees.
      Refactor ExprTreeGenerators to always use econtext->ecxt_scantuple to
      generate the functions. We also have an extra slot_check block to fall
      back if it is called with a different slot - which shouldn't happen for
      Agg and Scan nodes.
      88a04412
  6. 02 7月, 2016 1 次提交
  7. 29 6月, 2016 3 次提交