PgCon 2024 Developer Meeting
From PostgreSQL wiki
Jump to navigationJump to searchMinutes
Rough, I (Andres) was delegated this because I was a few minutes late :)
Operations and Governance - Jonathan Katz
- Lots of committees aren't known even by people involved in the project
- Joe Conway plans to create a committee website
- Lots of independently moving parts of the project
- partially intentionally done that way, for resilience to takeover
- also an obstruction to transparency
- Teams:
- Core Team - "last resort", conflicts etc
- Committers - code obviously, plenty policy around that
- Pginfra - manages all the postgres infrastructure, servers for git etc
- Code of Conduct Committee - Deal with violations of the CoC
- Security 0 deal with security issues in our code
- CNA we can now assign our own CVEs
- Release - manage releases of postgres
- RMT
- Press
- Translators
- Packaging - build binary packages of postgres
- Press
- Planet
- pg.org moderation
- pgweb
- twitter etc
- Contributors team
- Funds
- Google Summer of Code (GSoC)
- PGCA - Trademark etc
- Postgres Women
- Funds Groups
- Events Canada, organizing this conference
- I missed transcribing some, Jonathan missed listing some
- Amazing that it works, but it also often doesn't
- Robert: Really important to have list public, for volunteers to be able to oin
- Karen Jax: staffing, not manning teams
- Joe: Quick recap of the plans for listing of the teams on the website
- some teams already have pages, but there's no coherent way to find those
- have index with brief description and links to pages
Core Team - Tom Lane
- At Berkeley, Postgres then Postgres 95, a few outside users
- Marc Fournier volunteered to host development
- Initial Core Team:
- 1996:
- Mark Fournier
- Bruce Mojian
- Bryan Henderson
- 1998:
- Jan Wiek
- Tom Lane
- 1996:
- Initially did nearly all the work
- Early additional responsibility:
- releases
- infrastructure
- committter selection
- Additional responsibility
- Liaison
- Security
- Trademark
- really because ther wasn't anybody else
- Core never did:
- Website
- Advocacy
- Fundraising
- 2000: Landmark / Great Bridge
- started a postgres services company
- closed in .com bust
- Asked: How can this be done well with the community?
- Not enough bandwidth / experience in core *> delegate
- Delegate:
- security, in 2007
- pginfra, in 2011
- took over more incrementally
- Tom doesn't remember all the details
- some small preexisting responsibilities
- Trademark issues
- PgCAC, formally incorporated NPO
- Release, in 2015
- are we ready
- do we need to release
- about 2017 we switch to time based releases, for both minor and major releases
- RMT, in 2016
- Committter selection, in 2015
- private committers list
- CoC, in 2016
- initial idea was for core to do enforcement
- now CoC does that
- One would think core doesn't have work after all that delegation
- Still lots of coordination / "cat herding"
- Important teams overlap with Core, CoCC is explicitly separate
- largely independent teams
- Advocacy
- Funds
- Questions:
- Stacey: Core is self selecting, plans to change that?
- Tom:
- Not currently
- Should definitely be long-term members for institutional memory
- Bruce: Takes a while to get there, we were looking for people a few times, didn't work out
- Robert: Self selecting is an issue, but not clear what the solution is
- Dave: It's hard to model something resilient against takeover
- Karen: At least we should be honest about this issue toward the community
- Heikki: Community is very concensus drive, hard to make decision, but also good to not piss off people. Core team has been decent at that.
- Tom: Policy that there is not more than 50% of one company
- Robert: Feels awkward to be "steered" by a something as opaque
- Tom:
- Stacey: Core is self selecting, plans to change that?
Slides: Core Team Update
Security Team - Noah
- 17 people
- receives reports of security issues
- issues come from three groups
- postgres devs
- people we haven't heard of, typically something operating automated scanner
- our mailing lists are public, you know?!?
- occasionally reports by "real" security researchers
- fixes developed by
- reports
- security team members
- "outsourcing program", to non-security member committers
- 7 security issues in the last year, one high risk one
- We are now a CNA
- CVEs are assigned for most vulnerabilities
- new: encouragement to become our own numbering authority
- why worthwhile: CVEs assigned by outside numbering authorities by other numbering authorities
- with CNA we're supposed to be asked first
- now can update metadata for old CVEs
- also now responsible for assigning CVEs in the wider postgres space
- also get asked about filling out security questionaire
- Question to audience: Problems with security model?
- Dave Cramer: Process more complicated than github's
- tarballs are released, commit messages mails are suppressed, but everyone can look at commits
- in theory we could make fix in private repo, like we did once before
- Dave Cramer: Process more complicated than github's
PostgreSQL Community Association - Steve Singer
Media:Pgconfdev-leadership-meeting.pdf
- Special purpose entitity to focus on intelectual property matters
- Maintain and protect assets (trademarks, domain names, not code)
- does not hold copyright on postgres code, held by individuals
- Canadian Not for Profit
- Board:
- Dave Page
- Steve Siunger
- Jonathan Katz
- Jaime Casanova
- Peter Eisentraut
- Marc Fournier
- self selecting membership, by board (past and present members)
- aware of issues around that
- Why:
- ensure fair use of PostgreSQL brand assets
- otherwise somebody else can call something postgres
- requires enforcement, otherwise trademark is abandoned and can't be enforced
- keep PG fre and open source
- Where:
- Canada
- US
- Europe
- How:
- controlled fair use allowed
- example: Brand names involving postgres need to be licensed
- standard license for templates, but often companies want modified terms
- Key Activities:
- Oppose Trademark Registrations
- some conflicts around that are public, others not
- Ask that the trademarks be used properly
- License where needed
- Oppose Trademark Registrations
- Highlights
- Fundacion PostgreSQL conclusion (after three years and lots of money)
- Trademark oppositions, cease & desists
- Donor Recognition Program
- Why private?
- public statement can have legal consequences, need to be reviewed by lawyers, costs money for review
- rather work amiciably, rather than public shaming, often succeeds
- some unlicensed uses are because we didn't have the time/money to do something about them
- Financial highlights:
- Net loss: CAD 11k
- Goal: Improve financials via Donor recognition program
- Various levels that grant public recognition
- Question:
Code of Conduct Committee - Eliza Benett
- Eliza is chair since 2014
- Overview of the last year
- Representation:
- 5 members, 3 male identifying, 2 female, plus chair
- geographic spread: 2 from Canada, 1 from Asial, one american in Asia, 1 from Europe
- Volunteers, selected by current members
- How can group size be increased
- Activity
- 8 complaints in 2023/24 (inappropriate conduct on community channels (2), at community events (2), non-community channel (3))
- Outcomes: no violation (3), out of scope (2), corrective recommended and taken (2), corrective action recommended (1)
- processing done by lead investigator, always with at least one other person
- [couldn't keep up]
- Trends:
- 2023/24 have been busy
- Complaints on social media, [couldn't keep up]
- Opportunities:
- need new members
- update CoC policy, hasn't bene updated significantly since introduction
- improve enforcement, appeals process
- inform community events about CoC existance / use of CoC[C]
- Revisions:
- Roles & responsibilities
- Scope clarification
- Appeals process
- Record sharing and retention, records exist since 2019 (unsure)
- Communication processes
- ....
- proposed timeline: Summer 2024, engegement on policy revisions, September: 2024, in effect
- Representation:
Slides: Code of Conduct Committee Update
Port report - Thomas Munro
- slides
- lots of platform that postgres used to run on, but doesn't anymore
- still support about 11 platforms
- most users on linux, some on windows, the rest probably miniscule
- Robert Haas and Devrim Gunduz think there are way more on windows than Thomas guessed
- Dave Page says some windows apps embed postgres
- Estimate about problem per platform, overwhelmingly windows
- Robert: Lots of it just perl crap
- Highlights:
- AIX was dropped in 2017, suddenly IBM folks appeared, rely on Postgres
- AIX is weird, unusual linker/object format
- Old OS versions in buildfarm
- Vendor compiler requires extra work
- some bugs got fixed
- HP-UX was dropped in 16
- no real complaints, one mention
- Solaris <= 11.3 in 17 was dropped
- solaris is less painful
- user interest, solaris buildfarm animals by users
- also illumos
- they stopped increasing versions after 11.4
- should we drop support for the sunpro compiler?
- won't support newer things like direct-io
- OpenBSD:
- Short supported version window, buildfarm animals exist that are very old
- uses libressl
- Linux+musl
- different libc, a few incompatibilities that we have to deal with
- Have a buildfarm animal now
- Windows:
- Removed old perl based build system, did make things easier
- Thomas never used windows, despite working for Microsoft
- Locale support is very unstable, breaks frequently
- particularly with Turkish locale, breaks all PG databases with the locale, but also some others
- truncations fail occasionally and causes corruptions
- Socket event loss, causes weird problems
- Thomas tries to fix things, but doesn't use windows, hard to find testing
- Thomas finds our state of windows support embarrassing
- We ought to make some decisions to improve the situation, requires making dropping some filesystems
- who makes decision?
- AIX was dropped in 2017, suddenly IBM folks appeared, rely on Postgres
Group 1
- Action item: bugtracker
- Presented by Matthias Van de Meent
- would be useful to have a bug-manager responsibility, likely longer than a CFM
- no agreement: add feature to track a commitfest entry for threads without patches
- Same topic was also discussed by Group 4 (Peter Eisentraut)
- We agreed that we should have one
- Who would curate? Hire somebody?
- What software to use? Gitlab?
- Melanie: Is it it really a technical problem?
- Andres: We seem to have started having agreement on having a bugtracker, that's different than in the past
- Heikki: Some tracking would be useful, even if dumping ground
- Robert: Relying on bugtracking / CF tracking person doing all the work on summarizing huge threads can't scale
- Melanie: Fixing bugs is more important than new features
- Bharat: Authors should summarize state in commit messages, several agreeing with that (Noah, Steve, Robert)
- Robert: How to balance responsiblity to deal with bugreports and feature work
- Melanie: Responsiblity of somebody doing triage would not be in-depth work, just high level triage
- Alvaro: Just wishing there weren't bug doesn't work
- Jelte: Knowing about many people are affected is useful
- Action item: tooling
- More developer oriented tooling are required, including things like pull request
- Platforms like github are problematic due to restrictions imposed by companies (e.g. github was restricted in Iran for a while)
- we could use a hosted gitlab, or hosted by other open source project
- Matthias: Platform notifications are hard to use
- Robert: Real problem is changing the workflow
- Andreas: We could have patch review events, to get more people involved?
- Jonathan: Similar to python sprints
- Robert: That's likely not solving problems with complicated patches
- Andreas: Could do something like docs on a separate platform
Group 4
- Presented by Peter Eisentraut
- Action item: Windows port
- Few / no core developers really care about windows port
- Users are less sophisticated and communicate less
- Andrew Dunstan would look at one of the pending technical issues
- Problem areas
- locale support - default to windows?
- what's with refs - it doesn't support posix mode
- Heikki: Should we just drop windows, similar to AIX
- Robert: Bugs like the windows corruption issue is not enough reason to drop support, sometimes we just have bugs
- Action item: Freeze policy
- Peter and Matthias
- Group thought that this year was an anomaly, doesn't necessarily need a large scale change
- Encourage more incremental work, don't require perfection, leading to pushing very late in cycle
- Prioritize architecture of details like default values
- Impact on feature freeze on release cycle
- Branch earlier, to not have to postpone as much, group didn't really have agreement
- Melanie: Issues with backporting, focus on stability
- Matthias: Doesn't see a point reviewing during feature freeze
- Robert: Committer authored patches are part of the problem, authors have control over time
- Vik Faering: Once stable branch is forked, nobody cares about stable branch
- Tom: Agrees
- Matthias: Can strike balance, by moving branch up a month or such
- Robert: One question is if there are more reverts, that's bad after the branch
- Jonathan: Not convinced that that's really the issue, we had important fixes late
- Robert: Not really addressing the issue of large stuff late in the cycle
- Matthias: Still a problem not being able to get anything in
- Melanie: Don't think many agree with you
- Action item: yubikeys for committing
- no agreement on forcing, but encouraging is ok
- laptop security etc would be good
- Action item: Tooling
- Should be easier to find patches that e.g. have tests that never worked, similar tooling things
Group 2
- Presented by: Andreas Scherbaum
- Action item: Exhibition Effort
- we're not showing up at enough non-PG conferences
- Jonathan: PGUS has some funding, but are not covering that much
- More efforts to support groups like pgWomen
- consider having an application developer oriented conferences
- Stacey: At conferences like djangocon people say they like postgres, but feel like postgres conferes aren't "for them".
- Stacey: Perhaps collaborating with conferences like djangocon would help reach people and then get them to postgres
- People should submit talks at more conferes
- Action item: SPI
- Jonathan: SPI is opaque, we don't know how much money we have, we get money from donations
- Heikki: Why is SPI not funding pgca
- Steve: SPI is very complicated to deal with, partially due to being out of the country, partially just SPI being SPI
- Jonathan: SPI didn't give money for pgconf.dev, that should have been easy
- Alvaro: Could SPI pay for a bug manager, agreement in audience
- Robert: Companies could also provide staff tracking for
- Action item: Benchmarking
- TPC is still relevant
- Better testing needed
- Find way to run meaningful test with every relevant patch
- Jonathan: There's lots of money in the postgres world, there should be money for better testing
- Action item: Commitfest
- Not enough reviewers, need more
- Idea: review events
Notes from Andreas Scherbaum
- Exhibition Effort
- Go to other conferences with PostgreSQL presence and content (have a booth)
- Ask community to submit talks
- Support different efforts to grow the community (like pgWomen)
- Consider a joint postgres.app event with another community, such as `django`
- Separate discussion about SPI membership
- And how to finance the community
- Come up with ideas to use the funds, and organize them into useful and doable form
- Tooling
- Consider in-person events for recruiting new people
- For example, a post-conference Community Day similar to sprints to give people a chance to become involved
- Consider keeping documentation in GitHub/GitLab
- Consider in-person events for recruiting new people
- Benchmarks
- TPC is still relevant
- Update TPC tooling or get tooling
- Find a way to run meaningful tests with every relevant patch
- Create a test plan which can be presented to test sponsors
- Commitfest
- Not enough reviews, and reviewers
- Try to test patches on buildfarm before commit
- Have patch review sessions at conferences
Group 3
- Presented by: Jeff Davis
- Action item: Protocol changes
- Which features do we want?
- How do we introduce changes, dealing with breakages?
- new protocol version?
- optional features?
- Desired features
- Compression
- Proxies and conneciton poolers
- Transparent column encryption
- Pgpool would like to have sequence numbers
- Required vs optional features
- Depends on implementation complexity on the driver side?
- Concerns around
- too partial solutions
- genericity introducing unnecessary roundtrips
- concerns about breakages
- Robert: How do we put various efforts into something coherent
- Action item: Surprising behavior around roles and privileges
- Some of this is user hostile
- Users can't control what code is executed with their privileges
- Function authors don't know what their function will do
- requires setting search_path, but most won't
- There's no way to drop privileges
- SET SESSION AUTHORIZATION and SET ROLE can be undone via RESET SESSION AUTHORIZATON
- Hacks and special cases
- e.g. around table maintenance tasks like REINDEX and logical replication
- it's safe to reindex, but not safe to insert
- e.g. around table maintenance tasks like REINDEX and logical replication
- We define a lot of these to not be security issues, but they often are for users.
- We don't even document much of this
- Noah: Is it really a problem, we document this?
- Jeff: Yes, we document this just for security definer, but it's also a problem in other situations
- Noah: Now agree
- Concensus: People other than Robert and Jeff need to get involved, including at some point agreeing to do something