== PostgreSQL Weekly News - November 02 2014 ==

Поиск
Список
Период
Сортировка
От David Fetter
Тема == PostgreSQL Weekly News - November 02 2014 ==
Дата
Msg-id 20141103060322.GA7610@fetter.org
обсуждение исходный текст
Список pgsql-announce
== PostgreSQL Weekly News - November 02 2014 ==

PG-Cuba will be November 25 and 26, 2014, program below:
http://postgresql.uci.cu/?p=1087#more-1087

The CfP for FOSDEM PGDay (January 30, 2015) and the FOSDEM PostgreSQL
Dev Room (January 31-February 1, 2015) are open until November 24th,
2014.
http://fosdem2015.pgconf.eu/callforpapers/

== PostgreSQL Product News ==

POWA 1.2, a PostgreSQL workload analyzer, released.
http://dalibo.github.io/powa/

psqlODBC 09.03.0400 released.
http://www.postgresql.org/ftp/odbc/versions/

== PostgreSQL Jobs for November ==

http://archives.postgresql.org/pgsql-jobs/2014-11/threads.php

== PostgreSQL Local ==

PGDay.IT 2014 will take place in Prato on November the 7th 2014.
http://2014.pgday.it/call-for-papers-en/

PG-Cuba will be November 25 and 26, 2014
http://postgresql.uci.cu/?p=1087#more-1087

The CfP for PGConf US 2015 is open through December 17th, 2014
Notifications will go out on January 10, 2014.  The event takes place
March 25-27, 2015 in NYC.
http://nyc.pgconf.us/2015/

== PostgreSQL in the News ==

Planet PostgreSQL: http://planet.postgresql.org/

PostgreSQL Weekly News is brought to you this week by David Fetter

Submit news and announcements by Sunday at 3:00pm Pacific time.
Please send English language ones to david@fetter.org, German language
to pwn@pgug.de, Italian language to pwn@itpug.org.  Spanish language
to pwn@arpug.com.ar.

== Applied Patches ==

Bruce Momjian pushed:

- Add variable names to two LWLock C prototypes.  Previously only the
  variable types appeared.
  http://git.postgresql.org/pg/commitdiff/a4da35a0d2c61231d8e91ed2ae424faea6f3501c

Heikki Linnakangas pushed:

- Fix two bugs in tsquery @> operator.  1. The comparison for matching
  terms used only the CRC to decide if there's a match. Two different
  terms with the same CRC gave a match.  2. It assumed that if the
  second operand has more terms than the first, it's never a match.
  That assumption is bogus, because there can be duplicate terms in
  either operand.  Rewrite the implementation in a way that doesn't
  have those bugs.  Backpatch to all supported versions.
  http://git.postgresql.org/pg/commitdiff/22926e00f7041b2b542f80caf63b41faa99a3163

- Remove unnecessary assignment.  Reported by MauMau.
  http://git.postgresql.org/pg/commitdiff/18f158ef697974cb976b52dae8a048d83b7f1ca4

- Reset error message at PQreset().  If you call PQreset() repeatedly,
  and the connection cannot be re-established, the error messages from
  the failed connection attempts kept accumulating in the error
  string.  Fixes bug #11455 reported by Caleb Epstein. Backpatch to
  all supported versions.
  http://git.postgresql.org/pg/commitdiff/8f8314b56003877185fb817c847c7c9609621d0c

Robert Haas pushed:

- Add missing equals signs to pg_recvlogical documentation.  Michael
  Paquier
  http://git.postgresql.org/pg/commitdiff/7f609a10adb5419c68fc683594fcd14f1e7322fb

- Avoid setup work for invalidation messages at start-of-(sub)xact.
  Instead of initializing a new TransInvalidationInfo for every
  transaction or subtransaction, we can just do it for those
  transactions or subtransactions that actually need to queue
  invalidation messages.  That also avoids needing to free those
  entries at the end of a transaction or subtransaction that does not
  generate any invalidation messages, which is by far the common case.
  Patch by me.  Review by Simon Riggs and Andres Freund.
  http://git.postgresql.org/pg/commitdiff/6cb4afff33ba0b6f88cca2967904ad501d648e2f

