1. 12 4月, 2016 3 次提交
    • A
      Fix XML regression tests failure · 70a857dc
      Andreas Scherbaum 提交于
      A new version of libXML changes the output format, this patch
      adapts the new "expected" file introduced in
      PostgreSQL commit 085423e3.
      Slight modifications by me.
      
      This patch will not fail the current Pulse run in any way, because
      the Pulse systems do not yet use the new libXML library, and therefore
      are happy with xml.out and xml_1.out. I stripped down the regression
      tests and this is the output without the patch:
      
      parallel group (14 tests):  limit prepare conversion xml rowtypes copy2 polymorphism sequence without_oid temp truncate domain rangefuncs alter_table
           limit                ... ok (0,24 sec)  (diff:0,07 sec)
           copy2                ... ok (2,44 sec)  (diff:0,07 sec)
           temp                 ... ok (3,83 sec)  (diff:0,07 sec)
           domain               ... ok (7,12 sec)  (diff:0,10 sec)
           rangefuncs           ... ok (12,15 sec)  (diff:0,09 sec)
           prepare              ... ok (0,49 sec)  (diff:0,06 sec)
           without_oid          ... ok (3,49 sec)  (diff:0,07 sec)
           conversion           ... ok (1,19 sec)  (diff:0,17 sec)
           truncate             ... ok (4,03 sec)  (diff:0,06 sec)
           alter_table          ... ok (27,88 sec)  (diff:0,32 sec)
           sequence             ... ok (3,18 sec)  (diff:0,08 sec)
           polymorphism         ... ok (3,13 sec)  (diff:0,11 sec)
           rowtypes             ... ok (2,17 sec)  (diff:0,09 sec)
           xml                  ... FAILED (1,69 sec)  (diff:0,39 sec)
      test variadic_parameters  ... ok (1,57 sec)  (diff:0,07 sec)
      test default_parameters   ... ok (0,68 sec)  (diff:0,07 sec)
      
      =======================
       1 of 97 tests failed.
      =======================
      
      This is the output with the patch:
      
      parallel group (14 tests):  limit prepare conversion xml rowtypes copy2 polymorphism sequence without_oid temp truncate domain rangefuncs alter_table
           limit                ... ok (0,21 sec)  (diff:0,10 sec)
           copy2                ... ok (1,95 sec)  (diff:0,06 sec)
           temp                 ... ok (3,41 sec)  (diff:0,26 sec)
           domain               ... ok (6,67 sec)  (diff:0,19 sec)
           rangefuncs           ... ok (11,55 sec)  (diff:0,09 sec)
           prepare              ... ok (0,41 sec)  (diff:0,06 sec)
           without_oid          ... ok (2,91 sec)  (diff:0,06 sec)
           conversion           ... ok (0,96 sec)  (diff:0,15 sec)
           truncate             ... ok (3,62 sec)  (diff:0,09 sec)
           alter_table          ... ok (25,79 sec)  (diff:0,22 sec)
           sequence             ... ok (2,89 sec)  (diff:0,06 sec)
           polymorphism         ... ok (2,50 sec)  (diff:0,09 sec)
           rowtypes             ... ok (1,87 sec)  (diff:0,12 sec)
           xml                  ... ok (1,54 sec)  (diff:0,30 sec)
      test variadic_parameters  ... ok (1,43 sec)  (diff:0,07 sec)
      test default_parameters   ... ok (0,43 sec)  (diff:0,07 sec)
      
      ======================
       All 97 tests passed.
      ======================
      
      Fix #550
      70a857dc
    • H
      Remove gp_disable_catalog_access_on_segment GUC. · 2e8b036d
      Heikki Linnakangas 提交于
      It didn't do anything useful AFAICS.
      2e8b036d
    • A
  2. 11 4月, 2016 2 次提交
    • K
      9a144323
    • K
      Support the aggregation transition datatype to be "internal" (#588) · d9496670
      Kuien Liu 提交于
      * Support the aggregation transition datatype to be "internal"
      
      Backport below commits from upstream:
      
          commit 22d9ddbb
          Author: Tom Lane <tgl@sss.pgh.pa.us>
          Date:   Sat Aug 14 15:47:13 2010 +0000
      
              Fix planner to make a reasonable assumption about the amount of memory space
              used by array_agg(), string_agg(), and similar aggregate functions that use
              "internal" as their transition datatype.  The previous coding thought this
              took *no* extra space, since "internal" is pass-by-value; but actually these
              aggregates typically consume a great deal of space.  Per bug #5608 from
              Itagaki Takahiro, and fix suggestion from Hitoshi Harada.
      
              Back-patch to 8.4, where array_agg was introduced.
      
          commit 9e0247ab
          Author: Tom Lane <tgl@sss.pgh.pa.us>
          Date:   Fri Nov 14 19:47:50 2008 +0000
      
              In CREATE AGGREGATE, allow the transition datatype to be "internal", but only
              if the user is superuser.  This makes available to extension modules the same
              sort of trick being practiced by array_agg().  The reason for the superuser
              restriction is that you could crash the system by connecting up an
              incompatible pair of internal-using functions as an aggregate.  It shouldn't
              interfere with any legitimate use, since you'd have to be superuser to create
              the internal-using transition and final functions anyway.
      
      Besides, we cannot find regression tests in above commits, so we
      add a set of tests for this feature, a part of them come from
      legacy extension "intagg" regression tests.
      
      Conflicts:
      	src/test/regress/expected/arrays.out
      	src/test/regress/sql/arrays.sql
      
      * add tests to #588: run with role of (non-)superuser
      
          #588: Support the aggregate's transype to be "internal"
      
      Normally, the aggregate's transtype can't be a pseudo-type.
      However, we can allow "internal" for functions that want to
      pass pointers to private data structures; but allow that only
      to superusers. Here we add tests to verify this constraint.
      d9496670
  3. 09 4月, 2016 2 次提交
  4. 08 4月, 2016 1 次提交
  5. 07 4月, 2016 1 次提交
  6. 02 4月, 2016 6 次提交
    • H
      Temporally fix to 'casts to/from string types for every datatype' · ead24acd
      Haozhou Wang 提交于
      Looks it falls back to legacy optimizer when running regression,
      hence we temporally comment out three tests and create a story
      on pivotaltracker #116312671 to solve it later.
      -- comment out two tests in domain.sql
      -- comment out one test in qp_misc_jiras.sql
      
        Thanks to Venkatesh Raghavan for helping
      ead24acd
    • H
      Support casts to/from string types for every datatype · d481bd72
      Haozhou Wang 提交于
      Backport below commits from upstream:
      
          commit 31edbadf
          Author: Tom Lane <tgl@sss.pgh.pa.us>
          Date:   Tue Jun 5 21:31:09 2007 +0000
      
              Downgrade implicit casts to text to be assignment-only, except for the ones
              from the other string-category types; this eliminates a lot of surprising
              interpretations that the parser could formerly make when there was no directly
              applicable operator.
      
              Create a general mechanism that supports casts to and from the standard string
              types (text,varchar,bpchar) for *every* datatype, by invoking the datatype's
              I/O functions.  These new casts are assignment-only in the to-string direction,
              explicit-only in the other, and therefore should create no surprising behavior.
              Remove a bunch of thereby-obsoleted datatype-specific casting functions.
      
              The "general mechanism" is a new expression node type CoerceViaIO that can
              actually convert between *any* two datatypes if their external text
              representations are compatible.  This is more general than needed for the
              immediate feature, but might be useful in plpgsql or other places in future.
      
              This commit does nothing about the issue that applying the concatenation
              operator || to non-text types will now fail, often with strange error messages
              due to misinterpreting the operator as array concatenation.  Since it often
              (not always) worked before, we should either make it succeed or at least give
              a more user-friendly error; but details are still under debate.
      
              Peter Eisentraut and Tom Lane
      
          commit bf940763
          Author: Tom Lane <tgl@sss.pgh.pa.us>
          Date:   Tue Mar 27 23:21:12 2007 +0000
      
              Fix array coercion expressions to ensure that the correct volatility is
              seen by code inspecting the expression.  The best way to do this seems
              to be to drop the original representation as a function invocation, and
              instead make a special expression node type that represents applying
              the element-type coercion function to each array element.  In this way
              the element function is exposed and will be checked for volatility.
              Per report from Guillaume Smet.
      d481bd72
    • F
      Adding test changes in alter_table_optimizer.out for fixing tuple descriptor... · cc599b5b
      Foyzur Rahman 提交于
      Adding test changes in alter_table_optimizer.out for fixing tuple descriptor leak in split_rows during an ALTER TABLE SPLIT PARTITION.
      cc599b5b
    • F
    • N
      add a comment explaining search_path's role in the bug · 1ac9e8fa
      Nikhil Kak 提交于
      1ac9e8fa
    • N
  7. 01 4月, 2016 2 次提交
    • X
      Migrate olap_group tests to ICG [#116156843] · f84308c3
      Xin Zhang 提交于
      Signed-off-by: NXin Zhang <xzhang@pivotal.io>
      f84308c3
    • J
      Fix gp_default_storage_options GUC master/segment value conflict. · b11fc6d5
      Jimmy Yih 提交于
      The gp_default_storage_options GUC had two scenarios in which the value between
      master and segments could be conflicting which would cause tables to possibly
      have different storage parameters between master and segments.
      
      First Scenario:
      The below gpconfig example would give newly created user tables a default storage
      parameter of AO on segments while master sets the table as heap. Fixed by not
      allowing the user to make them different values.
      gpconfig -c gp_default_storage_options -v "'appendonly=true'" -m "'appendonly=false'"
      
      Second Scenario:
      During a psql session not in transaction, a session-level gp_default_storage_options
      GUC value can be set which will also be dispatched to segment processes. Those
      segment processes when idle for a period of time will be stopped and the next SQL
      (e.g. CREATE TABLE) will spawn new segment processes which will not have the
      session-level GUC value set. Fixed by setting the value at cdbgang creation.
      b11fc6d5
  8. 31 3月, 2016 2 次提交
    • D
      Use finegrained .out ignoring in the output directory .gitignores · c550b9ca
      Daniel Gustafsson 提交于
      We already had a mostly up to date list in the directory specific
      .gitignore files but the toplevel .gitignore contained a *.out
      which took precedence (lower level files override higher level
      files so removing *.out will allow for the src/test/regress/* files
      to override the now removed .out file blocking). The reason for
      not ignoring *.out is that we have quite a few tracked .out files
      in the repository which we don't want to ignore changes to.
      
      Also update the files to match the current set of tests since there
      were a few missing.
      c550b9ca
    • A
      Making available array functions back ported from PG 8.4 · e81df1d2
      Andreas Scherbaum 提交于
      Fixing the issue #482 with missing pg_proc references to the array manipulation
      functions. This PR also back ports the regression tests for arrays from PG 8.4
      e81df1d2
  9. 30 3月, 2016 1 次提交
  10. 28 3月, 2016 4 次提交
    • K
      Fix TupleDesc leak when COPY partition table from file, and improve · 5d9f7b46
      Kenan Yao 提交于
      the cleanup of EState
      5d9f7b46
    • E
      Fix DML_over_joins non-deterministic expected error condition. · 04c194d8
      Ed Espino 提交于
      Below is the error condition that was being filtered by the cdbfast test
      framework.  I have added an ignore section around the update that is
      expected to fail in the planner scenario.
      
      *** ./expected/DML_over_joins.out2016-03-27 16:44:49.000000000 -0700
      --- ./results/DML_over_joins.out2016-03-27 16:44:49.000000000 -0700
      ***************
      *** 1342,1348 ****
      (2 rows)
      
      update sales_par set region = 'new_region' where id in (select s.b from s, r where s.a = r.b) and day in (select a from r);
      ! ERROR:  moving tuple from partition "sales_par_1_prt_usa" to partition "sales_par_1_prt_other_regions" not supported
      select sales_par.* from sales_par where id in (select s.b from s, r where s.a = r.b) and day in (select a from r);
      id | year | month | day | region
      ----+------+-------+-----+--------
      --- 1342,1348 ----
      (2 rows)
      
      update sales_par set region = 'new_region' where id in (select s.b from s, r where s.a = r.b) and day in (select a from r);
      ! ERROR:  moving tuple from partition "sales_par_1_prt_europe" to partition "sales_par_1_prt_other_regions" not supported
      select sales_par.* from sales_par where id in (select s.b from s, r where s.a = r.b) and day in (select a from r);
      id | year | month | day | region
      ----+------+-------+-----+--------
      
      ======================================================================
      04c194d8
    • E
      Resolve #572: Migrate list_queries sirv_functions to ICG. · 28601ac4
      Ed Espino 提交于
      This enhances the existing "sirv_functions" ICG tests.  This is
      accomplished by migrating the cdbfast regression "list_queries" test
      schedule's "sirv_functions" test suite to ICG.
      
      Here are some characteristics of the test suite:
      
        Schedule file: greenplum_schedule
        Schema: sirv_functions
        Set to run in parallel: yes
        Orca specific test output: no
        Test execution time: <1 minute
        Pivotal Tracker Story: #113967799
      28601ac4
    • E
      Resolve #571: Migrate list_queries DML_over_joins to ICG. · 8b4c3de2
      Ed Espino 提交于
      Migrate the cdbfast "list_queries" test schedule "DML_over_joins" to
      ICG.
      
      Here are some characteristics of the test suite:
      
        Schedule file: greenplum_schedule
        Schema: DML_over_joins
        Set to run in parallel: yes
        Orca specific test output: yes
        Test execution time: <1 minute
        Pivotal Tracker Story: #113967799
      8b4c3de2
  11. 26 3月, 2016 1 次提交
  12. 25 3月, 2016 3 次提交
    • H
      Fix the PR #518: arrays of composite types · 25cd73c6
      Haozhou Wang 提交于
      - unify source-code of #518 commit according to upstream
      - add regression tests (previously stored in TINC)
      - fix parameter type of the function AddNewRelationType()
      
          Thanks to Heikki Linnakangas for suggesting
      25cd73c6
    • A
      Default estimates for missing stats [#115534065] · e0409357
      Atri Sharma 提交于
      Change behaviour to use default estimates for relation size
      for cases when no statistics are available.
      
      This avoid having heavy statstistics computation as part
      of query compilation.
      
      Customer can explicitly using ANALYZE to compute the stats
      before running queries to use more accurate stats instead
      of default statistics.
      
      Currently, the default size of table is:
      - Internal table: 100 pages
      - External table: 1000 pages
      Signed-off-by: NXin Zhang <xzhang@pivotal.io>
      e0409357
    • J
      Add more filespace/tablespace tests to installcheck. · 23ab1bd5
      Jimmy Yih 提交于
      This commit adds more filespace and tablespace test coverage in installcheck.
      Most of these test additions are modified and inspired from Pivotal's own
      internal tests.
      23ab1bd5
  13. 24 3月, 2016 4 次提交
  14. 23 3月, 2016 4 次提交
  15. 22 3月, 2016 4 次提交
    • H
      Support explicit cast for ARRAY[] constructor · 3ab62529
      Haozhou Wang 提交于
      Backport below commits from upstream:
      
          commit adac22bf
          Author: Tom Lane <tgl@sss.pgh.pa.us>
          Date:   Fri Dec 19 05:04:35 2008 +0000
      
              When we added the ability to have zero-element ARRAY[] constructs by adding an
              explicit cast to show the intended array type, we forgot to teach ruleutils.c
              to print out such constructs properly.  Found by noting bogus output from
              recent changes in polymorphism regression test.
      
          commit 30137bde6db48a8b8c1ffc736eb239bd7381f04d
          Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
          Date:   Fri Nov 13 19:48:26 2009 +0000
      
              A better fix for the "ARRAY[...]::domain" problem. The previous patch worked,
              but the transformed ArrayExpr claimed to have a return type of "domain",
              even though the domain constraint was only checked by the enclosing
              CoerceToDomain node. With this fix, the ArrayExpr is correctly labeled with
              the base type of the domain. Per gripe by Tom Lane.
      
          commit 6b0706ac
          Author: Tom Lane <tgl@sss.pgh.pa.us>
          Date:   Thu Mar 20 21:42:48 2008 +0000
      
              Arrange for an explicit cast applied to an ARRAY[] constructor to be applied
              directly to all the member expressions, instead of the previous implementation
              where the ARRAY[] constructor would infer a common element type and then we'd
              coerce the finished array after the fact.  This has a number of benefits,
              one being that we can allow an empty ARRAY[] construct so long as its
              element type is specified by such a cast.
      
      Besides, this commit also adds 'location' field in array related
      structures, but they are not actived yet. Thanks to Heikki's suggestion.
      3ab62529
    • A
      Make data directory and TCP ports for demo cluster configurable on the fly · fd2e045f
      Andreas Scherbaum 提交于
      The data directory and the TCP ports can be changed when "make cluster" is
      executed to build the demo cluster:
      
      DATADIRS=/tmp/gpdb-cluster MASTER_PORT=15432 PORT_BASE=25432 make cluster
      
      This fixes #441 and #442
      
      Also make the TCP port for the regression tests configurable.
      fd2e045f
    • F
    • F