SlideShare uma empresa Scribd logo
1 de 47
Baixar para ler offline
PostgreSQL
Development
TODAY
                  Josh Berkus
       PostgreSQL Experts Inc.
                    LCA2010
BREAKING NEWS: January 15, 2010 ...
PostgreSQL 9.0 Enters Final Commitfest ...
   “many landmark features planned”,
            says developer ...
... wait, 9.0?!?
... landmark features ...
     Hot standby ... synchronous replication ...
 exclusion constraints ... JSON/XML EXPLAIN
 output ... Windows 64-bit ... writeable CTEs* ...
    permissions enhancements ...GRANT ON
ALL/DEFAULT ... SQL enhancements ... Ordered
 aggregates ... DO () statement ... performance
   improvements ... PL/Perl enhancements ...
        PL/Python enhancements ... new
                LISTEN/NOTIFY*
                                      * = not committed yet
... landmark features ...
     Hot standby ... synchronous replication ...
 exclusion constraints ... JSON/XML EXPLAIN
 output ... Windows 64-bit ... writeable CTEs* ...
    permissions enhancements ...GRANT ON
ALL/DEFAULT ... SQL enhancements ... Ordered
 aggregates ... DO () statement ... performance
   improvements ... PL/Perl enhancements ...
        PL/Python enhancements ... new
                LISTEN/NOTIFY*
                                      * = not committed yet
Postgres 9
... wait, commitfest?!?
scarce committer time
new review
1. review patches faster
2. review patches sooner
3. review every patch
4. train new reviewers
8.5 (9.0) RC and Branch           July 1 2009
     Development Period
    CommitFest 1                 July 15 2009
    Development Period        August 15 2009

    CommitFest 2           September 15 2009
    Development Period       October 15 2009

    CommitFest 3           November 15 2009
    Development Period     December 15 2009
    CommitFest 4             January 15 2010
Cleanup                     February 15 2010
    Integration & Review
         (2-4 weeks)
Beta    Beta Testing
        (2-3 months)

9.1 RC and Branch            June-July, 2010

 back to hot standby
8.0: Point-In-Time Recovery
           (PITR)
8.0: Point-In-Time Recovery
           (PITR)
8.0: Point-In-Time Recovery
           (PITR)
8.0: Point-In-Time Recovery
           (PITR)




      10 minutes to hours
8.3: Warm Standby
8.3: Warm Standby
8.3: Warm Standby




  seconds to minutes
8.3: Warm Standby
Alvaro Herrera
8.3 Ghost XID
          writ
              e
                19
          34 521




           read
      345
        321
          451
            29/2
              1 10
                 01
9.0: Hot Standby
Problems
with Hot Standby
Problems
with Hot Standby



                   x
max_standby_delay
max_standby_delay
different problems

1. Zero data loss
2. Seconds of downtime (or less)
3. Single-node performance
4. Scalability: not important
Fujii Masao




Itagaki Takahiro
pgCon 2008:
Synchronous Log-Shipping
       Replication
after 18 months:
“streaming replication”
after 18 months:
“streaming replication”



                walreciever
after 18 months:
“streaming replication”


walsender
                walreciever
Greg Sabino-Mullaine


Robert Haas
?
PostgreSQL Needs YOU
Many Patches == Lots of Testing
●   Bug Testing
     –   can you make 9.0 crash?
●   Specif cation Testing
         i
     –   do the features do what the docs say they do?
●   Performance Testing
     –   is 9.0 really faster? How much?
●   Combinational Testing
     –   what happens when you put several new features
         together?
Many Patches == Lots of Testing
1.   Take a copy of your production applications
2.   Port them to 9.0
3.   Report breakage and issues
4.   Play with implementing new features


                   Do It Now!
              We're counting on you!
Why contribute?
●   PostgreSQL is a community project
     – owned by the community, run by the community
     – if you contribute, you are a full participant
●   Tinker with cool database stuff
     – we are hard-core database geeks
     – learn a lot from top database hackers