- "Pin", rather than "keep", dynamic shared memory mappings and
  segments.  Nobody seemed concerned about this naming when it
  originally went in, but there's a pending patch that implements the
  opposite of dsm_keep_mapping, and the term "unkeep" was judged
  unpalatable.  "unpin" has existing precedent in the PostgreSQL code
  base, and the English language, so use this terminology instead.
  Per discussion, back-patch to 9.4.
  http://git.postgresql.org/pg/commitdiff/6057c212f3e783c45e050a78d070edf3e5f069f0

- Extend dsm API with a new function dsm_unpin_mapping.  This
  reassociates a dynamic shared memory handle previous passed to
  dsm_pin_mapping with the current resource owner, so that it will be
  cleaned up at the end of the current query.  Patch by me.  Review of
  the function name by Andres Freund, Amit Kapila, Jim Nasby, Petr
  Jelinek, and Álvaro Herrera.
  http://git.postgresql.org/pg/commitdiff/f7102b04638a882b38cbba7670471a073a939865

- Support frontend-backend protocol communication using a shm_mq.  A
  background worker can use pq_redirect_to_shm_mq() to direct protocol
  that would normally be sent to the frontend to a shm_mq so that
  another process may read them.  The receiving process may use
  pq_parse_errornotice() to parse an ErrorResponse or NoticeResponse
  from the background worker and, if it wishes, ThrowErrorData() to
  propagate the error (with or without further modification).  Patch
  by me.  Review by Andres Freund.
  http://git.postgresql.org/pg/commitdiff/2bd9e412f92bc6a68f3e8bcb18e04955cc35001d

Noah Misch pushed:

- MinGW: Include .dll extension in .def file LIBRARY commands.  Newer
  toolchains append the extension implicitly if missing, but buildfarm
  member narwhal (gcc 3.4.2, ld 2.15.91 20040904) does not.  This
  affects most core libraries having an exports.txt file, namely libpq
  and the ECPG support libraries.  On Windows Server 2003, Windows API
  functions that load and unload DLLs internally will mistakenly
  unload a libpq whose DLL header reports "LIBPQ" instead of
  "LIBPQ.dll".  When, subsequently, control would return to libpq, the
  backend crashes.  Back-patch to 9.4, like commit
  846e91e0223cf9f2821c3ad4dfffffbb929cb027.  Before that commit, we
  used a different linking technique that yielded "libpq.dll" in the
  DLL header.  Commit 53566fc0940cf557416b13252df57350a4511ce4 worked
  around this by eliminating a call to a function that loads and
  unloads DLLs internally.  That commit is no longer necessary for
  correctness, but its improving consistency with the MSVC build
  remains valid.
  http://git.postgresql.org/pg/commitdiff/c0e190365b93bbf717540d8e7653c65a9f6c5650

- Fix win32setlocale.c const-related warnings.  Back-patch to 9.2,
  like commit db29620d4d16e08241f965ccd70d0f65883ff0de.
  http://git.postgresql.org/pg/commitdiff/846319521753af63c8f9b0893a116adc0a70e936

- Re-remove dependency on the DLL of pythonxx.def file.  The reasons
  behind commit 0d147e43adcf5d2bff9caa073608f381a27439bf still stand,
  so this reverts the non-cosmetic portion of commit
  a7983e989d9cafc9cef49becfee054e34b1ed9b4.  Back-patch to 9.4, where
  the latter commit first appeared.
  http://git.postgresql.org/pg/commitdiff/00c07e497f31e44ddf971e2d5f14240971ed5175

- Make ECPG test programs depend on "ecpg$(X)", not "ecpg".  Cygwin
  builds require this of dependencies pertaining to pattern rules.  On
  Cygwin, stat("foo") in the absence of a file with that exact name
  can locate foo.exe.  While GNU make uses stat() for dependencies of
  ordinary rules, it uses readdir() to assess dependencies of pattern
  rules.  Therefore, a pattern rule dependency should match any
  underlying file name exactly.  Back-patch to 9.4, where the
  dependency was introduced.
  http://git.postgresql.org/pg/commitdiff/67a412049489f554c3a552bd523cefd30d038221

- Remove dead-since-introduction pgcrypto code.  Marko Tiikkaja
  http://git.postgresql.org/pg/commitdiff/1ed8e771ade6f2a58728f4537e9c19b702d8cf25

- Clarify .def file comments.
  http://git.postgresql.org/pg/commitdiff/c40212baf6c093b4958c6e04ddde94869788a572

Tom Lane pushed:

