2020.09.0 Release
Docker tag: quay.io/pganalyze/enterprise:v2020.09.0
Notes
- This release requires a database migration when coming from older releases, be sure to follow the recommended upgrade steps
New features
- Add search filter for VACUUM history list
- Add search filter for per-table queries list
- Show top 5 databases in database list only
- Improves situations where a single server has a lot of databases (and the navigation becomes unusable)
- This list remembers the last 5 databases viewed for a particular server, and shows these in the navigation
- All other databases can be accessed through a separate link to the per-server database list
- Show additional information about partitioned tables
- Date picker: Accept default Postgres timestamp format in timestamp input
- Add collector helper
pganalyze.explain(...)
for log-based EXPLAIN access and use if available- This lets us avoid granting the pganalyze user any access to the data to follow the principle of least privilege
- See https://github.com/pganalyze/collector#setting-up-log-explain-helper
Bugfixes
- EXPLAIN plans
- Don't try to convert JSON explain to text when error present
- Surface log-based EXPLAIN permission errors
- Locked relations: Ignore table statistics, handle other exclusive locks
- Avoid corrupted snapshots when OIDs get reused across databases
- This would have shown as data not being visible in pganalyze, particularly for servers with many databases where tables were dropped and recreated often
Performance improvements
- Improve data model for snapshots table
- Add index to speed up finding the highest severity issue on a database
- Improve performance of query details pages
Security improvements
- Multiple security updates to Node.js modules used during web asset generation
- Whilst pganalyze currently doesn't use Node.js at runtime, these modules might have shown up in security scanners and raise unnecessary warnings
Other changes
- Update to Ruby 2.7.1
- Improve EXPLAIN integration checklist
- Fail fast when
LOG_ENCRYPTION_KEY
is configured incorrectly
Couldn't find what you were looking for or want to talk about something specific?
Start a conversation with us →