●   Improve your employment prospects
     – database engineers are always in demand
Mailing Lists
●   Hackers list
         –   pgsql-hackers
         –   main list for development discussion
         –   submit patches here until we move off CVS
●   Testers list
         –   pgsql-testers
         –   submit test reports here
●   Specif c feature lists
         i
    –   pgsql-jdbc, pgsql-performance, pgsql-sql, etc.
    –   subscribe at www.postgresql.org/community/lists
Web Sites
●   www.postgresql.org
    –   main site
●   git.pgfoundry.org
    –   branches, feature forks, snapshots
●   wiki.postgresql.org
    –   community wiki, including TODO lists
    –   feature specs & testing info
●   archives.postgresql.org
    –   mailing list archives -- search for your idea here
Documentation
●   www.postgresql.org/docs
    –   main documentation
    –   internals:/docs/current/static/internals.html
    –   code conventions: /docs/current/static/source.html
●   doxygen.postgresql.org
    –   annotated source code
●   www.postgresql.org/docs/faqs.FAQ_DEV.html
    –   developer FAQ
Tips on submitting code
●   Don't get discouraged.
    –   Be prepared to argue.
    –   One hacker rejecting your idea doesn't mean everyone
        does.
    –   Committers (esp. Tom Lane) are often more concerned
        about maintainability than cool stuff.
●   Be f exible: you will have to make changes.
       l
    –   Corporate and academic coding standards are generally
        lower than the project's.
Other tips on submitting
●   Don't use the wrong arguments
    –   “MySQL/Oracle does it this way.”
    –   “Based on this hot academic trend.”
●   Some things make a patch harder to accept
    –   New syntax
    –   Backwards compatibility issues
    –   High code counts
●   Don't get discouraged.
Also: switching to git




●   9.0 was developed with both CVS and git
●   Probably just git in the future
Contact Information
●   Josh Berkus                                             ●   Upcoming Events:
    –   josh@postgresql.org                                                –   PG East: March,
    –   blogs.ittoolbox.com/                                                     Philadelphia
        database/soup                                                      –   pgCon: May 19,
    –   www.pgexperts.com                                                        Ottawa Canada
                                                                                 CfP Open!
●   User Groups                                                            –   OSCON: July,
         – pugs.postgresql.org                                                   Portland OR
    –   Wellington                                                               CfP Open!
    –   Sydney
    –   Adelaide
    –   Canberra
             This talk is copyright 2010 Josh Berkus, and is licensed under the creative commons attribution license

Mais conteĂșdo relacionado

Mais procurados

U boot source clean up project how-to
U boot source clean up project how-toU boot source clean up project how-to
U boot source clean up project how-to
Macpaul Lin
 
Debian packaging talk, Pysheff sept 2012
Debian packaging talk, Pysheff sept 2012Debian packaging talk, Pysheff sept 2012
Debian packaging talk, Pysheff sept 2012
takluyver
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
jherdman
 

Mais procurados (20)

Go, Docker & Kubernetes
Go, Docker &  KubernetesGo, Docker &  Kubernetes
Go, Docker & Kubernetes
 
Git training
Git trainingGit training
Git training
 
U boot source clean up project how-to
U boot source clean up project how-toU boot source clean up project how-to
U boot source clean up project how-to
 
Hg for bioinformatics, second part
Hg for bioinformatics, second partHg for bioinformatics, second part
Hg for bioinformatics, second part
 
Hg version control bioinformaticians
Hg version control bioinformaticiansHg version control bioinformaticians
Hg version control bioinformaticians
 
Continuous Delivery of Puppet Manifests
Continuous Delivery of Puppet ManifestsContinuous Delivery of Puppet Manifests
Continuous Delivery of Puppet Manifests
 
Git slides
Git slidesGit slides
Git slides
 
Inside GitHub with Chris Wanstrath
Inside GitHub with Chris WanstrathInside GitHub with Chris Wanstrath
Inside GitHub with Chris Wanstrath
 
