Nouvelles hebdomadaires de PostgreSQL - 31 décembre 2017
La PGConfNepal 2018 se tiendra les 4 & 5 mai 2018 à l'université de Katmandou, Dulikhel, Népal. L'appel à conférenciers court jusqu'au 1er février 2018 : https://postgresconf.org/conferences/Nepal2018/program/proposals https://postgresconf.org/conferences/Nepal2018
Les nouveautés des produits dérivés
- psqlODBC 10.01.0000 : https://odbc.postgresql.org/docs/release.html
- pgquarrel 0.3.0, un outil comparant des schémas de BD PostgreSQL et produisant un ensemble de commandes pour convertir l'un des schémas vers le second : http://eulerto.github.io/pgquarrel
Offres d'emplois autour de PostgreSQL en décembre
- Internationales : http://archives.postgresql.org/pgsql-jobs/2017-12/
- Francophones : http://forums.postgresql.fr/viewforum.php?id=4
PostgreSQL Local
- [ndt: MeetUp à Paris le 18 janvier : https://www.meetup.com/fr-FR/PostgreSQL-User-Group-Paris/]
- FOSDEM PGDay 2018, une conférence d'une journée tenue avant l'événement principal, sera tenue à Bruxelles (Belgique) le 2 février 2018 : https://2018.fosdempgday.org/
- Prague PostgreSQL Developer Day 2018 (P2D2 2018) est une série de conférences sur deux jours qui aura lieu les 14 & 15 février 2018 à Prague (République Tchèque). L'appel à conférenciers est lancé jusqu'au 5 janvier 2018 à l'adresse https://p2d2.cz/callforpapers : http://www.p2d2.cz/
- La PGConf India 2018 aura lieu les 22 & 23 février 2018 à Bengalore (État du Karnataka en Inde) : http://pgconf.in/
- PostgreSQL@SCaLE est un événement de 2 jours à double programmes qui aura lieu les 8 & 9 mars 2018 au centre de convention de Pasadena, intégré au SCaLE 16X : http://www.socallinuxexpo.org/scale/16x/cfp
- Le PGDay nordique 2018 se tiendra à Oslo (Norvège) à l'hôtel Radisson Blu le 13 mars 2018. L'appel à conférenciers s'éteint le 31 décembre 2017 : https://2018.nordicpgday.org/cfp/
- Le pgDay Paris 2018 aura lieu à l'espace Saint Martin (Paris, France) le 15 mars 2018. L'appel à conférenciers court jusqu'au 31 décembre 2017 : http://2018.pgday.paris/callforpapers/
- PGConf APAC 2018 se tiendra à Singapour du 22 au 24 mars 2018 : http://2018.pgconfapac.org/
- La conférence germanophone PostgreSQL Conference 2018 aura lieu le 13 avril 2018 à Berlin. L'appel à conférenciers est ouvert à l'adresse http://2018.pgconf.de/de/callforpapers.html jusqu'au 9 janvier 2018, et le site de la conférence est disponible ici : http://2018.pgconf.de/
- La PGCon 2018 se tiendra à Ottawa du 29 mai au 1er juin 2018. L'appel à conférenciers court jusqu'au 19 janvier 2018 à l'adresse https://www.pgcon.org/2018/papers.php : https://www.pgcon.org/2018/
- La PGConf.Brazil 2018 aura lieu à São Paulo (Brésil) les 3 & 4 août 2018. L'appel à conférenciers sera lancé prochainement : http://pgconf.com.br
PostgreSQL dans les média
- Planet PostgreSQL : http://planet.postgresql.org/
- Planet PostgreSQLFr : http://planete.postgresql.fr/
PostgreSQL Weekly News / les nouvelles hebdomadaires vous sont offertes cette semaine par David Fetter. Traduction par l'équipe PostgreSQLFr sous licence CC BY-NC-SA. La version originale se trouve à l'adresse suivante : http://www.postgresql.org/message-id/20171231203535.GB11777@fetter.org
Proposez vos articles ou annonces avant dimanche 15:00 (heure du Pacifique). Merci de les envoyer en anglais à david (a) fetter.org, en allemand à pwn (a) pgug.de, en italien à pwn (a) itpug.org et en espagnol à pwn (a) arpug.com.ar.
Correctifs appliqués
Teodor Sigaev pushed:
- Add polygon opclass for SP-GiST. Polygon opclass uses compress method feature of SP-GiST added earlier. For now it's a single operator class which uses this feature. SP-GiST actually indexes a bounding boxes of input polygons, so part of supported operations are lossy. Opclass uses most methods of corresponding opclass over boxes of SP-GiST and treats bounding boxes as point in 4D-space. Bump catalog version. Authors: Nikita Glukhov, Alexander Korotkov with minor editorization by me Reviewed-By: all authors + Darafei Praliaskouski Discussion: https://www.postgresql.org/message-id/flat/54907069.1030506@sigaev.ru https://git.postgresql.org/pg/commitdiff/ff963b393ca93a71d2f398c4c584b322cd351c2c
- Update relation's stats in pg_class during vacuum full. Hash index depends on estimation of numbers of tuples and pages of relations, incorrect value could be a reason of significantly growing of index. Vacuum full recreates heap and reindex all indexes before renewal stats. The patch fixes that, so indexes will see correct values. Backpatch to v10 only because earlier versions haven't usable hash index and growing of hash index is a single user-visible symptom. Author: Amit Kapila Reviewed-by: Ashutosh Sharma, me Discussion: https://www.postgresql.org/message-id/flat/20171115232922.5tomkxnw3iq6jsg7@inml.weebeastie.net https://git.postgresql.org/pg/commitdiff/ad337c76b6f454157982309089c3302fe77c9cbc
Peter Eisentraut pushed:
- Add includes to make header files self-contained. https://git.postgresql.org/pg/commitdiff/0689dc3a235a12c58910fba325f0150979d0c81f
- Add support for static assertions in C++. This allows modules written in C++ to use or include header files that use StaticAssertStmt() etc. Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> https://git.postgresql.org/pg/commitdiff/a2c8e5cfdb9d82ae6d4bb8f37a4dc7cbeca63ec1
Robert Haas pushed:
- Fix race-under-concurrency in PathNameCreateTemporaryDir. Thomas Munro Discussion: http://postgr.es/m/CAEepm=1Vp1e3KtftLtw4B60ZV9teNeKu6HxoaaBptQMsRWjJbQ@mail.gmail.com https://git.postgresql.org/pg/commitdiff/62d02f39e72a2c030711a772f00f47f51262803c
- Remove incorrect apostrophe. Etsuro Fujita Discussion: http://postgr.es/m/5A4393AA.8000708@lab.ntt.co.jp https://git.postgresql.org/pg/commitdiff/b726eaa37a59d0cae0be56457c9522db7288255d
- Add pow(), aka power(), function to pgbench. Ra�l Mar�n Rodr�guez, reviewed by Fabien Coelho and Michael Paquier, with a minor fix by me. Discussion: http://postgr.es/m/CAM6_UM4XiA14y9HnDqu9kAAOtwMhHZxW--q_ZACZW9Hsrsf-tg@mail.gmail.com https://git.postgresql.org/pg/commitdiff/7a727c180aa3c3baba12957d4cbec7b022ba4be5
�lvaro Herrera pushed:
- Protect against hypothetical memory leaks in RelationGetPartitionKey. Also, fix a comment that commit 8a0596cb656e made obsolete. Reported-by: Robert Haas Discussion: http://postgr.es/m/CA+TgmoYbpuUUUp2GhYNwWm0qkah39spiU7uOiNXLz20ASfKYoA@mail.gmail.com https://git.postgresql.org/pg/commitdiff/be2343221fb74bde6b7445feeef32f7ea5cf2618
- Fix typo. https://git.postgresql.org/pg/commitdiff/5303ffe71b4d28663e0881199bb1a5ea26217ce4
Andres Freund pushed:
- Fix rare assertion failure in parallel hash join. When a backend runs out of inner tuples to hash, it should detach from grow_batch_barrier only after it has flushed all batches to disk and merged counters, not before. Otherwise a concurrent backend in ExecParallelHashIncreaseNumBatches() could stop waiting for this backend and try to read tuples before they have been written. This commit reorders those operations and should fix the assertion failures seen occasionally on the build farm since commit 1804284042e659e7d16904e7bbb0ad546394b6a3. Author: Thomas Munro Discussion: https://postgr.es/m/E1eRwXy-0004IK-TO%40gemulon.postgresql.org https://git.postgresql.org/pg/commitdiff/f83040c62a78e784e6e33a6382a55925bfd66634
- Rely on executor utils to build targetlist for DML RETURNING. This is useful because it gets rid of the sole direct user of ExecAssignResultType(). A future commit will likely make use of that and combine creating the targetlist with the initialization of the result slot. But it seems like good code hygiene anyway. Author: Andres Freund Discussion: https://postgr.es/m/20170901064131.tazjxwus3k2w3ybh@alap3.anarazel.de https://git.postgresql.org/pg/commitdiff/4717fdb14cf0a62ffe1b1023e1c5ea8866e34fa0
- Perform slot validity checks in a separate pass over expression. This reduces code duplication a bit, but the primary benefit that it makes JITing expression evaluation easier. When doing so we can't, as previously done in the interpreted case, really change opcode without recompiling. Nor dow we just carry around unnecessary branches to avoid re-checking over and over. As a minor side-effect this makes ExecEvalStepOp() O(log(N)) rather than O(N). Author: Andres Freund Discussion: https://postgr.es/m/20170901064131.tazjxwus3k2w3ybh@alap3.anarazel.de https://git.postgresql.org/pg/commitdiff/b40933101ca622aa8a35b6fe07ace36effadf1c7
Andrew Dunstan pushed:
- Allow leading zero on exponents in pgbench test results. Following commit 7a727c18 this is found to be necessary on at least some Windows platforms. per buildfarm. https://git.postgresql.org/pg/commitdiff/0aa1d489ea756b96b6d5573692ae9cd5d143c2a5
Simon Riggs pushed:
- Extend near-wraparound hints to include replication slots. Author: Feike Steenbergen Reviewed-by: Michael Paquier https://git.postgresql.org/pg/commitdiff/2958a672b1fed35403b23c2b453aede9f7ef4b39
- Fix race condition when changing synchronous_standby_names. A momentary window exists when synchronous_standby_names changes that allows commands issued after the change to continue to act as async until the change becomes visible. Remove the race by using more appropriate test in syncrep.c Author: Asim Rama Praveen and Ashwin Agrawal Reported-by: Xin Zhang, Ashwin Agrawal, and Asim Rama Praveen Reviewed-by: Michael Paquier, Masahiko Sawada https://git.postgresql.org/pg/commitdiff/48c9f4926562278a2fd2b85e7486c6d11705f177
Magnus Hagander pushed:
- Properly set base backup backends to active in pg_stat_activity. When walsenders were included in pg_stat_activity, only the ones actually streaming WAL were listed as active when they were active. In particular, the connections sending base backups were listed as being idle. Which means that a regular pg_basebackup would show up with one active and one idle connection, when both were active. This patch updates to set all walsenders to active when they are (including those doing very fast things like IDENTIFY_SYSTEM), and then back to idle. Details about exactly what they are doing is available in pg_stat_replication. Patch by me, review by Michael Paquier and David Steele. https://git.postgresql.org/pg/commitdiff/d02974e32e028fc078d8f5eca1d6a4516efb0aa6
Correctifs en attente
Aleksandr Parfenov sent in another revision of a patch to make a more flexible configuration for full-text search.
Tomas Vondra sent in another revision of a patch to add some controls over the resources logical replication consumes.
Amit Langote sent in another revision of a patch to teach the executor to handle ON CONFLICT (key) on partitioned tables.
Masahiko Sawada sent in another revision of a patch to determine whether logical replication has caught up.
Nikhil Sontakke sent in a patch to fix the now-incorrect assumption by HeapTupleSatisfiesVacuum that rows belonging to an aborted transaction are not visible to anyone else.
Micha�l Paquier sent in a patch to improve the concurrent behavior of ALTER ROLE.
Peter Eisentraut sent in two more revisions of a patch to add infrastructure needed in order to use stdbool.h.
David Rowley sent in another revision of a patch to better prune partitions at runtime.
Vaishnavi Prabakaran sent in a patch to add TAP test support for backup with tablespace mapping.
Etsuro Fujita sent in another revision of a patch to improve predicate pushdown for UPDATEs in the PostgreSQL FDW.
Haribabu Kommi sent in another revision of a patch to implement pluggable storage.
Dmitry Dolgov sent in another revision of a patch to implement generic type subscripting and use same for arrays and JSONB.
Ra�l Mar�n Rodr�guez sent in another revision of a patch to add pow() support to pgbench.
Masahiko Sawada sent in another revision of a patch to handle 2PC and similar across multiple servers.
Konstantin Knizhnik sent in three more revisions of a patch to implement AS OF queries.
Yugo Nagata sent in three more revisions of a patch to implement lockable views.
Peter Eisentraut sent in another revision of a patch to implement generated columns.
David Rowley sent in another revision of a patch to remove [Merge]Append nodes which contain a single subpath.
Micha�l Paquier sent in a patch to improve the current behavior of a flock of DDLs.
Micha�l Paquier sent in a patch to refactor channel binding code to fetch cbind_data only when necessary and implement channel binding tls-server-end-point for SCRAM.
John Naylor sent in another revision of a patch to make bootstrap data simpler to read and use.
Fabien COELHO sent in two more revisions of a patch to add more functions and operators to pgbench.
Nathan Bossart sent in another revision of a patch to fix the unparenthesized VACUUM grammar, add a parenthesized ANALYZE syntax, and add a NOWAIT vacuum option.
Andrey Borodin sent in another revision of a patch to delete pages during GiST VACUUM and implement a physical GiST scan.
Kyotaro HORIGUCHI sent in a patch to add a simple perl client module for testing and add a sample prove_check based on same.
Jeff Janes sent in a patch to fix MCV lists for highly skewed distributions.
Yugo Nagata sent in a patch to implement GET DIAGNOSTICS FUNCTION_NAME in PL/pgsql.
David Steele sent in another revision of a patch to allow group read for $PGDATA.
Jeff Davis sent in another revision of a patch to implement RANGE MERGE JOIN.
Thomas Munro sent in another revision of a patch to fix a condition variable live lock.
Marco Nenciarini sent in a patch to support TRUNCATE statements in logical replication.
�lvaro Herrera sent in another revision of a patch to implement local indexes for partitioned tables.
Fabien COELHO sent in another revision of a patch to add \if to pgbench.
�lvaro Herrera sent in a patch to add FOR EACH ROW triggers to partitioned tables.
Marco Nenciarini sent in a patch to make TRUNCATE match the behavior of DELETE for session_replication_role = replica.
Yugo Nagata sent in a patch to fix an Oracle incompatibility in error condition for the Oracle-compatibility function instr() documented for PL/pgsql.
�lvaro Herrera sent in a patch to allow UNIQUE indexes on partitioned tables.
Andrey Borodin sent in a patch to count tuples correctly during GiST VACUUM of partial index.
Simon Riggs sent in a patch to change the WAL header to reduce contention during ReserveXLogInsertLocation().
Simon Riggs sent in another revision of a patch to implement MERGE.
Petr Jel�nek sent in a patch to add dd pg_replication_slot_advance() function which advances a replication slot to the specified position. It works both with logical and physical slots.
Vik Fearing sent in a patch to add some sample values for the parameters of pg_stat_statements.
Marina Polyakova sent in another revision of a patch to precalculate stable and immutable functions.
Pavan Deolasee sent in a patch to speed up inserts with mostly-monotonically increasing values.
Artur Zakirov sent in another revision of a patch to enable shared Ispell dictionaries.
Remi Colinet sent in a patch to make block and file size for WAL and relations defined at cluster creation.
Ivan Kartyshov sent in a patch to implement checksums for SLRU files.
Stephen Frost sent in a patch to add a default role 'pg_access_server_files'.
�lvaro Herrera sent in a patch to allow foreign key triggers on partitioned tables.