1. 16 5月, 2019 7 次提交
  2. 15 5月, 2019 2 次提交
    • H
      Don't set SSL cipher list for libcurl · 176c84ed
      Huiliang.liu 提交于
      The default libcurl on centos7 uses NSS SSL library instead of OPENSSL.
      GPDB with that libcurl will report "Unknown cipher in list: AES128-SHA"
      on connecting gpfdist SSL server.
      Actually, we don't have to set cipher list in GPDB. It may choose stronger
      cipher on negotiation. So remove setting cipher list.
      
      Patch back to 6X_STABLE
      176c84ed
    • H
      Shutdown gpfdist SSL connection gracefully · 0d60da9c
      Huiliang Liu 提交于
      GPDB uses libcurl-gnutls.so.4 as default libcurl on ubuntu. gpfdist SSL
      connection reports error (56 - Failure when receiving data from the peer)
      on handling POST message. We find it shutdown socket directly without sending
      close_notify to client. So we call SSL_shutdown() before socket shutdown.
      
      But SSL_accept() will return error with above patch on Centos, because
      GPDB curl reuses SSL session ID in the second client hello, but server considers
      that session is shutdown, so it won't accept that session ID.
      The solution is disabling SSL session ID cache by setting curl option.
      Then both Centos and ubuntu work well.
      
      Enable gpfdist SSL test case.
      
      Patch back to 6X_STABLE
      0d60da9c
  3. 14 5月, 2019 7 次提交
  4. 13 5月, 2019 2 次提交
  5. 11 5月, 2019 3 次提交
    • V
    • L
      docs - add pageinspect module landing page (#7407) · 9fa00ba7
      Lisa Owen 提交于
      * docs - add pageinspect module landing page
      
      * remove peer scope
      
      * cannot inspect ao or external relations
      9fa00ba7
    • J
      Reinstate strictness of int4_avg_combine · 3f111c5c
      Jesse Zhang 提交于
      The "combine" function for the int4 sum/avg aggregate functions is
      backported to Greenplum 6.0 in commit 313cef6e (from
      postgres/postgres@11c8669c0cc) but we made the inevitable omission of
      setting the "strictness" of int4_avg_combine to false. This by itself is
      harmless as the actual function body *does* guard against NULL input,
      but it also prohibits a whole host of optimizations when the executor
      and planner can detect NULL input early on and short-circuit the
      execution. Oops.
      
      This patch flips the `proisstrict` flag back to true for
      int4_avg_combine.
      
      Backpatch to 6X_STABLE.
      
      (cherry picked from commit c334bedc)
      3f111c5c
  6. 10 5月, 2019 5 次提交
    • P
      Hold AccessShareLock in pg_get_expr() · 755a2e80
      Pengzhou Tang 提交于
      In pg_get_expr(), after getting the relname, if the table that the relid tells
      is dropped, an error will raise later when opening the relation to get column
      names.
      
      pg_get_expr() is used by GPDB add-on view 'pg_partitions' which is widely used
      by regression tests for partition tables. Lots of parallel test cases issue view
      pg_partitions and drop partition tables concurrently, so those cases are very
      flaky. Serialize test cases will cost more testing time and be fragile, so GPDB
      holds a AccessShareLock here to make tests stable.
      755a2e80
    • L
      fix link xml->html (#7656) · 87a4f0b7
      Lisa Owen 提交于
      87a4f0b7
    • S
      Introduce GUC optimizer_enable_dml · 057467b6
      Sambitesh Dash 提交于
      optimizer_enable_dml is set to true by default. When set to false, ORCA will
      fall back to planner for all DML queries.
      057467b6
    • L
      docs - add to pxf upgrade procedure (v5.0.1 to v5.3.2) (#7628) · e9c02c87
      Lisa Owen 提交于
      * docs - add to pxf upgrade procedure (v5.0.1 to v5.3.2)
      
      * remove extraneous to
      e9c02c87
    • D
      Properly capitalize productname · 89f4f1dc
      Daniel Gustafsson 提交于
      When referring to the product name and not a database instance running
      Greenplum, the capitalization should be "Greenplum Database".
      89f4f1dc
  7. 09 5月, 2019 13 次提交
  8. 08 5月, 2019 1 次提交
    • N
      Fix motion hazard between outer and joinqual · d2ebd408
      Ning Yu 提交于
      A motion hazard is a deadlock between motions, a classic motion hazard
      in a join executor is formed by its inner and outer motions, it can be
      prevented by prefetching the inner plan, refer to motion_sanity_check()
      for details.
      
      A similar motion hazard can be formed by the outer motion and the join
      qual motion.  A join executor fetches a outer tuple, filters it with the
      join qual, then repeat the process on all the outer tuples.  When there
      are motions in both outer plan and the join qual then below state is
      possible:
      
      0. processes A and B belong to the join slice, process C belongs to the
         outer slice, process D belongs to the JoinQual slice;
      1. A has read the first outer tuple and is fetching tuples from D;
      2. D is waiting for ACK from B;
      3. B is fetching the first outer tuple from C;
      4. C is waiting for ACK from A;
      
      So a deadlock is formed A->D->B->C->A.  We can prevent it also by
      prefetching the join qual.
      Reviewed-by: NJesse Zhang <jzhang@pivotal.io>
      Reviewed-by: NGang Xiong <gxiong@pivotal.io>
      Reviewed-by: NZhenghua Lyu <zlv@pivotal.io>
      
      (cherry picked from commit fa762b69)
      d2ebd408