Starting with Git & GitHub
Starting with Git & GitHubStarting with Git & GitHub
Starting with Git & GitHub
 
Inside GitHub
Inside GitHubInside GitHub
Inside GitHub
 
Jenkins Shared Libraries
Jenkins Shared LibrariesJenkins Shared Libraries
Jenkins Shared Libraries
 
GSoC2014 - PGDay Ijui/RS Presentation October, 2016
GSoC2014 - PGDay Ijui/RS Presentation October, 2016 GSoC2014 - PGDay Ijui/RS Presentation October, 2016
GSoC2014 - PGDay Ijui/RS Presentation October, 2016
 
Drupalhagen 2014 kiss omg ftw
Drupalhagen 2014   kiss omg ftwDrupalhagen 2014   kiss omg ftw
Drupalhagen 2014 kiss omg ftw
 
Git and Github
Git and GithubGit and Github
Git and Github
 
Lvm and gang 2015
Lvm and gang 2015Lvm and gang 2015
Lvm and gang 2015
 
Debian packaging talk, Pysheff sept 2012
Debian packaging talk, Pysheff sept 2012Debian packaging talk, Pysheff sept 2012
Debian packaging talk, Pysheff sept 2012
 
Git Presentation
Git PresentationGit Presentation
Git Presentation
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Golang workshop
Golang workshopGolang workshop
Golang workshop
 
RootedCON 2017 - Docker might not be your friend. Trojanizing Docker images
RootedCON 2017 - Docker might not be your friend. Trojanizing Docker imagesRootedCON 2017 - Docker might not be your friend. Trojanizing Docker images
RootedCON 2017 - Docker might not be your friend. Trojanizing Docker images
 

Destaque (7)

Induction lesson
Induction lessonInduction lesson
Induction lesson
 
Year 7 and 8 Insight Presentation
Year 7 and 8 Insight PresentationYear 7 and 8 Insight Presentation
Year 7 and 8 Insight Presentation
 
Narrative theories new
Narrative theories newNarrative theories new
Narrative theories new
 
Music magazine evaluation 2
Music magazine evaluation 2Music magazine evaluation 2
Music magazine evaluation 2
 
Question 3 and 4 as evaluation
Question 3 and 4 as evaluationQuestion 3 and 4 as evaluation
Question 3 and 4 as evaluation
 
Simplifying Database Development (OSCON 2009)
Simplifying Database Development (OSCON 2009)Simplifying Database Development (OSCON 2009)
Simplifying Database Development (OSCON 2009)
 
Options for year 10 parents 2013
Options for year 10 parents 2013Options for year 10 parents 2013
Options for year 10 parents 2013
 

Semelhante a PostgreSQL Development Today: 9.0

Elephant Roads: PostgreSQL Patches and Variants
Elephant Roads: PostgreSQL Patches and VariantsElephant Roads: PostgreSQL Patches and Variants
Elephant Roads: PostgreSQL Patches and Variants
PostgreSQL Experts, Inc.
 

Semelhante a PostgreSQL Development Today: 9.0 (20)

Elephant Roads: PostgreSQL Patches and Variants
Elephant Roads: PostgreSQL Patches and VariantsElephant Roads: PostgreSQL Patches and Variants
Elephant Roads: PostgreSQL Patches and Variants
 
Elephant Roads: a tour of Postgres forks
Elephant Roads: a tour of Postgres forksElephant Roads: a tour of Postgres forks
Elephant Roads: a tour of Postgres forks
 
Delivering a bleeding edge community-led openstack distribution: RDO
Delivering a bleeding edge community-led openstack distribution: RDO Delivering a bleeding edge community-led openstack distribution: RDO
Delivering a bleeding edge community-led openstack distribution: RDO
 
OpenStack Cinder On-Boarding Education - Boston Summit - 2017
OpenStack Cinder On-Boarding Education - Boston Summit - 2017OpenStack Cinder On-Boarding Education - Boston Summit - 2017
OpenStack Cinder On-Boarding Education - Boston Summit - 2017
 
