1. 13 8月, 2020 1 次提交
  2. 23 1月, 2020 1 次提交
    • M
      cross-subnet: fix replication on cross-subnet Greenplum Clusters · 79637980
      Mark Sliva 提交于
      The four CM utilities gpinitsystem, gpinitstandby, gpaddmirrors, and
      gpmovemirrors now have the relevant pg_hba.conf entries to allow WAL
      replication to mirrors from their respective primaries across subnets.
      
      There are two parts to this commit:
      1). modify the CM utilities to add the pg_hba.conf entries to
      allow WAL replication to mirrors across a subnet.
      2). test the relevant CM utilities across subnets
      
      The previous pg_hba.conf replication entry:
          'host replication $USER samenet trust'
      does not allow WAL replication connections across subnets. We keep this entry
      in order to support single-host development. We then add one replication line
      for each primary and mirror interface address to new primaries and mirrors to
      allow this. It looks like:
          'host replication $USER $IP_ADDRESS trust'
          or when HBA_HOSTNAMES=1
          'host replication $USER $HOSTNAME trust'
      Further, if there is ever a failover and subsequent promotion,
      replication connections can be made to the newly promoted primary from the host
      on which the previous primary failed, because those addresses get copied over
      to the new mirror during a pg_base_backup. We also add similar logic to support
      cross-subnet replication between the master and standby. This behavior is
      tested in the cross_subnet behave tests.
      
      The cross_subnet behave tests assert that the replication connection is valid
      by manually making the connection in addition to relying on segments being
      synchronized, as a way to ensure that the pg_hba.conf file is being used.
      Co-authored-by: NJacob Champion <pchampion@pivotal.io>
      Co-authored-by: NAdam Berlin <aberlin@pivotal.io>
      Co-authored-by: NBhuvnesh Chaudhary <bchaudhary@pivotal.io>
      Co-authored-by: NKalen Krempely <kkrempely@pivotal.io>
      Co-authored-by: NDavid Krieger <dkrieger@pivotal.io>
      Co-authored-by: NJamie McAtamney <jmcatamney@pivotal.io>
      79637980
  3. 24 10月, 2019 2 次提交
    • M
      Refactor gpinitsystem exit status to return only 0 or 1 · 484807c8
      Mark Sliva 提交于
      Exit with status 1 when dependencies cannot be sourced. Previously,
      it was still returning 2 when dependencies could not be sourced.
      
      Also updated the help text to document only exit codes 0 and 1.
      
      Add tests for the user confirmation dialog that check empty, y, and no.
      
      Add gpinitsystem to after_scenario tags_to_skip since gpstop fails,
      in order to speed up our failure test cases.
      Co-authored-by: NShoaib Lari <slari@pivotal.io>
      484807c8
    • M
      gpinitsystem: Return 0 on warnings · d7b7a40a
      Mark Sliva 提交于
      Previously gpinitsystem returned 1 in case of warngings (2 in case of
      errors). We have changed gpinitsystem to return 0 for warnings so that other
      tools using gpinitsystem (such as gpupgrade) will not fail when gpinitsystem
      generates warnings.
      
      Also, gpinitsystem was exiting with non-zero return code if certain errors or
      warnings had happened on any previous run of gpinitsystem that day. This has
      also been fixed in this commit
      Co-authored-by: NKalen Krempely <kkrempely@pivotal.io>
      Co-authored-by: NShoaib Lari <slari@pivotal.io>
      d7b7a40a
  4. 24 7月, 2019 1 次提交
  5. 10 7月, 2019 1 次提交
  6. 05 7月, 2019 1 次提交
    • H
      Re-enable gppkg behave test for both centos and ubuntu (#8066) · af73aca6
      Hao Wu 提交于
      * Revert "CI: skip CLI behave tests that currently fail on ubuntu18.04"
      
      This reverts commit 6a0cb2c6.
      This commit is to re-enable behave test for centos/ubuntu
      
      * Ouput the same error message format
      
      gppkg for rpm and deb outputs error messages when consistency is broken, but
      the message is not the same, which make a pipeline fail.
      
      * Update gppkg for behave test and fix some minor error in gppkg
      
      Now, the binary sample.gppkg is removed, instead we add sample-*.rpm and sample-*.deb.
      Because sample.gppkg is platform specific and GP major version sensitive. The uploaded
      rpm/deb files are available unless the rpm/deb file is incompatible on the specific
      platform. GP_MAJORVERSION is dynamically retrieved from a makefile installed in the gpdb
      folder, so the gp major version in the gppkg will be always correct.
      sample.gppkg will only be generated when gppkg tag is provided
      af73aca6
  7. 21 6月, 2019 1 次提交
  8. 21 5月, 2019 1 次提交
  9. 17 5月, 2019 1 次提交
  10. 25 4月, 2019 1 次提交
  11. 19 4月, 2019 2 次提交
  12. 21 3月, 2019 1 次提交
    • J
      add gpmovemirrors behave tests · fdf8b611
      Jamie McAtamney 提交于
      We add gpmovemirrors tests and add them to the pipeline as well.
      Using behave tags, some of the tests can run locally on a demo
      cluster.  We also introduce Behave tag logic to choose which
      tests to run.
      
      <Co-Authored-By> Kalen Krempely <kkrempely@pivotal.io>
      <Co-Authored-By> Mark Sliva <msliva@pivotal.io>
      fdf8b611
  13. 30 1月, 2019 1 次提交
    • J
      gpstate: add behave tests · 825c7d93
      Jacob Champion 提交于
      Acceptance tests for gpstate were lacking, making it difficult to prove
      that the previous commit didn't break anything. Start remedying that
      here -- these tests are not exhaustive by any means, but they're a good
      start.
      
      The new Concourse job is called "gpstate".
      
      The new (or modified) behave steps are as follows:
      
        - "user kills all {type} processes [with {signal}]"
      
          This step previously worked only with primary processes, and would
          only send SIGKILL. It now allows either primary or mirror to be
          specified, along with the specific signal to be sent. If no signal
          is specified, SIGTERM will be sent.
      
        - "a standard local demo cluster is created"
      
          This step creates a standard 3 content demo cluster with mirrors and
          master standby.
      
        - "a standard local demo cluster is running"
      
          This step checks that a standard demo cluster as defined above
          is currently running. If it is not, it creates one. This leads to a
          speed improvement in the tests that use this step.
      Co-authored-by: NMark Sliva <msliva@pivotal.io>
      Co-authored-by: NJamie McAtamney <jmcatamney@pivotal.io>
      825c7d93
  14. 17 5月, 2018 1 次提交
  15. 15 5月, 2018 1 次提交
    • N
      gpaddmirrors: changes for WAL replication · e9c66f27
      Nadeem Ghani 提交于
      Prior to this commit, gpaddmirrors was missing two bits of work which
      were previously done by gpinitsystem/gpcreateseg. When adding mirrors to
      a cluster, the pg_hba.conf on primary segments has to be modified to
      allow replication connections, e.g. for pgbasebackup. And after the
      mirrors are built, the catalog has to be updated to reflect the new
      cluster config.
      Co-authored-by: NNadeem Ghani <nghani@pivotal.io>
      Co-authored-by: NJim Doty <jdoty@pivotal.io>
      e9c66f27
  16. 02 5月, 2018 1 次提交
  17. 23 8月, 2017 1 次提交
  18. 11 7月, 2017 1 次提交
    • N
      Adapt pexpect override to handle delays up to 10 second · f7aa215a
      Nadeem Ghani 提交于
      Workaround a problem discovered by a client that noticed intermittent errors for gpssh when some nodes became very cpu-bound.
      
      In particular, we override the way the ssh command prompt is validated
      on a remote machine, within gpssh. The vendored module 'pexpect' tries to match 2 successive prompts
      from an interactive bash shell.  However, if the target host is slow from
      CPU loading or network loading, these prompts may return late.
      
      In that case, the override retries several times, extending the timeout from the
      default 1 second to up to 125 times that duration.
      
      Experimentally, these added retries seem to tolerate about 1 second delay, testing with a 'tc' command that slows network traffic artificially.
      
      The number of retries can be configured.
      
      --add unit tests to verify happy path of ssh-ing to localhost
      --add module for gpssh, for overriding pexpect (pxxssh)
      --add readme to describe testing technique using 'tc' to delay network
      Signed-off-by: NLarry Hamel <lhamel@pivotal.io>
      f7aa215a
  19. 11 4月, 2017 1 次提交
  20. 17 1月, 2017 3 次提交
  21. 16 11月, 2016 1 次提交
  22. 12 1月, 2016 1 次提交
    • H
      Add minirepro to let user dump minimal set of DDL and statistics for a given query · bc8726ad
      Haisheng Yuan 提交于
      Usage: minirepro <database> [options]
      
      Options:
        --version             show program's version number and exit
        -?, --help            Show this help message and exit
        -h HOST, --host=HOST  Specify a remote host
        -p PORT, --port=PORT  Specify a port other than 5432
        -U USER, --user=USER  Connect as someone other than current user
        -q QUERY_FILE         file name that contains the query
        -f OUTPUT_FILE        minirepro output file name
      
      Closes #157.
      bc8726ad
  23. 28 10月, 2015 1 次提交