- Remove obsolete commentary.  Since we got rid of non-MVCC catalog
  scans, the fourth reason given for using a non-transactional update
  in index_update_stats() is obsolete.  The other three are still
  good, so we're not going to change the code, but fix the comment.
  http://git.postgresql.org/pg/commitdiff/a00d468e658a245823083b9ac2e423a659a03802

- Avoid corrupting tables when ANALYZE inside a transaction is rolled
  back.  VACUUM and ANALYZE update the target table's pg_class row
  in-place, that is nontransactionally.  This is OK, more or less, for
  the statistical columns, which are mostly nontransactional anyhow.
  It's not so OK for the DDL hint flags (relhasindex etc), which might
  get changed in response to transactional changes that could still be
  rolled back.  This isn't a problem for VACUUM, since it can't be run
  inside a transaction block nor in parallel with DDL on the table.
  However, we allow ANALYZE inside a transaction block, so if the
  transaction had earlier removed the last index, rule, or trigger
  from the table, and then we roll back the transaction after ANALYZE,
  the table would be left in a corrupted state with the hint flags not
  set though they should be.  To fix, suppress the hint-flag updates
  if we are InTransactionBlock().  This is safe enough because it's
  always OK to postpone hint maintenance some more; the worst-case
  consequence is a few extra searches of pg_index et al.  There was
  discussion of instead using a transactional update, but that would
  change the behavior in ways that are not all desirable: in most
  scenarios we're better off keeping ANALYZE's statistical values even
  if the ANALYZE itself rolls back.  In any case we probably don't
  want to change this behavior in back branches.  Per bug #11638 from
  Casey Shobe.  This has been broken for a good long time, so
  back-patch to all supported branches.  Tom Lane and Michael Paquier,
  initial diagnosis by Andres Freund
  http://git.postgresql.org/pg/commitdiff/e0722d9cb57d06c2e459cf338cf7387ec3edb1f5

- Test IsInTransactionChain, not IsTransactionBlock, in
  vac_update_relstats.  As noted by Noah Misch, my initial cut at
  fixing bug #11638 didn't cover all cases where ANALYZE might be
  invoked in an unsafe context.  We need to test the result of
  IsInTransactionChain not IsTransactionBlock; which is notationally a
  pain because IsInTransactionChain requires an isTopLevel flag, which
  would have to be passed down through several levels of callers.  I
  chose to pass in_outer_xact (ie, the result of IsInTransactionChain)
  rather than isTopLevel per se, as that seemed marginally more
  apropos for the intermediate functions to know about.
  http://git.postgresql.org/pg/commitdiff/fd0f651a867ce4a25160e37bcb9085f3b3209bf8

Peter Eisentraut pushed:

- Remove use of TAP subtests.  They turned out to be too much of a
  portability headache, because they need a fairly new version of
  Test::More to work properly.
  http://git.postgresql.org/pg/commitdiff/7912f9b7dc9e2d3f6cd81892ef6aa797578e9f06

- doc: Improve CREATE VIEW / WITH documentation.  Similar to
  590eb0c14eebe834f716721a9659b77899cf3084, remove the options list
  from the synopsis and elaborate in the main description.
  http://git.postgresql.org/pg/commitdiff/5bd91e3a835b5d5499fee5f49fc7c0c776fe63dd

- doc: Fix typos.  per Andres Freund
  http://git.postgresql.org/pg/commitdiff/252e652edea80b948fbc9c3723183065e94d8480

- doc: Wording and formatting improvements in new logical decoding
  docs
  http://git.postgresql.org/pg/commitdiff/50709a1d427831d48a5aa14655e9f57e3721a06b

- PL/Python: Fix example.  Revert
  "6f6b46c9c0ca3d96acbebc5499c32ee6369e1eec", which was broken.
  Reported-by: Jonathan Rogers <jrogers@socialserve.com>
  http://git.postgresql.org/pg/commitdiff/3e81a33d799ed8c12847eb8ef1685563eeb10e7d

- Add configure --enable-tap-tests option.  Don't skip the TAP tests
  anymore when IPC::Run is not found.  This will fail normally now.
  http://git.postgresql.org/pg/commitdiff/a409b464f91e0bdf61f2b3fb81218a0e4312987b

- Fix generation of INSTALL file by removing link
  http://git.postgresql.org/pg/commitdiff/9522efdae11c7bb3e12cd4bf070399d5417ac405