8-9-10=Jessie,Stretch,Buster
8-9-10=Jessie,Stretch,Buster8-9-10=Jessie,Stretch,Buster
8-9-10=Jessie,Stretch,Buster
 
Go at Skroutz
Go at SkroutzGo at Skroutz
Go at Skroutz
 
Delivering a bleeding edge community led open stack distribution- rdo
Delivering a bleeding edge community led open stack distribution- rdoDelivering a bleeding edge community led open stack distribution- rdo
Delivering a bleeding edge community led open stack distribution- rdo
 
Programming with Python - Basic
Programming with Python - BasicProgramming with Python - Basic
Programming with Python - Basic
 
LCE13: Test and Validation Summit: The future of testing at Linaro
LCE13: Test and Validation Summit: The future of testing at LinaroLCE13: Test and Validation Summit: The future of testing at Linaro
LCE13: Test and Validation Summit: The future of testing at Linaro
 
LCE13: Test and Validation Mini-Summit: Review Current Linaro Engineering Pro...
LCE13: Test and Validation Mini-Summit: Review Current Linaro Engineering Pro...LCE13: Test and Validation Mini-Summit: Review Current Linaro Engineering Pro...
LCE13: Test and Validation Mini-Summit: Review Current Linaro Engineering Pro...
 
Linux Kernel Introduction
Linux Kernel IntroductionLinux Kernel Introduction
Linux Kernel Introduction
 
Accelerating Big Data beyond the JVM - Fosdem 2018
Accelerating Big Data beyond the JVM - Fosdem 2018Accelerating Big Data beyond the JVM - Fosdem 2018
Accelerating Big Data beyond the JVM - Fosdem 2018
 
There is something about serverless
There is something about serverlessThere is something about serverless
There is something about serverless
 
Logs aggregation and analysis
Logs aggregation and analysisLogs aggregation and analysis
Logs aggregation and analysis
 
Are you using an open source library? - Bruno Bossola - Codemotion Rome 2018
Are you using an open source library? - Bruno Bossola - Codemotion Rome 2018Are you using an open source library? - Bruno Bossola - Codemotion Rome 2018
Are you using an open source library? - Bruno Bossola - Codemotion Rome 2018
 
Are you using an opensource library? There's a good chance you are vulnerable...
Are you using an opensource library? There's a good chance you are vulnerable...Are you using an opensource library? There's a good chance you are vulnerable...
Are you using an opensource library? There's a good chance you are vulnerable...
 
2to3
2to32to3
2to3
 
FireWorks overview
FireWorks overviewFireWorks overview
FireWorks overview
 
How to plan and define your CI-CD pipeline
How to plan and define your CI-CD pipelineHow to plan and define your CI-CD pipeline
How to plan and define your CI-CD pipeline
 
What to expect from Java 9
What to expect from Java 9What to expect from Java 9
What to expect from Java 9
 

Mais de PostgreSQL Experts, Inc.

PWNage: Producing a newsletter with Perl
PWNage: Producing a newsletter with PerlPWNage: Producing a newsletter with Perl
PWNage: Producing a newsletter with Perl
PostgreSQL Experts, Inc.
 
5 (more) Ways To Destroy Your Community
5 (more) Ways To Destroy Your Community5 (more) Ways To Destroy Your Community
5 (more) Ways To Destroy Your Community
PostgreSQL Experts, Inc.
 
Preventing Community (from Linux Collab)
Preventing Community (from Linux Collab)Preventing Community (from Linux Collab)
Preventing Community (from Linux Collab)
PostgreSQL Experts, Inc.
 

Mais de PostgreSQL Experts, Inc. (20)

Shootout at the PAAS Corral
Shootout at the PAAS CorralShootout at the PAAS Corral
Shootout at the PAAS Corral
 
Shootout at the AWS Corral
Shootout at the AWS CorralShootout at the AWS Corral
Shootout at the AWS Corral
 
