1. 07 12月, 2018 4 次提交
  2. 06 12月, 2018 9 次提交
    • D
      Fix typos in documentation · 748813f6
      Daniel Gustafsson 提交于
      Discussion: https://github.com/greenplum-db/gpdb/pull/6410
      Reviewed-by: Heikki Linnakangas
      748813f6
    • S
      d1df28c1
    • N
      resgroup: allow shared memory as operator memory · 98f9b174
      Ning Yu 提交于
      GPDB assigns 100KB for each non memory intensive operator, and report an
      error if there is not enough memory reserved for the operators.  In low
      memory resource groups it is easy to trigger this error with large
      queries.
      
      Improved by always assign at least 100KB memory to operators, both
      memory intensive or non-intensive, the memory can be allocated from
      shared memory, and will raise OOM error if there is not enough shared
      memory.
      98f9b174
    • T
      Disable Current Of for replicated table (#6407) · d6b1289f
      Tang Pengzhou 提交于
      * Disable Current Of for replicated table
      
      Let's list the plans using CURRENT OF:
      
          explain delete from t1 WHERE CURRENT OF c1;
                                  QUERY PLAN
          -----------------------------------------------------------
           Delete on t1  (cost=0.00..100.01 rows=1 width=10)
             ->  Tid Scan on t1  (cost=0.00..100.01 rows=1 width=10)
                   Output: ctid, gp_segment_id
                   TID Cond: CURRENT OF c1
                   Filter: CURRENT OF c1
      
          explain UPDATE r1 SET b = 3 WHERE CURRENT OF c1;
                                  QUERY PLAN
          -----------------------------------------------------------
           Update on r1  (cost=0.00..100.01 rows=1 width=18)
             ->  Tid Scan on r1  (cost=0.00..100.01 rows=1 width=18)
                   Output: ctid, gp_segment_id
                   TID Cond: CURRENT OF c1
                   Filter: CURRENT OF c1
      
      (ctid + gp_segment_id) can identify a unique row for hash distributed
      table or randomly distributed table, but for replicated table, it can
      only identify a row in one replica, so in this case other replicas
      are not updated or deleted properly. There is no proper way to let
      CURRENT OF work fine for replicated table, so just disable it for now.
      
      Updatable view works fine now because all the operations are designed
      to executed locally, rows of each replica are never flowed to other
      segments and each replica have the same data flow. For example:
           create view v_r2 as select * from r2 where c2 = 3;
      
           explain update v_r2 set c2 = 4 from p1 where p1.c2=v_r2.c2;
                                  QUERY PLAN
          -----------------------------------------------------------
           Update on r2
             ->  Nested Loop
                   ->  Seq Scan on r2
                         Filter: (c2 = 3)
                   ->  Materialize
                         ->  Broadcast Motion 3:3
                               ->  Seq Scan on p1
                                     Filter: (c2 = 3)
      As the plan shows, p1 is broadcasted, so all replicas of replicated
      table operate locally
      d6b1289f
    • L
      docs - pxf CLI refactor, add ref pages for pxf, pxf cluster (#6401) · e648cf45
      Lisa Owen 提交于
      * docs - pxf CLI refactor, add ref pages for pxf, pxf cluster
      
      * display pxf cluster first in ref landing page
      
      * remedy -> solution
      
      * remove java 1.7
      
      * remove commands that source greenplum_path.sh
      
      * edits requested by david
      
      * fix link
      
      * update OSS book for new ref pages, add jdbc, edits
      e648cf45
    • D
    • M
      docs - ANALYZE - clarify using analyze on partitioned tables. (#6402) · c6c0cd7b
      Mel Kiyama 提交于
      * docs - ANALYZE - clarify using analyze on partitioned tables.
      
      * docs - ANALYZE - review comment updates
      c6c0cd7b
    • H
      Avoid including 1 kB of zeros in every QD -> QE query dispatch. · 51a01235
      Heikki Linnakangas 提交于
      The 'M' type QD->QE dispatch message includes a serialized version of the
      current resource group information. That included a 'cpuset' field, which
      has 1 kB of space reserved for it, and the serialization routine included
      all the padding zeros in it. (Copying or memsetting that into a local
      variable in SerializeResGroupInfo() wasn't completely free either).
      Rewrite the serialized format to be less silly.
      Reviewed-by: NJacob Champion <pchampion@pivotal.io>
      51a01235
    • H
      Fix numeric round() and trunc() to not scribble on their input. · 08542bf2
      Heikki Linnakangas 提交于
      numeric_round() and numeric_trunc() initialized the NumericVar to
      represent the argument with init_var_from_num(), and then called
      round_var() on it. That's not cool, init_var_from_num() creates a
      read-only NumericVar, whose 'digits' points directly to the argument
      datum, and round_var() scribbles on it. There is a comment in
      init_var_from_num() warning explicitly to not do exactly that, but we
      failed to heed the warning.
      
      Fixes github issue https://github.com/greenplum-db/gpdb/issues/6383. I
      also added a test case for this, although it's a bit hard to see this bug
      to reappear in exactly the same form. It's not far-fetched that we might
      re-introduce it in a slightly different form, though, so I also added some
      extra Asserts in round_var() and trunc_var() for it.
      Reviewed-by: NEkta Khanna <ekhanna@pivotal.io>
      08542bf2
  3. 05 12月, 2018 7 次提交
  4. 04 12月, 2018 11 次提交
  5. 03 12月, 2018 9 次提交