1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283
|
Version 4.4 - July 02 2025
This is a maintenance release to fix a search_path error when using pg_dump.
- Fix pg_dump error with invalid search_path. pg_dump set search_path to
empty string, appending the pgtt schema in this case make it fail.
- Update regression test expected output file related to search_path test.
Version 4.3 - June 09 2025
This is a quick maintenance release to fix an issue introduced in latest
release.
- Drop extension before running tests on search_path.
- Fix invalid search_path error. When pgtt isn't preloaded and pg_catalog
is the last element in search_path, results in error message "invalid
value for parameter 'search_path'" due to invalid list syntax. Thanks
to Japin Li for the patch.
Version 4.2 - June 08 2025
This is a maintenance release to fix issues reported by users since latest
release and especially a search_path modification issue.
- Preserve pg_catalog at end of search path if it is the case to allow
pg_catalog overloaded function to be executed.
- Add regression test on search_path forcing.
- Preserve $user and other elements in search_path. Thanks to Japin Li
for the patch.
- Remove the LOAD command from documentation. Thanks to Li Jianping for the
patch.
- Fix session_preload_libraries documentation for non-superusers. Thanks
to Japin Li for the patch.
- Resolve a warning regarding incompatible pointer types. Thanks to Li
Jianping for the patch.
Version 4.1 - March 18 2025
This is a maintenance release to fix issues reported by users since latest
release.
- Use query instead of \d to list indexes in regression tests.
- Fix wrong complain about temporary table created and active when a
regular temporary table is created with (LIKE ... INCLUDING INDEXES).
Thanks to Benjamin Wirth for the report.
- Remove documentation for non-superuser configuration. Thanks to Julien
Rouhaud for the patch.
- Fix config in README. The concrete path to the shared library is not
needed in postgresql.conf. Thanks to Simon Martin for the patch.
- Install docs to a non-generic name, add a symlink to README.md that is
referenced in DOCS. Thanks to Christoph Berg for the patch.
- Add vaccum pg_class + pg_sleep(1) after each drop table in regression
tests to wait that the temporary table is really removed.
- Add missing PGDLLEXPORT tags on callback functions, those are needed on
windows. Thanks to Julien Rouhaud for the patch.
Version 4.0 - May 31 2024
This major release allow preloading pgtt in session_preload_libraries
and adds support to Windows operating system. Here is the complete list
of changes.
- Add port to Windows operating system. Note that, for some unknown reasons
it doesn't work at all with PostgreSQL 13. Thanks to Julien Rouhaud for
the patch
- Allow preloading pgtt in session_preload_libraries. The module is now lazily
loaded when it might be needed (after parse analysis, before executor
startup and before utility statements execution), and all the code is simply
bypassed if the underlying extension has not been created. Thanks to Julien
Rouhaud for the patch.
- Fix first query execution after a LOAD command. If the extension is loaded
with a plain LOAD command, the search_path will only be set during the next
query execution. It means that the very first query executed after such a
LOAD wouldn't see the global temporary tables. Thanks to Julien Rouhaud for
the patch.
- Remove the relocation test, the extension is not relocatable anymore.
- Fix crash with RESET ALL. RESET ALL has a NULL "name" field, so we can't use
strcmp in that case. Since the existing code is only interested in SET
commands, just move up the check that the command is a VAR_SET_VALUE to
ensure that we will have a GUC name. Thanks to Julien Rouhaud for the patch.
- Fix various minor whitespace and indent issues. Thanks to Julien Rouhaud for
the patch.
- Add Julen Rouhaud in the authors and maintainers list.
Version 3.2 - Apr 12 2024
This is a maintenance release to fix issues reported by users since latest
release and compatibility with future PG 17.
- Add information about privilege on the pgtt schema.
- Make test on lock compatible with version <= 14
- The temporary table needs to be locked. Thanks to Leo X.M. Zeng for the patch.
- Replace MyBackendId with MyProcNumber for PG > 16
- Check extension when loading pgtt. Thanks to Japin Li for the patch.
- Release lock on global template temporary table. Thanks to Japin Li for the patch.
Version 3.1 - Dec 26 2023
This is a maintenance release to fix issues reported by users since latest
release.
- Fix ERROR: attempt to redefine parameter "pgtt.enabled". Thanks to
Japin Li for the report.
- Forget acquiring lock for temporary table. Thanks to Japin Li for the patch.
- Add temporisation after vacuum in 08_plplgsql test.
- Update main.yml to remove PG versions prior 12.
Version 3.0 - Sep 17 2023
This major release fix several issues related to PostgreSQL v16 port
and remove support to PostgreSQL version prior 12. Here is the complete
list of changes.
- Remove support to PostgreSQL prior v12.
- Fix compilation error: static declaration of get_extension_schema follows
non-static declaration. Thanks to Devrim Gunduz for the report.
- Remove grouping set in regexp.
- Add -Wno-ignored-attributes to CPPFLAGS to avoid compilation warning on
pg_vsnprintf call.
- Replace GetOverrideSearchPath() call by GetSearchPathMatcher() with
PG > 16
- Fix debug information print on Windows. Thanks to Lanlan for the patch.
- Replace reg* regexp function with the pg_reg* function. Thanks to Lanlan
for the report.
- Fix port to PostgreSQL v16. Thanks to Julien Rouhaud for the patch.
Version 2.10 - Feb 23 2023
This is a maintenance release to fix a lock issue in multi parallel process
environment, many locks were generated. Here is the complete list of changes.
- Delegate locks on per session temporary tables to PostgreSQL when the table
will be used.
- Release lock on parent table after temporary table creation based on this
relation. Thanks to jayhsiang and liyaojinli for the report.
- Use vacuum in test 08 to not look at pg_class too early before the temporary
table is remove.
- Fix setting default value of the parent table's persistence that can be
misleading in future development. Thanks to songjinzhou for the patch.
- Fix documentation. Thanks to Luca Ferrari for the patch.
Version 2.9 - Aug 16 2022
This is a maintenance release per CVE-2022-2625 and new PostgreSQL minor
versions updates.
- Remove creation of the pgtt_schema if it not exists from extension
files per CVE-2022-2625. Thanks to Dmitry Ukolov for the report.
- Add regression test for regular table drop.
Version 2.8 - Jun 02 2022
This is a maintenance release to add support to PostgreSQL 15
and fix an error when trying to drop a regular table.
- Add support to PostgreSQL 15.
- Fix impossibility to drop a regular table when the extension is loaded.
Thanks to basildba for the report.
Version 2.7 - Nov 23 2021
This is a maintenance release to fix an issue with parallelism
and improve performances.
- Prevent code to be executed in parallel processes. Thanks to
Dmitry Ukolov for the report.
- Improve performances by not looking for an existing GTT table
if the table is a temporary table or part of the pg_catalog.
- Update ChangeLog to acknowledge patch on PG14 support to Dmitry Ukolov.
- Update copyright year.
Version 2.6 - Sep 22 2021
This is a maintenance release to add support for upcomming PostgreSQL 14
and fixed some issues reported in the past three months.
- Add support to PostgreSQL 14. Thanks to Devrim Gunduz for the report
and Dmitry Ukolov for the patch.
- Remove support to PG 9.5 which obviously was not working. Minimal PG
version for this extension is 9.6.
- Fix documentation menu.
- Fix creation of GTT when there is a CHECK constraint with string
constant.
Version 2.5 - Jun 08 2021
This is a maintenance release to hotfix port on PostgreSQL 9.6.
- Fix port to PostgreSQL 9.6. Thanks to Devrim Gunduz for the report.
Version 2.4 - Jun 04 2021
This version allow use of the extension by non superuser and especially
the creation and maintenance of GTT. It also fixes compatibility with
PostgreSQL v14. Here is the full list of changes:
- Fix FailedAssertion "flags & HASH_STRINGS" with PG14. Thanks to
MigOps for the patch.
- Check for minimum pg version in the C code instead of Makefile.
Thanks to MigOps for the patch.
- Fixed compiling for PostgreSQL 14. Thanks to Dmitry Ukolov for
the patch.
- Fix documentation about privilege to set on pgtt_schema for a
non superuser role.
- Allow creation and maintenance of Global Temporary Tables by non
superuser. This require that the user can use schema pgtt_schema
and can write to table pg_schema.pg_global_temp_tables.
- The library can now be loaded by the user using:
LOAD '$libdir/plugins/pgtt.so';
Thanks to Dmitry Ukolov for the feature request.
- Fix two crashes when --enable-cassert is used. Thanks to hanson69
for the report.
- Fix comment and index on PGTT table. Thanks to Dmitry Ukolov for
the report.
- Fix unexpected error "attempt to create referential integrity
constraint on global temporary table" when creating a regular
table and fix detection of FK and throw an error on create global
temporary table statement. Thanks to Dmitry Ukolov for the report.
- Fix impossibility to recreate GTT if it was dropped in another
session. Thanks to Dmitry Ukolov for the report.
- Remove useless extension's downgrade files. Thanks to MigOps
for the patch.
Version 2.3 - Apr 02 2021
This version fix the compatibility with PostgreSQL 10 and 11.
When use on PostgreSQL 10 and 11 the following was raised
ERROR: unrecognized node type: 375
Thanks to smallcookie086 for the report.
Add upgrade/downgrade SQL files.
Version 2.2 - Nov 08 2020
This release is a port of the extension for PostgreSQL v12 and v13.
Works now on all PostgreSQL version from v9.5 to current. It also
fixes automatic creation of the underlying temporary table after a
rollback.
Other fixes:
- Fix regression test for all supported PG version.
- Replace call to \d in regression tests, they do not report the
same information following PG version.
- Remove test about partitioning as it returns a failure for PG < 10.
- Update regression tests to avoid failure related to temp table id.
- Add regression test for error on rollback issue.
Version 2.1 - May 11 2020
This is a maintenance release to complete the work on the extension
and fix some issues.
* Prevent use of foreign keys with GTT, not that PostgreSQL do not
allow it but just to mimic the behavior of Oracle and other RDBMS
like DB2, SQL Server and MySQL for example.
* Raise an error on an attempt to partition a Global Temporary Table.
This is not supported, again not because PostgreSQL do not allow
partition on temporary table but because other RDBMS like Oracle,
DB2 and MySQL do not support it.
* Add support to comments, constraints and identity columns clauses
when creating the GTT.
Other fixes:
- Add regression tests on partitioning and FK.
- Exclude regression.* files from git scope.
- Improve documentation and add information about constraints.
- Add documentation about unsupported FK and partition on GTT.
- Fix missing files for expected test results.
- Fix exclusion of .out and results directory.
- Update regression tests about changes on CREATE TABLE ... LIKE.
- Fix some typo in documentation and markdown titles.
Version 2.0 - April 19 2020
Initial release.
|