Fail over fail_back
Fail over fail_backFail over fail_back
Fail over fail_back
 
PostgreSQL Replication in 10 Minutes - SCALE
PostgreSQL Replication in 10  Minutes - SCALEPostgreSQL Replication in 10  Minutes - SCALE
PostgreSQL Replication in 10 Minutes - SCALE
 
HowTo DR
HowTo DRHowTo DR
HowTo DR
 
Give A Great Tech Talk 2013
Give A Great Tech Talk 2013Give A Great Tech Talk 2013
Give A Great Tech Talk 2013
 
Pg py-and-squid-pypgday
Pg py-and-squid-pypgdayPg py-and-squid-pypgday
Pg py-and-squid-pypgday
 
92 grand prix_2013
92 grand prix_201392 grand prix_2013
92 grand prix_2013
 
Five steps perform_2013
Five steps perform_2013Five steps perform_2013
Five steps perform_2013
 
7 Ways To Crash Postgres
7 Ways To Crash Postgres7 Ways To Crash Postgres
7 Ways To Crash Postgres
 
PWNage: Producing a newsletter with Perl
PWNage: Producing a newsletter with PerlPWNage: Producing a newsletter with Perl
PWNage: Producing a newsletter with Perl
 
10 Ways to Destroy Your Community
10 Ways to Destroy Your Community10 Ways to Destroy Your Community
10 Ways to Destroy Your Community
 
Open Source Press Relations
Open Source Press RelationsOpen Source Press Relations
Open Source Press Relations
 
5 (more) Ways To Destroy Your Community
5 (more) Ways To Destroy Your Community5 (more) Ways To Destroy Your Community
5 (more) Ways To Destroy Your Community
 
Preventing Community (from Linux Collab)
Preventing Community (from Linux Collab)Preventing Community (from Linux Collab)
Preventing Community (from Linux Collab)
 
Development of 8.3 In India
Development of 8.3 In IndiaDevelopment of 8.3 In India
Development of 8.3 In India
 
PostgreSQL and MySQL
PostgreSQL and MySQLPostgreSQL and MySQL
PostgreSQL and MySQL
 
50 Ways To Love Your Project
50 Ways To Love Your Project50 Ways To Love Your Project
50 Ways To Love Your Project
 
8.4 Upcoming Features
8.4 Upcoming Features 8.4 Upcoming Features
8.4 Upcoming Features
 
Writeable CTEs: The Next Big Thing
Writeable CTEs: The Next Big ThingWriteable CTEs: The Next Big Thing
Writeable CTEs: The Next Big Thing
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Último (20)

Navi Mumbai Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls đŸ„° 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 

