1. 03 3月, 2017 1 次提交
  2. 02 3月, 2017 1 次提交
    • H
      Add a GUC, to produce a message at INFO level when ORCA falls back. · fff8e621
      Heikki Linnakangas 提交于
      We have a bunch of existing tests that test whether ORCA falls back. They
      set optimizer_log_failure='all' and client_min_messages='log', and grep
      the output for "Planner" or "Planner produced plan". That's error-prone.
      
      This new GUC makes that kind of tests easier and more robust. You can
      simply set the GUC, and if there are no extra INFO messages in the output,
      ORCA didn't fall back.
      fff8e621
  3. 28 2月, 2017 4 次提交
    • D
      Remove duplicated GUC definition · 4ef760c5
      Daniel Gustafsson 提交于
      Handling of gp_reject_internal_tcp_conn was defined twice in the
      GUC file, remove one.
      4ef760c5
    • D
      Remove unused GUCs · 8464af83
      Daniel Gustafsson 提交于
      These GUCs were all only defined in the GUC file and completely
      Aunused in the code, probably leftovers from when the original
      code using them was removed. Now remove the GUCs.
      8464af83
    • D
      Remove unused debugging timeout in relcache · 602bfa8f
      Daniel Gustafsson 提交于
      Debug_gp_relation_node_fetch_wait_for_debugging was added to assist
      debugging an issue in the RelationFetchGpRelationNodeForXLog recursion
      guard. The bug was not reproduced but the GUC was left in when the
      ticket was closed so remove. If we need to debug this in the future
      we should add something back then.
      602bfa8f
    • D
      Fix typos in comments and elogs · 63a54605
      Daniel Gustafsson 提交于
      The error messages are developer or debug facing, no reason to
      believe this will break anyones regexing of logfiles in prod.
      63a54605
  4. 26 2月, 2017 4 次提交
    • D
      Remove extended ALTER TABLE INHERIT syntax · 3e90e6a9
      Daniel Gustafsson 提交于
      The gp_enable_alter_table_inherit_cols GUC was used to allow a list
      of columns to override the attribute discovery for inheritance in
      ALTER TABLE INHERIT. According to code comments the only consumer
      of this was gpmigrator, but no callsite remains and no support in
      pg_dumpall remains either. Remove the leftovers of this to avoid a
      potential footgun and get us closer to upstream code.
      3e90e6a9
    • D
      Remove gp_external_grant_privileges · 1e20c783
      Daniel Gustafsson 提交于
      The gp_external_grant_privileges GUC was needed before 4.0 to let
      non superusers create external tables for gphdfs and http protocols.
      This GUC was however deprecated during the 4.3 cycle so remove all
      traces of it. The utility of the GUC was replaced in 4.0 when rights
      management for external tables was implemented with the normal GRANT
      REVOKE framework so this has been dead code for quite some time.
      
      Remove GUC, code which handles it, all references to it from the
      documentation and a release notes entry.
      1e20c783
    • D
      Remove deprecated memory control GUCs · 8442a4dc
      Daniel Gustafsson 提交于
      The gp_eager_hashtable_release GUC was deprecated in version 4.2
      in 2011 when the generic eager free framework was implemented. The
      leftover gp_eager_hashtable_release was asserted to be true and
      never intended to be turned off. The same body of work deprecated
      the max_work_mem setting which was bounding the work_mem setting.
      While not technically tied to eager hashtable release, remove as
      well since it's deprecated, undocumented and not terribly useful.
      
      Relevant commit in closed source repo is 88986b7d
      8442a4dc
    • D
      Remove deprecated gp_hashagg_compress_spill_files GUC · 38922f15
      Daniel Gustafsson 提交于
      The gp_hashagg_compress_spill_files GUC was deprecated in 2010 when
      it was replaced by gp_workfile_compress_algorithm. The leftovers
      haven't done anything for quite some time so remove GUC.
      
      Relevant commit in closed source repo is c1ce9f03
      38922f15
  5. 14 2月, 2017 1 次提交
    • H
      Remove defunct gp_hash_index GUC. · 9e27fbd3
      Heikki Linnakangas 提交于
      It hasn't done anything since 2010. If I'm reading the commit log
      correctly, it was added and deprecated only a few months apart, and
      probably hasn't done anything in any released version.
      9e27fbd3
  6. 09 2月, 2017 1 次提交
    • S
      Add GUC gp_allow_rename_relation_without_lock for renamerel(). · de4e95a6
      Shoaib Lari 提交于
      Originally, we don't hold AccessExclusiveLock while renaming relations to provide
      supportability for altering relation name while directly modifying system catalogs.
      
      However, this breaks the isolation semantics of ALTER TABLE. Hence, we add the lock
      to make it consistent with upstream behavior.  The original behavior is now
      possible with the GUC.
      Signed-off-by: NXin Zhang <xzhang@pivotal.io>
      de4e95a6
  7. 07 2月, 2017 2 次提交
  8. 24 1月, 2017 1 次提交
  9. 29 12月, 2016 1 次提交
  10. 21 12月, 2016 1 次提交
    • A
      Update SharedLocalSnapshot correctly for subtransactions · 46d9521b
      Ashwin Agrawal 提交于
      QE reader leverages SharedLocalSnapshot to perform visibility checks. QE writer
      is responsible to keep the SharedLocalSnapshot up to date. Before this fix,
      SharedLocalSnapshot was only updated by writer while acquiring the snapshot. But
      if transaction id is assigned to subtransaction after it has taken the snapshot,
      it was not reflected. Due to this when QE reader called
      TransactionIdIsCurrentTransactionId, it may get sometimes false based on timings
      for subtransaction ids used by QE writer to insert/update tuples. Hence to fix
      the situation, SharedLocalSnapshot is now updated when assigning transaction id
      and deregistered if subtransaction aborts.
      
      Also, adding faultinjector to suspend cursor QE reader instead of guc/sleep used
      in past. Moving cursor tests from bugbuster to ICG and adding deterministic test
      to exercise the behavior.
      
      Fixes #1276, reported by @pengzhout
      46d9521b
  11. 15 12月, 2016 1 次提交
  12. 13 12月, 2016 1 次提交
    • A
      Refactor distributed transaction phase 2 retry logic. · c6320c13
      Asim R P 提交于
      Refactor the phase 2 retry logic of distributed transaction so that the retry happens
      immediately after failure instead of happening inside EndCommand(). The patch also
      increases the number of retries in case of failure to 2 and introduces a guc called
      dtx_phase2_retry_count to control the number of retries.
      c6320c13
  13. 09 12月, 2016 1 次提交
  14. 22 11月, 2016 1 次提交
  15. 11 11月, 2016 1 次提交
    • D
      Tidy up spelling of email GUC descriptions · 734b03f3
      Daniel Gustafsson 提交于
      Fix wording for gp_email_to GUC and clarify the expected separator
      for the list (as it has changed).  Also use email rather than e-mail
      to be consistent with the online Greenplum documentation.
      734b03f3
  16. 02 11月, 2016 2 次提交
    • H
      Disable write support for old-format AO table segments. · 53210fb2
      Heikki Linnakangas 提交于
      Segments that are still in an old format are treated as read-only. All new
      data go to new segments, in new format. This allows us to eventually get
      rid of the old format completely.
      
      This is hypothetical until we have pg_upgrade working for GPDB 4.3 -> 5.0
      upgrade, as you can't have old-format tables or segments at all in a
      cluster that's initialized with 5.0. Stay tuned for pg_upgrade, but this
      is preparatory work for that.
      53210fb2
    • F
      Process interrupts before reserving VMEM (#1257) · 5a6f9316
      foyzur 提交于
      * Adding support for interrupt processing before reserving more vmem.
      
      * Process pending interrupts before reserving VMEM.
      
      * Adding guc to control vmem tracker checking for interrupts before reserving more vmem.
      5a6f9316
  17. 20 10月, 2016 1 次提交
    • A
      Leverage native heap delete mechanism for persistent tables. · 5bc4bb0c
      Ashwin Agrawal 提交于
      Persistent tables historically implemented different mechanism
      to maintain free tuples by using on-disk freelist chain of itself.
      It proved extremely hard to maintain this free-list and required
      lot of supporting code to maintain and validate its integrity.
      Hence this commit leverages the native heap delete and vacuum
      framework to manage tuple deletion for persistent tables as well.
      5bc4bb0c
  18. 08 10月, 2016 1 次提交
  19. 30 9月, 2016 2 次提交
  20. 23 9月, 2016 2 次提交
    • S
      Prevent inconsistent update to persistent info in relcache entry. · bef29242
      Shoaib Lari 提交于
      As part of creating a new relfile node, for example during reindex, the
      persistent TID and the serial number in the relation descriptor used to be
      updated with new values immediately.
      
      This commit prevents such updates leaving the description unchanged.  Instead,
      the relation descriptor will be udpated upon next cache invalidation.
      
      The new ICG test is added to its own file and not in gp_create_table.sql
      because reindex of pg_class index seems to affect planner, causing other tests
      to fail with "insufficient memory reserved for statement" error.
      bef29242
    • S
      Validate persistent information in relcache entry. · fe39e7eb
      Shoaib Lari 提交于
      We have observed that the persistent TID and serial number associated with a
      relfilenode in a relation descriptor may be updated to a new value before
      relfilenode is updated.  If an XLog record is written with such a relation
      descriptor, then the XLog record fails to apply during recovery.
      
      This commit adds a check to validate sanity of persistent information in a
      relation descriptor by fetching persistent information using relfilenode from
      gp_relation_node.
      
      The validation is controlled by a new GUC, gp_validate_pt_info_relcache.
      fe39e7eb
  21. 14 9月, 2016 1 次提交
  22. 10 9月, 2016 1 次提交
    • H
      Added a new GUC gp_enable_relsize_collection to enable stats collection. (#1110) · 0ea740cf
      Haisheng Yuan 提交于
      Currently, when the stats are not existing for a relation, planner
      relies on default values instead of running pg_relation_size to save
      time. However, this causes planner to produce bad plans. Earlier, the
      code had the feature to collect stats for planner if the table did not
      had any stats, but it was removed.
      
      This fix re-introduces the feature with the GUC to control whether to use
      default values or run pg_relation_size to get actual stats if stats are
      not present. By default, the GUC is turned off.
      
      [#129570829]
      0ea740cf
  23. 01 9月, 2016 1 次提交
  24. 31 8月, 2016 1 次提交
  25. 25 8月, 2016 2 次提交
    • H
      Remove gp_flush_buffer_pages_when_evicted GUC. · 668d4af8
      Heikki Linnakangas 提交于
      Looking at old git history, this was added back in 2009. The related
      ticket on adding it said:
      
          Add GUC that make every buffer page from the buffer pool flushed on
          eviction.
      
          Note that this will NOT necessarily flush all buffer pages when the
          postmaster is shutdown. I think this is acceptable for our purposes.
      
          (Our purpose is to make sure that overwrites of the buffer pages are not
          lost and instead are always written to disk so we can catch errors)
      
      I'm not sure what errors that was meant to catch, or how, but I don't
      think we have any regression tests or anything that uses it anymore.
      Let's remove it, to make merging with upstream easier.
      668d4af8
    • H
      Remove CaQL. · 1a2a02a6
      Heikki Linnakangas 提交于
      The previous commits have removed all usage of CaQL. It's no longer
      needed.
      1a2a02a6
  26. 18 8月, 2016 1 次提交
  27. 17 8月, 2016 1 次提交
    • A
      Add GUC to easily test appendonly writer hash eviction behavior · 73dc0ecb
      Ashwin Agrawal 提交于
      Currenty, there is no easy way to evict entry from appendonly writer hash
      table, most of current tests reduce the value of max_appendonly_tables which
      needs database restart to take effect and then need to actually create that
      many concurrent AO table inserts to evict the hash table entry. Using this
      GUC can easily tests the eviction behavior.
      73dc0ecb
  28. 10 8月, 2016 1 次提交
    • M
      Adds a GUC to enable array constraint derivation. · 8ba520bd
      Marc Spehlmann 提交于
      This fixes the naming in c85f858e
      
      A new feature of ORCA is to more efficiently handle array constraints.
      It includes a new preprocessing stage, and a new way of internally
      representing array constraints. This feature can be enabled by use of
      this GUC.
      8ba520bd
  29. 09 8月, 2016 1 次提交
    • M
      Adds a GUC to enable array constraint derivation. · c85f858e
      Marc Spehlmann 提交于
      A new feature of ORCA is to more efficiently handle array constraints.
      It includes a new preprocessing stage, and a new way of internally
      representing array constraints. This feature can be enabled by use of
      this GUC.
      c85f858e