Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: postgresml/pgcat
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 502638710d8eaa6c3df3a5f80754f18870e29428
Choose a base ref
...
head repository: postgresml/pgcat
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 99871c65f05143bf067d1a0da7ab38aa761c3057
Choose a head ref
  • 4 commits
  • 17 files changed
  • 3 contributors

Commits on Feb 21, 2023

  1. implement show users (#329)

    * implement show users
    
    * fix compile errors
    
    * add basic ruby test
    
    * gitignore things
    dat2 authored Feb 21, 2023
    Configuration menu
    Copy the full SHA
    37e1c52 View commit details
    Browse the repository at this point in the history

Commits on Feb 22, 2023

  1. Fix Back-and-forth RELOAD Bug (#330)

    We identified a bug where RELOAD fails to update the pools.
    
    To reproduce you need to start at some config state, modify that state a bit, reload, revert the configs back to the original state, and reload. The last reload will fail to update the pool because PgCat "thinks" the pool state didn't change.
    
    This is because we use a HashSet to keep track of config hashes but we never remove values from it.
    Say we start with State A, we modify pool configs to State B and reload. Now the POOL_HASHES struct has State A and State B. Attempting to go back to State A will encounter a hashset hit which is interpreted by PgCat as "Configs are the same, no need to reload pools"
    
    We fix this by attaching a config_hash value to ConnectionPool object and we calculate that value when we create the pool. This eliminates the need for a global variable. One shortcoming here is that changing any config under one user in the pool will trigger a reload for the entire pool (which is fine I think)
    drdrsh authored Feb 22, 2023
    Configuration menu
    Copy the full SHA
    75a7d44 View commit details
    Browse the repository at this point in the history

Commits on Feb 23, 2023

  1. Add dns_cache so server addresses are cached and invalidated when DNS…

    … changes.
    
    Adds a module to deal with dns_cache feature. It's
    main struct is CachedResolver, which is a simple thread safe
    hostname <-> Ips cache with the ability to refresh resolutions
    every `dns_max_ttl` seconds. This way, a client can check whether its
    ip address has changed.
    magec committed Feb 23, 2023
    Configuration menu
    Copy the full SHA
    a5bcc34 View commit details
    Browse the repository at this point in the history
  2. Allow reloading dns cached

    magec committed Feb 23, 2023
    Configuration menu
    Copy the full SHA
    99871c6 View commit details
    Browse the repository at this point in the history
Loading