PostgreSQL Development Today: 9.0

  • 1. PostgreSQL Development TODAY Josh Berkus PostgreSQL Experts Inc. LCA2010
  • 2. BREAKING NEWS: January 15, 2010 ... PostgreSQL 9.0 Enters Final Commitfest ... “many landmark features planned”, says developer ...
  • 4. ... landmark features ... Hot standby ... synchronous replication ... exclusion constraints ... JSON/XML EXPLAIN output ... Windows 64-bit ... writeable CTEs* ... permissions enhancements ...GRANT ON ALL/DEFAULT ... SQL enhancements ... Ordered aggregates ... DO () statement ... performance improvements ... PL/Perl enhancements ... PL/Python enhancements ... new LISTEN/NOTIFY* * = not committed yet
  • 5. ... landmark features ... Hot standby ... synchronous replication ... exclusion constraints ... JSON/XML EXPLAIN output ... Windows 64-bit ... writeable CTEs* ... permissions enhancements ...GRANT ON ALL/DEFAULT ... SQL enhancements ... Ordered aggregates ... DO () statement ... performance improvements ... PL/Perl enhancements ... PL/Python enhancements ... new LISTEN/NOTIFY* * = not committed yet
  • 9.
  • 10. new review 1. review patches faster 2. review patches sooner 3. review every patch 4. train new reviewers
  • 11. 8.5 (9.0) RC and Branch July 1 2009 Development Period CommitFest 1 July 15 2009 Development Period August 15 2009 CommitFest 2 September 15 2009 Development Period October 15 2009 CommitFest 3 November 15 2009 Development Period December 15 2009 CommitFest 4 January 15 2010 Cleanup February 15 2010 Integration & Review (2-4 weeks) Beta Beta Testing (2-3 months) 9.1 RC and Branch June-July, 2010
  • 12. 
 back to hot standby
  • 16. 8.0: Point-In-Time Recovery (PITR) 10 minutes to hours
  • 19. 8.3: Warm Standby seconds to minutes
  • 22. 8.3 Ghost XID writ e 19 34 521 read 345 321 451 29/2 1 10 01
  • 28.
  • 29. different problems 1. Zero data loss 2. Seconds of downtime (or less) 3. Single-node performance 4. Scalability: not important
  • 32. after 18 months: “streaming replication”
  • 33. after 18 months: “streaming replication” walreciever
  • 34. after 18 months: “streaming replication” walsender walreciever
  • 36. ?
  • 38. Many Patches == Lots of Testing ● Bug Testing – can you make 9.0 crash? ● Specif cation Testing i – do the features do what the docs say they do? ● Performance Testing – is 9.0 really faster? How much? ● Combinational Testing – what happens when you put several new features together?
  • 39. Many Patches == Lots of Testing 1. Take a copy of your production applications 2. Port them to 9.0 3. Report breakage and issues 4. Play with implementing new features Do It Now! We're counting on you!
  • 40. Why contribute? ● PostgreSQL is a community project – owned by the community, run by the community – if you contribute, you are a full participant ● Tinker with cool database stuff – we are hard-core database geeks – learn a lot from top database hackers ● Improve your employment prospects – database engineers are always in demand
  • 41. Mailing Lists ● Hackers list – pgsql-hackers – main list for development discussion – submit patches here until we move off CVS ● Testers list – pgsql-testers – submit test reports here ● Specif c feature lists i – pgsql-jdbc, pgsql-performance, pgsql-sql, etc. – subscribe at www.postgresql.org/community/lists
  • 42. Web Sites ● www.postgresql.org – main site ● git.pgfoundry.org – branches, feature forks, snapshots ● wiki.postgresql.org – community wiki, including TODO lists – feature specs & testing info ● archives.postgresql.org – mailing list archives -- search for your idea here
  • 43. Documentation ● www.postgresql.org/docs – main documentation – internals:/docs/current/static/internals.html – code conventions: /docs/current/static/source.html ● doxygen.postgresql.org – annotated source code ● www.postgresql.org/docs/faqs.FAQ_DEV.html – developer FAQ
  • 44. Tips on submitting code ● Don't get discouraged. – Be prepared to argue. – One hacker rejecting your idea doesn't mean everyone does. – Committers (esp. Tom Lane) are often more concerned about maintainability than cool stuff. ● Be f exible: you will have to make changes. l – Corporate and academic coding standards are generally lower than the project's.
  • 45. Other tips on submitting ● Don't use the wrong arguments – “MySQL/Oracle does it this way.” – “Based on this hot academic trend.” ● Some things make a patch harder to accept – New syntax – Backwards compatibility issues – High code counts ● Don't get discouraged.
  • 46. Also: switching to git ● 9.0 was developed with both CVS and git ● Probably just git in the future
  • 47. Contact Information ● Josh Berkus ● Upcoming Events: – josh@postgresql.org – PG East: March, – blogs.ittoolbox.com/ Philadelphia database/soup – pgCon: May 19, – www.pgexperts.com Ottawa Canada CfP Open! ● User Groups – OSCON: July, – pugs.postgresql.org Portland OR – Wellington CfP Open! – Sydney – Adelaide – Canberra This talk is copyright 2010 Josh Berkus, and is licensed under the creative commons attribution license