1. 07 4月, 2017 12 次提交
  2. 06 4月, 2017 8 次提交
  3. 05 4月, 2017 20 次提交
    • D
      Use backend quoting functions instead of libpq · 1bb0b765
      Daniel Gustafsson 提交于
      libpq is front-end code and shouldn't be used in backend processes.
      The requirement here is to correctly quote the relation name in
      partitioning such that pg_dump/gp_dump can create working DDL for
      the partition hierarchy. For this purpose, quote_literal_internal()
      does the same thing as PQescapeString(). The following relation
      definitions were hitting the previous bug fixed by applying proper
      quoting:
      
      CREATE TABLE part_test (id int, id2 int)
        PARTITION BY LIST (id2) (
          PARTITION "A1" VALUES (1)
        );
      
      CREATE TABLE sales (trans_id int, date date)
        DISTRIBUTED BY (trans_id)
        PARTITION BY RANGE (date) (
          START (date '2008-01-01') INCLUSIVE
          END (date '2009-01-01') EXCLUSIVE
          EVERY (INTERVAL '1 month')
        );
      
      ALTER TABLE sales
        SPLIT PARTITION FOR ('2008-01-01')
        AT ('2008-01-16')
        INTO (PARTITION jan081to15, PARTITION jan0816to31);
      ALTER TABLE sales
        ADD DEFAULT PARTITION other;
      ALTER TABLE sales
        SPLIT DEFAULT PARTITION
        START ('2009-01-01') INCLUSIVE
        END ('2009-02-01') EXCLUSIVE
        INTO (PARTITION jan09, PARTITION other);
      1bb0b765
    • D
      Remove leftover perforce integration in gppkg makefiles · 58bdad19
      Daniel Gustafsson 提交于
      The previous cleanup of perforce integration from the makefiles
      inadvertently left one reference to p4client/p4 in the releng
      tools.mk. Remove by partially backport a fix for PostGIS gppkg
      from the 4.3 tree.
      58bdad19
    • D
      Fix database test in gpstart · 762dd106
      Daniel Gustafsson 提交于
      Commit f41552e9 removed the upgrade code from gpstart, but took
      some of the code to test connections with it. Reinstate the url
      test but with self.dburl instead since it's the only remaining
      value to test here.
      762dd106
    • D
      Run plpython_returns with terse verbosity · 290421af
      Daniel Gustafsson 提交于
      Avoid python dependent output by using terse verbosity to make the
      test suite more stable across environments.
      290421af
    • D
      Fix spelling in test suite · 5525a242
      Daniel Gustafsson 提交于
      5525a242
    • D
      Remove reference to non-existing test-suite · be795734
      Daniel Gustafsson 提交于
      Commit eb1740c6 added plpython_types to the REGRESS set as part
      of a backport, the test suite was however not added until 9.2 in
      upstream which is further up than our version. Remove until we have
      caught up with 9.2.
      be795734
    • D
      Add pg_regress init_file to pl/perl · 95129d67
      Daniel Gustafsson 提交于
      Commit 644b2a9d synchronized our pl/perl with upstream and
      tidied up the Makefile. Add the missing init_file which that
      commit references for pg_regress.
      95129d67
    • D
      Make ICW and compile options match in CI · 1e2a9531
      Daniel Gustafsson 提交于
      The ./configure for the ICW run in Concourse needs to have the same
      set of configure options as the compile job since it uses the config
      status to determine which tests to run.
      1e2a9531
    • A
      Fix ON COMMIT DELETE ROWS action for append optimized tables · 5ccdd6a2
      Asim R P 提交于
      The fix is to perform the same steps as a TRUNCATE command - set new relfiles
      and drop existing ones for parent AO table as well as all its auxiliary tables.
      
      This fixes issue #913.  Thank you, Tao-Ma for reporting the issue and proposing
      a fix as PR #960.  This commit implements Tao-Ma's idea but implementation
      differs from the original proposal.
      5ccdd6a2
    • A
      Enhance UAO templating to recognize "aoseg" and "aocsseg" keywords. · 9fc5eee5
      Asim R P 提交于
      This is useful if a test wants to use gp_toolkit.__gp_{aoseg|aocsseg}*
      functions.
      9fc5eee5
    • J
      Check for known errors in Coverity response [#143080725] · 9c73269a
      Jim Doty 提交于
      Signed-off-by: NTom Meyer <tmeyer@pivotal.io>
      9c73269a
    • B
      Ignore very wide columns in analyze sample · 8492807f
      Bhuvnesh Chaudhary and Ekta Khanna 提交于
      Analyze collects a sample from the table, in case the
      sample contains columns with huge length, it may
      result in memory usage to go high cancelling the query.
      
      This commit masks wide values `i.e pg_column_size(col) > WIDTH_THRESHOLD
      (1024)` in variable length columns to avoid high
      memory usage while collecting sample. Column values exceeding
      WIDTH_THRESHOLD will be marked as NULL and will be ignored from the collected
      samples tuples while computing stats on the relation.
      
      In case of expression/predicate indexes on the relation, the wide columns will be
      treated as NULL and will not be filtered out. Is it rare to have such
      indexes on very wide columns, so the effects on stats (nullfrac etc) will be minimal.
      Signed-off-by: NOmer Arap <oarap@pivotal.io>
      8492807f
    • B
      Use STRICT for functions using textin/textout · 038457a5
      Bhuvnesh Chaudhary 提交于
      The breakin/out functions should be marked as STRICT,
      because the underlying C functions, textin/textout,
      don't expect a NULL to be passed to them.
      Signed-off-by: NEkta Khanna <ekhanna@pivotal.io>
      038457a5
    • T
      Move Coverity to it's own pipeline [#142981021] · 2d18eac3
      Tom Meyer 提交于
      Signed-off-by: NJim Doty <jdoty@pivotal.io>
      2d18eac3
    • J
      Fix behave tests after introducing relfilenode counter change. · 0b53c555
      Jimmy Yih 提交于
      A lot of tests assumed OID == relfilenode. We updated the tests to not assume
      that anymore.
      0b53c555
    • J
      Fix TINC storage tests after introducing relfilenode counter change. · adf3ed40
      Jimmy Yih 提交于
      A lot of tests assumed OID == relfilenode. We updated the tests to not assume
      that anymore.
      adf3ed40
    • J
      Fix ICW tests after introducing relfilenode counter change. · 974e78dc
      Jimmy Yih 提交于
      These tests assumed OID == relfilenode. We updated the tests to not assume it
      anymore.
      974e78dc
    • J
      Fix gpcheckmirrorseg.pl query after introducing relfilenode counter · 3ba88f6d
      Jimmy Yih 提交于
      A query in gpcheckmirrorseg.pl would lookup relfilenodes obtained from
      physically diffing segment files between primaries and mirrors. The
      issue with the query was that it only looked at master's catalog which
      would most likely not contain the relfilenodes of the QE
      segments, especially after introducing the relfilenode counter change. We union
      all the QE segment catalogs with master's catalog and check by content id to
      correct the query.
      3ba88f6d
    • J
      Add O_EXCL to MirroredBufferPool_DoOpen create file · f6701956
      Jimmy Yih 提交于
      This is needed to prevent relations possibly overwriting each
      other. The O_EXCL is present in postgres's mdcreate() but for some
      reason we don't have it here. This adds it back.
      Signed-off-by: NXin Zhang <xzhang@pivotal.io>
      f6701956
    • J
      Decouple OID and relfilenode allocations with new relfilenode counter · 1fd11387
      Jimmy Yih 提交于
      The master allocates an OID and provides it to segments during
      dispatch. The segments then check if they can use this OID as its
      relfilenode. If a segment cannot use the preassigned OID as the
      relation's relfilenode, it will generate a new relfilenode value via
      nextOid counter. This can result in a race condition between the
      generation of the new OID and the segment file being created on disk
      after being added to persistent tables. To combat this race condition,
      we have a small OID cache... but we have found in testing that it was
      not enough to prevent the issue.
      
      To fully solve the issue, we decouple OID and relfilenode on both QD and QE
      segments by introducing a nextRelfilenode counter which is similar to
      the nextOid counter. The QD segment will generate the OIDs and its own
      relfilenodes. The QE segments only use the preassigned OIDs from the QD
      dispatch and generate a relfilenode value from their own nextRelfilenode
      counter.
      
      Current sequence generation is always done on QD sequence server, and
      assumes the OID is always same as relfilenode when handling sequence client
      requests from QE segments. It is hard to change this assumption so we have a
      special OID/relfilenode sync for sequence relations for GP_ROLE_DISPATCH and
      GP_ROLE_UTILITY.
      
      Reference gpdb-dev thread:
      https://groups.google.com/a/greenplum.org/forum/#!topic/gpdb-dev/lv6Sb4I6iSISigned-off-by: NXin Zhang <xzhang@pivotal.io>
      1fd11387