== Rejected Patches (for now) ==

No one was disappointed this week :-)

== Pending Patches ==

Kaigai Kouhei sent in another revision of a patch to implement a
custom plan API.

Pavel Stehule sent in another revision of a patch to add "strip nulls"
functions to JSON[B].

Abhijit Menon-Sen sent in another revision of a patch to call
ResetUnloggedRelations(UNLOGGED_RELATION_INIT) earlier.

Stephen Frost sent in a patch to fix some lacunae in the use of
GetUserId().

Heikki Linnakangas sent patches to rationalize use of CRC algorithms,
removing the unused 64-bit version and redoing the ones that won't
break pg_upgrade to algorithms with well-known properties.

Ali Akbar and Pavel Stehule traded patches to implement
array_agg(ANYARRAY).

Michael Paquier sent in another revision of a patch to add a
--snapshot option to pg_dump.

Andrew Dunstan sent in another revision of a patch to add some missing
JSON[B] functions.

Stephen Frost sent in another revision of a patch to clean up
superuser().

Amit Kapila sent in another revision of a patch to allow parallel
cores to be used by vacuumdb.

Adam Brightwell sent in another revision of a patch to add
directory and file access permissions for COPY and generic file access
functions.

Andres Freund sent in a WIP patch to implement a lockless
StrategyGetBuffer() clock sweep.

Marko (johto) Tiikkaja sent in two more revisions of a patch to add
PGP signatures to the pgcrypto contrib extension.

Rahila Syed sent in another revision of a patch to do compression of
full-page writes.

Michael Paquier sent in another revision of a patch to implement
REINDEX CONCURRENTLY.

Andres Freund sent in a patch to eliminate "snapshot too large"
messages by doubling the array size until the snapshot is no longer
too large for it.

Peter Eisentraut sent in a patch to see to it that TAP tests run in a
deeply nested directory tree.

Peter Eisentraut sent in a patch to handle the situation where the
"prove" utility is not available.

Etsuro Fujita sent in a patch to improve automatic analyze messages
for inheritance trees.

Stephen Frost sent in a patch to fix an incompatibility between views
created with WITH CHECK OPTION and column-level privileges.

Szymon Guz and Pavel Stehule traded patches to add asciidoc format to
psql table output.

Heikki Linnakangas sent in another revision of a patch to change the
API and format of WALs.

Kyotaro HORIGUCHI and Adam Brightwell traded patches to implement
ALTER USER/ROLE...CURRENT USER.

Abhijit Menon-Sen sent in a patch to initdb to make initdb -S fsync
everything under pg_tblspc.

Fujii Masao sent in another revision of a patch to add a
pending_list_cleanup_size GUC and associated machinery.

Michael Paquier sent in two more revisions of a patch to factor the
code for sync node detection out of walsender.c and syncrep.c.

Fabrízio de Royes Mello sent in another revision of a patch to
implement CINE for indexes.

Jim Nasby sent in a patch to move the bulk of exec_simple_query into
exec_query_string() so that pg_backend can also make use of it.

Robert Haas sent in another revision of a patch to implement
pg_background, which runs commands in a background worker, and gets
the results.

Peter Eisentraut sent in a patch to add a ./configure enable_tap_tests
option.

Fabrízio de Royes Mello sent in another revision of a patch to
implement CINE functionality for materialized views.

Furuya Osamu sent in another revision of a patch to add fsync feedback
to pg_receivexlog --status-interval.

Petr (PJMODOS) Jelinek sent in another revision of a patch to add a
shutdown_at_recovery_target option to recovery.conf.

Thomas Munro sent in another revision of a patch to support DISTINCT
with a btree skip scan.

Andres Freund sent in a patch to fix an issue with large tables in two
parts: a faster PageIsVerified() for the all zeroes case, and a
much faster O-1 mfdvec, removing the quadratic behavior in same.

Simon Riggs sent in a patch to reduce logging of AccessExclusiveLocks
for temp tables by skipping logging locks in the case of
relation_open_temp().

Petr (PJMODOS) Jelinek sent in another revision of a patch to track
commit timestamps.



В списке pgsql-announce по дате отправления:

Предыдущее
От: Hiroshi Saito
Дата:
Сообщение: psqlODBC 09.03.0400 Released
Следующее
От: "SQL Maestro Group"
Дата:
Сообщение: PostgreSQL PHP Generator 14.10 released