pdf viewer for asp.net web application : How to add an image to a pdf file SDK control service wpf web page html dnn postgresql-9.4-A4232-part2871

Appendix E. Release Notes
Report errors properly in
contrib/xml2
’s
xslt_process()
(Tom Lane)
Update time zone data files to tzdata release 2012e for DST law changes in Morocco and Tokelau
E.56. Release 9.1.4
ReleaseDate: 2012-06-04
This release contains avariety of fixes from 9.1.3. For information about new features in the 9.1major
release, see Section E.60.
E.56.1. Migration to Version 9.1.4
Adump/restore is not required for those running 9.1.X.
However, if you use the
citext
data type, and you upgraded from a previous major release by
running pg_upgrade, you should run
CREATE EXTENSION citext FROM unpackaged
to avoid
collation-related failures in
citext
operations. The same is necessary if you restore a dump from a
pre-9.1 database that contains an instance of the
citext
data type. If you’ve already run the
CREATE
EXTENSION
command before upgrading to 9.1.4, you will instead need to do manual catalog updates
as explained in the third changelog item below.
Also, if you are upgrading from a version earlier than 9.1.2, see Section E.58.
E.56.2. Changes
Fix incorrect password transformation in
contrib/pgcrypto
’s DES
crypt()
function (Solar
Designer)
If a password string contained the byte value
0x80
,the remainder of the password was ignored,
causing the password to be much weaker than it appeared. With this fix, the rest of the string is
properly included in the DES hash. Any stored password values that are affected by this bug will
thus no longer match, so the stored values may need to be updated. (CVE-2012-2143)
Ignore
SECURITY DEFINER
and
SET
attributes for a procedural language’s call handler (Tom
Lane)
Applying such attributes to a call handler could crash the server. (CVE-2012-2655)
Make
contrib/citext
’s upgrade script fix collations of
citext
arrays and domains over
citext
(Tom Lane)
Release 9.1.2 provided a fix for collations of
citext
columns and indexes in databases upgraded
or reloadedfrom pre-9.1installations, butthatfixwas incomplete: it neglected to handlearrays and
domains over
citext
.This release extends the module’s upgrade script to handle these cases. As
before, if youhavealreadyrun the upgradescript, you’llneed to runthecollationupdate commands
by hand instead. See the 9.1.2 release notes for more information about doing this.
Allow numeric timezone offsets in
timestamp
input to be up to 16 hours away from UTC (Tom
Lane)
2248
How to add an image to a pdf file - insert images into PDF in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Sample C# code to add image, picture, logo or digital photo into PDF document page using PDF page editor control
how to add jpg to pdf file; adding images to a pdf document
How to add an image to a pdf file - VB.NET PDF insert image library: insert images into PDF in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Guide VB.NET Programmers How to Add Images in PDF Document
how to add a jpeg to a pdf; how to add an image to a pdf file
Appendix E. Release Notes
Some historical time zones have offsets larger than 15 hours, the previous limit. This could result
in dumped data values being rejected during reload.
Fix timestamp conversion to cope when the given time is exactly the last DST transition time for
the current timezone (Tom Lane)
This oversight has been there a long time, but was not noticed previouslybecause most DST-using
zones are presumed to have an indefinite sequence of future DST transitions.
Fix
text
to
name
and
char
to
name
casts to perform string truncation correctly in multibyte
encodings (Karl Schnaitter)
Fix memory copying bug in
to_tsquery()
(Heikki Linnakangas)
Ensure
txid_current()
reports the correct epoch when executed in hot standby (Simon Riggs)
Fix planner’s handling of outer PlaceHolderVars within subqueries (Tom Lane)
This bug concerns sub-SELECTs that reference variables coming from the nullable side of an
outer join of the surrounding query. In 9.1, queries affected by this bug would fail with “ERROR:
Upper-level PlaceHolderVar found where not expected”. But in 9.0 and 8.4, you’d silently get
possibly-wrong answers, since the value transmitted into the subquery wouldn’t go to null when it
should.
Fix planning of
UNION ALL
subqueries with output columns that are not simple variables (Tom
Lane)
Planning of suchcases got noticeablyworse in9.1 as a result of a misguidedfixfor “MergeAppend
child’s targetlist doesn’t match MergeAppend” errors. Revert that fix and do it another way.
Fix slow session startup when
pg_attribute
is very large (Tom Lane)
If
pg_attribute
exceeds one-fourth of
shared_buffers
,cache rebuilding code that is some-
times neededduring session startwouldtrigger the synchronized-scanlogic, causingittotake many
times longer than normal. The problem was particularly acute if many new sessions were starting
at once.
Ensure sequential scans checkfor query cancel reasonably often (MerlinMoncure)
Ascan encountering many consecutive pages that contain no live tuples would not respond to
interrupts meanwhile.
Ensure the Windows implementation of
PGSemaphoreLock()
clears
ImmediateInterruptOK
before returning (Tom Lane)
This oversight meant that a query-cancel interrupt received later in the same query could be ac-
cepted at an unsafe time, with unpredictable but not goodconsequences.
Show whole-rowvariables safely when printing views or rules (Abbas Butt, Tom Lane)
Corner cases involving ambiguous names (that is, the name could be either a table or columnname
of the query) were printed in an ambiguous way, risking that the view or rule would be interpreted
differently after dump andreload. Avoid the ambiguous case by attaching a no-op cast.
Fix
COPY FROM
to properly handle null marker strings that correspond to invalid encoding (Tom
Lane)
Anull marker stringsuch as
E’\\0’
shouldwork, and did work in the past, butthe casegotbroken
in 8.4.
Fix
EXPLAIN VERBOSE
for writable CTEs containing
RETURNING
clauses (Tom Lane)
Fix
PREPARE TRANSACTION
to workcorrectly in the presence of advisory locks (Tom Lane)
2249
VB.NET PDF Password Library: add, remove, edit PDF file password
This VB.NET example shows how to add PDF file password with access permission setting. passwordSetting.IsAssemble = True ' Add password to PDF file.
add a picture to a pdf; how to add photo to pdf in preview
C# PDF Password Library: add, remove, edit PDF file password in C#
This example shows how to add PDF file password with access permission setting. passwordSetting.IsAssemble = true; // Add password to PDF file.
add photo to pdf for; add jpg signature to pdf
Appendix E. Release Notes
Historically,
PREPARE TRANSACTION
has simply ignored any session-level advisorylocks theses-
sion holds, but this case was accidentally broken in 9.1.
Fix truncation of unlogged tables (Robert Haas)
Ignore missing schemas during non-interactive assignments of
search_path
(Tom Lane)
This re-aligns 9.1’s behavior with that of older branches. Previously 9.1 would throw an error for
nonexistent schemas mentioned in
search_path
settings obtained from places such as
ALTER
DATABASE SET
.
Fix bugs with temporary or transient tables used in extension scripts (Tom Lane)
This includes cases such as a rewriting
ALTER TABLE
within an extension update script, since that
uses a transient table behind the scenes.
Ensureautovacuum worker processes perform stack depthchecking properly (Heikki Linnakangas)
Previously, infinite recursionina functioninvoked byauto-
ANALYZE
could crash worker processes.
Fix logging collector to not lose log coherency under high load (Andrew Dunstan)
The collector previously could fail to reassemble large messages if it got too busy.
Fix logging collector to ensure it will restart file rotation after receiving SIGHUP (Tom Lane)
Fix “too many LWLocks taken” failure in GiST indexes (Heikki Linnakangas)
Fix WAL replay logic for GIN indexes to not fail if the index was subsequently dropped (Tom
Lane)
Correctly detect SSI conflicts of prepared transactions after a crash (Dan Ports)
Avoid synchronous replication delay when committing a transaction that only modified temporary
tables (Heikki Linnakangas)
In such a case the transaction’s commit record need not be flushed to standby servers, but some of
the code didn’t know that and waited for it tohappen anyway.
Fix error handling in pg_basebackup (Thomas Ogrisegg, Fujii Masao)
Fix walsender to not go into a busy loop if connection is terminated (Fujii Masao)
Fix memory leak in PL/pgSQL’s
RETURN NEXT
command (Joe Conway)
FixPL/pgSQL’s
GET DIAGNOSTICS
commandwhen the target is the function’s firstvariable (Tom
Lane)
Ensure that PL/Perl package-qualifies the
_TD
variable (Alex Hunsaker)
This bug caused trigger invocations to fail when they are nested within a function invocation that
changes the current package.
Fix PL/Python functions returning composite types to accept a string for their result value (Jan
Urbanski)
This case was accidentally broken by the 9.1 additions to allow a composite result value to be
supplied in other formats, such as dictionaries.
Fixpotential access off the endof memory inpsql’s expanded display(
\x
)mode (Peter Eisentraut)
Fix several performance problems in pg_dump when the database contains many objects (Jeff
Janes, Tom Lane)
pg_dump could get very slow if the database contained many schemas, or if many objects are in
dependency loops, or if there are many owned sequences.
2250
C# PDF File & Page Process Library SDK for C#.net, ASP.NET, MVC
C# File: Split PDF; C# Page: Insert PDF pages; C# Page: Delete PDF pages; C# Read: PDF Image Extract; C# Write: Insert text into PDF; C# Write: Add Image to PDF;
add signature image to pdf; add picture to pdf reader
C# PDF Image Extract Library: Select, copy, paste PDF images in C#
Scan image to PDF, tiff and various image formats. Get image information, such as its location, zonal information Able to edit, add, delete, move, and output PDF
add signature image to pdf acrobat; add image to pdf acrobat reader
Appendix E. Release Notes
Fix memory and file descriptor leaks in pg_restore when reading a directory-format archive (Peter
Eisentraut)
Fix pg_upgrade for the case that a database stored in a non-default tablespace contains a table in
the cluster’s default tablespace (Bruce Momjian)
In ecpg, fix rare memory leaks and possible overwrite of one byte after the
sqlca_t
structure
(Peter Eisentraut)
Fix
contrib/dblink
’s
dblink_exec()
to not leak temporary database connections upon error
(Tom Lane)
Fix
contrib/dblink
to report the correct connection name in error messages (Kyotaro
Horiguchi)
Fix
contrib/vacuumlo
to use multiple transactions when dropping many large objects (Tim
Lewis, Robert Haas, Tom Lane)
This change avoids exceeding
max_locks_per_transaction
when many objects need to be
dropped. The behavior can be adjusted with the new
-l
(limit) option.
Update time zone data files to tzdata release 2012c for DST law changes in Antarctica, Armenia,
Chile, Cuba, Falkland Islands, Gaza, Haiti, Hebron, Morocco, Syria, and Tokelau Islands; also
historical corrections for Canada.
E.57. Release 9.1.3
ReleaseDate: 2012-02-27
This release contains avariety of fixes from 9.1.2. For information about new features in the 9.1major
release, see Section E.60.
E.57.1. Migration to Version 9.1.3
Adump/restore is not required for those running 9.1.X.
However, if you are upgrading from a version earlier than 9.1.2, see Section E.58.
E.57.2. Changes
Require execute permission on the trigger function for
CREATE TRIGGER
(Robert Haas)
This missingcheckcould allow another user toexecutea trigger function withforgedinput data, by
installing it on a table he owns. This is only of significance for trigger functions marked
SECURITY
DEFINER
,since otherwise trigger functions run as the table owner anyway. (CVE-2012-0866)
Remove arbitrary limitation on length of common name in SSL certificates (Heikki Linnakangas)
Both libpq and the server truncated the common name extracted from an SSL certificate at 32
bytes. Normally this would cause nothing worse than an unexpected verification failure, but there
are some rather-implausible scenarios inwhich itmight allow one certificate holder to impersonate
another. The victim would have to have a common name exactly 32 bytes long, and the attacker
2251
C# PDF File Compress Library: Compress reduce PDF size in C#.net
Convert smooth lines to curves. Detect and merge image fragments. Flatten visible layers. C#.NET DLLs: Compress PDF Document. Add necessary references:
adding an image to a pdf; adding image to pdf file
VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
Reduce image resources: Since images are usually or large size, images size reducing can help to reduce PDF file size effectively.
how to add a photo to a pdf document; add image to pdf online
Appendix E. Release Notes
would have to persuade a trusted CA to issue a certificate in which the common name has that
string as a prefix. Impersonating a server would also require some additional exploit to redirect
client connections. (CVE-2012-0867)
Convert newlines to spaces in names written in pg_dump comments (Robert Haas)
pg_dump was incautious aboutsanitizingobjectnames that are emittedwithin SQLcomments in its
output script. A name containing a newline would at least render the script syntactically incorrect.
Maliciously crafted object names could present a SQL injection risk when the script is reloaded.
(CVE-2012-0868)
Fix btree index corruption from insertions concurrent with vacuuming (Tom Lane)
An index page split caused by an insertion could sometimes cause a concurrently-running
VACUUM
to miss removing index entries that it should remove. After the corresponding table rows are re-
moved, the dangling index entries would cause errors (such as “could not read block N in file ...”)
or worse, silently wrong query results after unrelated rows are re-inserted at the now-free table
locations. This bug has been present since release 8.2, but occurs soinfrequently that it was not di-
agnosed until now. If you have reason to suspect that it has happened in your database, reindexing
the affected index will fix things.
Fix transient zeroing of shared buffers during WAL replay (Tom Lane)
The replay logic would sometimes zero and refill a shared buffer, so that the contents were tran-
siently invalid. In hot standby mode this can result in a query that’s executing in parallel seeing
garbage data. Various symptoms could result from that, but the most common one seems to be
“invalid memory alloc request size”.
Fix handling of data-modifying
WITH
subplans in
READ COMMITTED
rechecking (Tom Lane)
A
WITH
clause containing
INSERT
/
UPDATE
/
DELETE
would crash if the parent
UPDATE
or
DELETE
command needed to be re-evaluated at one or more rows due to concurrent updates in
READ
COMMITTED
mode.
Fix corner case in SSI transaction cleanup (Dan Ports)
When finishing up a read-write serializable transaction, a crash could occur if all remaining active
serializable transactions are read-only.
Fix postmaster to attempt restart after a hot-standby crash (Tom Lane)
Alogic error caused the postmaster to terminate, rather than attempt to restart the cluster, if any
backend process crashed while operating in hot standby mode.
Fix
CLUSTER
/
VACUUM FULL
handling of toast values owned by recently-updatedrows (Tom Lane)
This oversight could lead to “duplicate key value violates unique constraint” errors being reported
against the toast table’s index during one of these commands.
Update per-column permissions, not only per-table permissions, when changing table owner (Tom
Lane)
Failure todo this meantthatanypreviously granted column permissions were still shownas having
been granted by the oldowner. This meant that neither the newowner nor a superuser could revoke
the now-untraceable-to-table-owner permissions.
Support foreign data wrappers and foreign servers in
REASSIGN OWNED
(Alvaro Herrera)
This command failed with “unexpected classid” errors if it needed to change the ownership of any
such objects.
Allow non-existent values for some settings in
ALTER USER/DATABASE SET
(Heikki Linnakan-
gas)
2252
VB.NET PDF Image Extract Library: Select, copy, paste PDF images
PDF SDK for .NET, VB.NET users are able to extract image from PDF page or file and specified DLLs for PDF Image Extraction in VB.NET. Add necessary references:
add a picture to a pdf file; adding an image to a pdf in acrobat
C# PDF File Merge Library: Merge, append PDF files in C#.net, ASP.
PDF document splitting, PDF page reordering and PDF page image and text Add necessary references: In addition, C# users can append a PDF file to the end of a
adding image to pdf; adding an image to a pdf form
Appendix E. Release Notes
Allow
default_text_search_config
,
default_tablespace
,and
temp_tablespaces
to
be set tonames that are notknown. This is because theymightbe known in another database where
the setting is intended to be used, or for the tablespace cases because the tablespace might not be
created yet. The same issue was previously recognized for
search_path
,and these settings now
act like that one.
Fix “unsupported node type” error caused by
COLLATE
in an
INSERT
expression (Tom Lane)
Avoid crashing when we have problems deleting table files post-commit (Tom Lane)
Droppinga tableshouldleadtodeletingtheunderlyingdiskfiles onlyafter thetransactioncommits.
In event of failure then (for instance, because of wrong file permissions) the code is supposed to
just emit a warning message and go on, since it’s too late to abort the transaction. This logic got
brokenas of release 8.4, causingsuch situations to resultin aPANIC and an unrestartable database.
Recover from errors occurring during WAL replay of
DROP TABLESPACE
(Tom Lane)
Replay will attempt to remove the tablespace’s directories, but there are various reasons why this
might fail (for example, incorrect ownership or permissions on those directories). Formerly the re-
play code would panic, rendering the database unrestartable without manual intervention. It seems
better to log the problem and continue, since the only consequence of failure to remove the direc-
tories is some wasted disk space.
Fix race condition in logging AccessExclusiveLocks for hot standby (Simon Riggs)
Sometimes a lock would be logged as being held by “transaction zero”. This is at least known to
produce assertion failures on slave servers, and might be the cause of more serious problems.
Track the OID counter correctly during WAL replay, even when it wraps around (Tom Lane)
Previouslythe OIDcounter wouldremain stuck at a highvalueuntilthesystem exitedreplaymode.
The practical consequences of that are usually nil, but there are scenarios wherein a standby server
that’s been promoted to master might take a long time to advance the OID counter to a reasonable
value once values are needed.
Prevent emitting misleading “consistent recovery state reached” log message at the beginning of
crash recovery (Heikki Linnakangas)
Fix initial value of
pg_stat_replication
.
replay_location
(Fujii Masao)
Previously, the value shown would be wrong until at least one WAL record had been replayed.
Fix regular expression back-references with
*
attached (Tom Lane)
Rather than enforcing an exact string match, the code would effectively accept any string that
satisfies the pattern sub-expression referenced by the back-reference symbol.
Asimilar problem still afflicts back-references that are embedded in a larger quantified expres-
sion, rather than being the immediate subject of the quantifier. This will be addressed in a future
PostgreSQL release.
Fix recently-introduced memory leak in processing of
inet
/
cidr
values (Heikki Linnakangas)
Apatch inthe December 2011releases of PostgreSQL causedmemoryleakage intheseoperations,
whichcould be significant inscenarios such as building a btree index on such a column.
Fix planner’s ability to push down index-expression restrictions through
UNION ALL
(Tom Lane)
This type of optimization was inadvertently disabled by a fix for another problem in 9.1.2.
Fix planning of
WITH
clauses referenced in
UPDATE
/
DELETE
on an inherited table (Tom Lane)
This bug led to “could not find plan for CTE” failures.
Fix GIN cost estimation to handle
column IN (...)
index conditions (Marti Raudsepp)
2253
Appendix E. Release Notes
This oversight would usually lead to crashes if such a condition could be used with a GIN index.
Prevent assertion failure when exiting a sessionwith an open, failed transaction (Tom Lane)
This bug has no impact on normal builds with asserts not enabled.
Fix dangling pointer after
CREATE TABLE AS
/
SELECT INTO
in a SQL-language function (Tom
Lane)
In most cases this only led to an assertion failure in assert-enabled builds, but worse consequences
seem possible.
Avoid double close of file handle in syslogger on Windows (MauMau)
Ordinarily thiserror was invisible, but it wouldcausean exception whenrunningonadebugversion
of Windows.
Fix I/O-conversion-related memory leaks in plpgsql (Andres Freund, Jan Urbanski, Tom Lane)
Certain operations would leak memory until the end of the current function.
Work around bug in perl’s SvPVutf8() function (Andrew Dunstan)
This function crashes when handed a typeglob or certain read-only objects such as
$^V
.Make
plperl avoid passingthose toit.
In pg_dump, don’t dump contents of an extension’s configuration tables if the extension itself is
not being dumped (Tom Lane)
Improve pg_dump’s handling of inherited table columns (Tom Lane)
pg_dump mishandled situations where a child column has a different default expression than its
parent column. If the default is textually identical to the parent’s default, but not actually the same
(for instance, because of schema searchpathdifferences) itwouldnotbe recognized as different, so
thatafter dump and restorethechild would be allowedto inheritthe parent’s default. Childcolumns
that are
NOT NULL
where their parent is not could also be restored subtly incorrectly.
Fix pg_restore’s direct-to-database mode for INSERT-style table data (Tom Lane)
Direct-to-database restores from archive files made with
--inserts
or
--column-inserts
op-
tions fail when using pg_restore from a release dated September or December 2011, as a result of
anoversightin a fix for another problem. The archive file itself is not at fault, andtext-mode output
is okay.
Teach pg_upgrade to handle renaming of plpython’s shared library (Bruce Momjian)
Upgrading a pre-9.1 database that included plpython would fail because of this oversight.
Allow pg_upgrade to process tables containing
regclass
columns (Bruce Momjian)
Since pg_upgrade now takes care to preserve
pg_class
OIDs, there was no longer any reason for
this restriction.
Make libpqignore
ENOTDIR
errors when looking for an SSL client certificate file (Magnus Hagan-
der)
This allows SSL connections to be established, though without a certificate, even when the user’s
home directory is set to something like
/dev/null
.
Fix some more field alignment issues in ecpg’s SQLDA area (Zoltan Boszormenyi)
Allow
AT
option inecpg
DEALLOCATE
statements (Michael Meskes)
The infrastructure to support this has been there for awhile, but through an oversight there was still
an error check rejecting the case.
Do not use the variable name when defining a varchar structure in ecpg (Michael Meskes)
2254
Appendix E. Release Notes
Fix
contrib/auto_explain
’s JSONoutput mode to produce valid JSON (Andrew Dunstan)
The output used brackets at the top level, when it should have used braces.
Fix error in
contrib/intarray
’s
int[] & int[]
operator (Guillaume Lelarge)
If the smallest integer the two input arrays have in common is 1, and there are smaller values in
either array, then 1would be incorrectly omitted from the result.
Fix error detectionin
contrib/pgcrypto
’s
encrypt_iv()
and
decrypt_iv()
(Marko Kreen)
These functions failed to report certain types of invalid-input errors, and would instead return ran-
dom garbage values for incorrect input.
Fix one-byte buffer overrun in
contrib/test_parser
(Paul Guyot)
The code would try to read one more byte than it should, which would crash in corner cases. Since
contrib/test_parser
is onlyexample code, this isnota securityissue in itself, butbadexample
code is still bad.
Use
__sync_lock_test_and_set()
for spinlocks on ARM, if available (Martin Pitt)
This function replaces our previous use of the
SWPB
instruction, which is deprecated and not avail-
able on ARMv6 and later. Reports suggest that the old code doesn’t fail in an obvious way on
recent ARM boards, butsimply doesn’t interlock concurrent accesses, leadingto bizarre failures in
multiprocess operation.
Use
-fexcess-precision=standard
optionwhenbuildingwithgccversions thatacceptit(An-
drew Dunstan)
This prevents assorted scenarios wherein recent versions of gcc will produce creative results.
Allow use of threaded Python on FreeBSD (Chris Rees)
Our configure script previously believed that this combination wouldn’t work; but FreeBSD fixed
the problem, so remove that error check.
Allow MinGWbuilds to use standardly-named OpenSSL libraries (Tomasz Ostrowski)
E.58. Release 9.1.2
ReleaseDate: 2011-12-05
This release contains avariety of fixes from 9.1.1. For information about new features in the 9.1major
release, see Section E.60.
E.58.1. Migration to Version 9.1.2
Adump/restore is not required for those running 9.1.X.
However, a
longstanding
error
was
discovered
in
the
definition
of
the
information_schema.referential_constraints
view. If you rely on correct results from
that view, you should replace its definition as explained in the first changelog item below.
Also, if you use the
citext
data type, and you upgraded from a previous major release by running
pg_upgrade, you should run
CREATE EXTENSION citext FROM unpackaged
to avoid collation-
related failures in
citext
operations. The same is necessary if you restore a dump from a pre-
2255
Appendix E. Release Notes
9.1 database that contains an instance of the
citext
data type. If you’ve already run the
CREATE
EXTENSION
command before upgrading to 9.1.2, you will instead need to do manual catalog updates
as explained in the second changelog item.
E.58.2. Changes
Fix bugs in
information_schema.referential_constraints
view (Tom Lane)
This view was being insufficiently careful about matching the foreign-key constraint to the
depended-on primary or unique key constraint. That could result in failure to show a foreign key
constraint at all, or showing it multiple times, or claiming that it depends on a different constraint
than the one it really does.
Since the view definition is installed by initdb, merely upgrading will not fix the problem. If you
need to fix thisin anexisting installation, youcan (as a superuser) dropthe
information_schema
schema then re-create it by sourcing
SHAREDIR
/information_schema.sql
.(Run
pg_config
--sharedir
if you’re uncertain where
SHAREDIR
is.) This must be repeated in each database to
be fixed.
Make
contrib/citext
’s upgrade script fix collations of
citext
columns and indexes (Tom
Lane)
Existing
citext
columns and indexes aren’t correctly marked as being of a collatable data type
during pg_upgrade from a pre-9.1 server, or when a pre-9.1 dump containing the
citext
type is
loaded intoa 9.1server. That leads to operations on these columns failing witherrors suchas “could
not determine which collation to use for string comparison”. This change allows them to be fixed
by the same script that upgrades the
citext
module into a proper 9.1 extension during
CREATE
EXTENSION citext FROM unpackaged
.
If you have a previously-upgraded database that is suffering from this problem, and you already
ran the
CREATE EXTENSION
command, you can manually run (as superuser) the
UPDATE
commands found at the end of
SHAREDIR
/extension/citext--unpackaged--1.0.sql
.(Run
pg_config --sharedir
if you’re uncertain where
SHAREDIR
is.) There is no harm in doing
this again if unsure.
Fix possible crash during
UPDATE
or
DELETE
that joins to the output of a scalar-returning function
(Tom Lane)
Acrash couldonly occur if the target row hadbeen concurrently updated, sothis problem surfaced
only intermittently.
Fix incorrect replay of WAL records for GIN index updates (Tom Lane)
This could result in transiently failing to find index entries after a crash, or ona hot-standby server.
The problem would be repaired by the next
VACUUM
of the index, however.
Fix TOAST-related data corruption during
CREATE TABLE dest AS SELECT
*
FROM src
or
INSERT INTO dest SELECT
*
FROM src
(Tom Lane)
If a table has been modified by
ALTER TABLE ADD COLUMN
,attempts to copy its data verbatim to
another table could produce corrupt results in certain corner cases. The problem can only manifest
in this precise form in 8.4 and later, but we patched earlier versions as well in case there are other
code paths that could trigger the same bug.
Fix possible failures during hot standby startup (SimonRiggs)
Start hot standby faster when initial snapshot is incomplete (Simon Riggs)
2256
Appendix E. Release Notes
Fix race condition during toast table access from stale syscache entries (Tom Lane)
The typical symptom was transient errors like “missing chunk number 0 for toast value NNNNN
in pg_toast_2619”, where the cited toast table would always belong to a system catalog.
Track dependencies of functions on items used in parameter default expressions (Tom Lane)
Previously, a referenced object couldbe dropped without having droppedor modified the function,
leading to misbehavior when the function was used. Note that merely installing this update will
not fix the missing dependency entries; to do that, you’d need to
CREATE OR REPLACE
each such
function afterwards. If you have functions whose defaults depend on non-built-in objects, doing so
is recommended.
Fix incorrect management of placeholder variables in nestloop joins (Tom Lane)
This bug is known to lead to “variable not found in subplan target list” planner errors, and could
possibly result in wrong query output when outer joins are involved.
Fix window functions that sort by expressions involving aggregates (Tom Lane)
Previously these could fail with “could not find pathkey item to sort” planner errors.
Fix “MergeAppend child’s targetlist doesn’t match MergeAppend” planner errors (Tom Lane)
Fix index matching for operators with both collatable and noncollatable inputs (Tom Lane)
In 9.1.0, an indexable operator that has a non-collatable left-hand input type anda collatable right-
hand input type would not be recognized as matching the left-hand column’s index. An example is
the
hstore ? text
operator.
Allow inlining of set-returning SQL functions with multiple OUT parameters (Tom Lane)
Don’t trust deferred-unique indexes for join removal (Tom Lane and Marti Raudsepp)
Adeferred uniqueness constraint might not hold intra-transaction, so assuming that it does could
give incorrect query results.
Make
DatumGetInetP()
unpack inet datums that have a 1-byte header, and add a new macro,
DatumGetInetPP()
,that does not (Heikki Linnakangas)
This change affects no core code, but might prevent crashes in add-on code that expects
DatumGetInetP()
to produce an unpacked datum as per usual convention.
Improve locale support in
money
type’s input and output (Tom Lane)
Aside from not supporting all standard
lc_monetary
formatting options, the input and output
functions were inconsistent, meaning there were locales in which dumped
money
values could not
be re-read.
Don’t let
transform_null_equals
affect
CASE foo WHEN NULL ...
constructs (Heikki Lin-
nakangas)
transform_null_equals
is only supposed to affect
foo = NULL
expressions written directly
by the user, not equality checks generated internally by this form of
CASE
.
Change foreign-keytrigger creationorder tobetter support self-referential foreignkeys (Tom Lane)
For a cascading foreign key that references its own table, a row update will fire both the
ON
UPDATE
trigger and the
CHECK
trigger as one event. The
ON UPDATE
trigger must execute first,
else the
CHECK
will check a non-final state of the row and possibly throw an inappropriate error.
However, the firing order of these triggers is determined by their names, which generally
sort in creation order since the triggers have auto-generated names following the convention
“RI_ConstraintTrigger_NNNN”. A proper fix would require modifying that convention, which we
will do in 9.2, but it seems risky to change it in existing releases. So this patch just changes the
2257
Documents you may be interested
Documents you may be interested