1. 02 6月, 2018 1 次提交
  2. 04 5月, 2018 1 次提交
  3. 03 5月, 2018 1 次提交
  4. 02 5月, 2018 1 次提交
    • B
      Fix crash while generarting multistage agg plan using percentile func on partition tables · 19ad4bde
      Bhuvnesh Chaudhary 提交于
      Function within_agg_make_baseplan() invokes choose_deduplicate() which creates a
      flattened rte with the assumption that it is generated later in
      query_planner and releases it before returning.
      However,  within_agg_make_baseplan() takes care of releasing the memory
      during deduplicate optimization and it crashes while trying to release it again.
      
      Also, before this function is invoked, query_planner has already
      generated the flattened rte as it is not going to change, so we need not
      generate it again in choose_deduplicate().
      
      In GPDB4, choose_deduplicate() method does not has the code removed in
      this commit as well and the issue reported in 5 does not exists in
      GPDB4. In GPDB Master, this portion of the code has significantly
      changed due to merge from upstream and choose_deduplicate() method does
      not exist nor the issue.
      
      Adding tests to validate the change.
      19ad4bde
  5. 01 5月, 2018 3 次提交
    • B
      Fix NDVRemain and FreqRemain calculation · 25a81ae5
      Bhuvnesh Chaudhary 提交于
      For text, varchar, char and bpchar, ORCA does not collect the
      MCV and Histogram information, so the calculation of NDVRemain and
      FreqRemain must be updated to account for it.
      
      For such columns, NDVRemain is the stadistinct as available in the
      pg_statistic, and FreqRemain is everything except the NULL frequency.
      
      Earlier, NDVRemain and FreqRemain for such columns would yield 0
      resulting in poor cardinality estimation and suboptimal  plans.
      Signed-off-by: NEkta Khanna <ekhanna@pivotal.io>
      (cherry picked from commit 4a5c58a5)
      25a81ae5
    • L
      docs - add content for backup storage plugin api (#4901) · 5c81bbe7
      Lisa Owen 提交于
      * docs - add content for backup storage plugin api
      
      * some edits requested by david
      
      * comments from mel; remove diagram placeholder
      
      * address some requested edits from karen
      
      * gpbackup creates the local directory
      
      * include restore more
      
      * remove bold styling from command
      
      * clarify streaming backup
      
      * address some review comments
      
      * add backup/restore plugin api cmds to subnav
      
      * remove the on-page toc entries for cmds
      
      * wrap up the edits from karen
      5c81bbe7
    • K
      ci: Add icw planner centos7 test · dcc208fb
      Kris Macoskey 提交于
      We test planner and orca on each platform, this one was missing.
      Authored-by: NKris Macoskey <kmacoskey@pivotal.io>
      dcc208fb
  6. 27 4月, 2018 9 次提交
    • N
      resgroup: no warning in Probe() in dummy backend · 713efdd2
      Ning Yu 提交于
      The resgroup dummy backend currently generate a warning in the Probe() call, this
      is not supposed as this function is designed to be called no matter
      resgroup is enabled or not.
      
      Removed the warning message from dummy Probe().
      
      Also update warning messages in dummy backend.
      
      It used to generate warning messages like below in the dummy backend:
      
          cpu rate limitation for resource group is unsupported on this system.
      
      This message was originally introduced when resgroup supported only cpu
      rate limitation, but as now there are more supported capabilities we
      should have this message updated.
      713efdd2
    • N
      resgroup: dump memory_auditor in pg_dumpall. · 0d5e8b6e
      Ning Yu 提交于
      Dump the new capability resgroup memory_auditor in pg_dumpall.
      0d5e8b6e
    • T
      Update time zone data files to tzdata release 2018c. · 0b8c5f21
      Tom Lane 提交于
      DST law changes in Brazil, Sao Tome and Principe.  Historical corrections
      for Bolivia, Japan, and South Sudan.  The "US/Pacific-New" zone has been
      removed (it was only a link to America/Los_Angeles anyway).
      0b8c5f21
    • D
      Backport timezone data format change · b888de96
      Daniel Gustafsson 提交于
      This backports the below commit which moved from the source timezone
      file to the newly introduced compact format.
      
        commit 097b24cea68ac167a82bb617eb1844c8be4eaf24
        Author: Tom Lane <tgl@sss.pgh.pa.us>
        Date:   Sat Nov 25 15:30:11 2017 -0500
      
          Replace raw timezone source data with IANA's new compact format.
      
          Traditionally IANA has distributed their timezone data in pure source
          form, replete with extensive historical comments.  As of release 2017c,
          they've added a compact single-file format that omits comments and
          abbreviates command keywords.  This form is way shorter than the pure
          source, even before considering its allegedly better compressibility.
          Hence, let's distribute the data in that form rather than pure source.
      
          I'm pushing this now, rather than at the next timezone database update,
          so that it's easy to confirm that this data file produces compiled zic
          output that's identical to what we were getting before.
      
          Discussion: https://postgr.es/m/1915.1511210334@sss.pgh.pa.us
      
      Backported from master.
      b888de96
    • T
      Add binary swap tests for TimeZone · d00bb2a6
      Taylor Vesely 提交于
      d00bb2a6
    • T
      Remove timezone merge FIXMEs · 5c4ef80a
      Taylor Vesely 提交于
      These FIXME messages aren't relevant to the 5X_STABLE branch, only for
      master. Remove them.
      5c4ef80a
    • T
      Restore timezone selection on GPDB startup · 6dc7213c
      Taylor Vesely 提交于
      Commit b749790a backports changes from Postgres 10.1 to parse the most
      recent version of the IANA timezone library format, but these changes
      also included some binary incompatible changes in behavior.
      Specifically, pg_timezone_pre_initialize() and identify_system_timezone()
      were removed, resulting in the timezone defaulting to 'GMT' on database
      startup, even if the TimeZone GUC was specifically set in
      postgresql.conf.
      
      This commit restores the previous behavior without reverting the IANA
      timezone library changes.
      6dc7213c
    • D
      Bump ORCA version to 2.56.0 · c8f64cae
      Dhanashree Kashid 提交于
      Signed-off-by: NSambitesh Dash <sdash@pivotal.io>
      c8f64cae
    • D
      Increase the default GPORCA array expansion threshold to 100 · 8a8b74c2
      Dhanashree Kashid 提交于
      It is common to have large IN/NOT IN list in user queries hence 25 is
      too low of a bound.  After running several experiments, 100 turned out
      to be good threshold value for this GUC.
      Signed-off-by: NSambitesh Dash <sdash@pivotal.io>
      (cherry picked from commit e46039dc)
      8a8b74c2
  7. 26 4月, 2018 7 次提交
  8. 25 4月, 2018 1 次提交
    • B
      Fix pushing of quals containing window functions · f1869222
      Bhuvnesh Chaudhary 提交于
      Fix qual_is_pushdown_safe_set_operation to correctly resolve the
      qual vars and identify if there are any window references in the top
      level of the set operation's left or right subqueries. Before commit
      b8002a9, instead of starting with rte of the level where the qual is
      attached we started scanning the rte of the subqueries of the left and
      right args of setop to identify the qual. However, because of this the
      varno didn't match to the corresponding RTE due to which the quals
      couldn't be resolved to winref and were incorrectly pushed down. This
      caused the planner to return an error during execution.
      f1869222
  9. 24 4月, 2018 3 次提交
  10. 23 4月, 2018 3 次提交
  11. 21 4月, 2018 1 次提交
  12. 19 4月, 2018 4 次提交
    • N
      resgroup: fix an access to uninitialized address. · b257b344
      Ning Yu 提交于
      In ResGroupDropFinish() uninitialized memory address can be accessed due
      to some reasons:
      
      1. the group pointer is not initialized on segments;
      2. the hash table node pointed by group is recycled in removeGroup();
      
      This invalid access can cause crash issue on segments.
      
      Also move some global vars to resgroup.c,
      They were put in resgroup-ops-linux.c, which was only compiled and
      linked on linux, so on other OS like macos the vars can not be found.
      b257b344
    • N
      ic: Mark binary_swap_gpdb as optional input for resgroup jobs. · c86652e6
      Ning Yu 提交于
      binary_swap_gpdb was input of all resgroup jobs, but as it's not `get` by the resgroup sles job an error will be triggered:
      
          missing inputs: binary_swap_gpdb
      
      Fixed by marking it as optional.
      c86652e6
    • N
      resgroup: backward compatibility for memory auditor · 23cd8b1e
      Ning Yu 提交于
      Bring back the resgroup memory auditor feature:
      
      - 4354d336
      - 8ede074c
      - 140d4d2e
      
      Memory auditor was a new feature introduced to allow external components
      (e.g. pl/container) managed by resource group.  This feature requires a
      new gpdb dir to be created in cgroup memory controller, however on 5X
      branch unless the users created this new dir manually then the upgrade
      from a previous version would fail.
      
      In this commit we provide backward compatibility by checking the release
      version:
      
      - on 6X and master branches the memory auditor feature is always enabled
        so the new gpdb dir is mandatory;
      - on 5X branch only if the new gpdb dir is created with proper
        permissions the memory auditor feature could be enabled, when it's
        disabled `CREATE RESOURCE GROUP WITH (memory_auditor='cgroup') will fail
        with guide information on how to enable it;
      
      Binary swap tests are also provided to verify backward compatibility in
      future releases.  As cgroup need to be configured to enable resgroup we
      split the resgroup binary swap tests into two parts:
      
      - resqueue mode only tests which can be triggered in the
        icw_gporca_centos6 pipeline job after the ICW tests, these parts have
        no requirements on cgroup;
      - complete resqueue & resgroup modes tests which can be triggered in the
        mpp_resource_group_centos{6,7} pipeline jobs after the resgroup tests,
        these parts need cgroup to be properly configured;
      23cd8b1e
    • N
      Make resgroup work on Ubuntu · 1cb7a49d
      Ning Yu 提交于
      * resgroup: make cgroup memsw.limit_in_bytes optional.
      * resgroup: retry proc migration for rmdir to succeed.
      * resgroup: add delay in a testcase.
      * resgroup: use correct log level in cgroup ops.
      1cb7a49d
  13. 18 4月, 2018 1 次提交
  14. 17 4月, 2018 3 次提交
  15. 16 4月, 2018 1 次提交
    • P
      Add a GUC to limit the number of slices for a query · 225890a8
      Pengzhou Tang 提交于
      Executing a query plan containing a large number of slices may slow down
      the entire Greenplum cluster: each "n-gang" slice corresponds to a
      separate process per segment. An example of such queries is a UNION ALL
      atop several complex views. To prevent such a situation, add a GUC
      gp_max_slices and refuse to execute plans of which the number of slices
      exceed that limit.
      Signed-off-by: NJesse Zhang <sbjesse@gmail.com>
      225890a8