forked from ohmu/pgmemcache
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathNEWS
184 lines (136 loc) · 6.81 KB
/
NEWS
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
pgmemcache 2.0.6
================
* Fix building on earlier releases than 9.1. (thanks for the bugreport from Florian Von Block)
* Add libsasl2-dev to build deps
pgmemcache 2.0.5
================
* Some preliminary work on SASL support
* Make pgmemcache work with PG 9.1
* Support for building debs against PG 9.0 and 9.1
* Move to GIT.
* Fix erroneous memory allocation get_multi (thanks iglue)
pgmemcache 2.0.4
================
* Add support for building an HTML doc out of the README.pgmemcache
* Make pgmemcache work with libmemcached's 0.39 and 0.40 which again break API compatibility
* Remove memcache_stats(TEXT) (Note, memcache_stats() is still supported)
pgmemcache 2.0.3
===================
* Add support for all libmemcached 0.38 behaviors (a few had been added since these were updated the last time)
* Add preliminary Debian packaging support, documentation was updated a bit to reflect this.
pgmemcache 2.0.2
===================
* Make pgmemcache work with libmemcached 0.38 memory allocators.
This bumps up pgmemcache's libmemcached requirement up to 0.38.
pgmemcache 2.0.1
===================
* Remove some deprecated documentation
* Fix bug "[#1010761] Crash with pgmemcache 2.0.0 and postgres 8.4", thanks to Marc Munro for
pointing out the problem and a fix for it.
* Make libmemcached use PostgreSQL memory allocation routines. (requires libmemcached 0.31+), based on a patch from
Peter Meszaros with some editorialization by Hannu Valtonen. Note this bumps up our libmemcached minimum requirement to 0.31.
pgmemcache 2.0.0
===================
Finally a 2.0.0 release.
* Fix default (unset) GUC crashes, based on a patch from Claes Jakobsson
* Add BYTEA memcache_get
* Add TEXT[], BYTEA[] memcache_get_multi for the reduction of server roundtrips
pgmemcache 2.0 RC 1
===================
It looks likely that this is the last release before stamping this as 2.0.
* Fix pgmemcache not to throw an error when trying to delete a non-existent key from memcache.
(based on a report from Chander Ganesan)
pgmemcache 2.0 beta2
====================
On the way towards a 2.0 release:
* Make pgmemcache work on top of older versions of PostgreSQL (at least 8.3, probably earlier)
* Make libmemcached behavior configurable through PostgreSQL GUCs.
* prepend/append support
pgmemcache 2.0 beta1
====================
pgmemcache was completely rewritten to work on top of libmemcached. It requires PostgreSQL 8.4+ and
is not backwards compatible with older versions of PostgreSQL. That may or may not change depending
on how much are people interested in having it work on older versions.
Also some API's were deprecated:
* memcache_server_find_hash
* memcache_flush (note, not flush all)
* memcache_server_list (use stats)
* memcache_server_remove
* memcache_hash
Also starting from 2.0 beta 1 the maintainership has moved to Hannu Valtonen.
pgmemcache 1.2 beta1
====================
This release has a lot of new code and backward-incompatible changes;
it might be more accurate to label it "2.0".
* Add the pgmemcache.default_servers GUC variable. This specifies a
list of memcached servers ('host:port' pairs) that pgmemcache will
connect to by default. To use this, add pgmemcache to
preload_shared_libraries and custom_variable_classes, and then
define pgmemcache.default_servers as desired, all in postgreql.conf
* Remove memcache_free() and memcache_init(). Instead, define
_PG_init() and _PG_fini() functions, so that Postgres can invoke
them to do the appropriate initialization/cleanup work when
pgmemcache is loaded/unloaded from a process.
* Don't allocate any memory in TopMemoryContext directly. Instead,
create a small, long-lived context as a child of TopMemoryContext
and use that for the allocations we need to make.
* Add a new function, memcache_server_remove().
* Add a new SRF, memcache_server_list().
* Fix compile breakage against recent CVS HEAD.
* Change memcache_server_find(TEXT) and memcache_server_find(INT4)
to use OUT parameters, rather than returning a 'host:port' pair as a
single text value.
* Fix for crashes in memcache_incr(), memcache_decr(),
memcache_hash(): these weren't prepared to handle NULL inputs.
* Fix crash bug in memcache_flush_all0(): this function tried to
access a nonexistent function argument.
* Remove support for memcache_add(TEXT), memcache_set(TEXT), and
memcache_replace(TEXT). These were pointless, and treated NULL as
the empty string, which is wrong.
* Remove support for the "flags" concept from the API. This wasn't
actually feature complete (there was no way to fetch a flags value),
and was buggy anyway. I might readd this later.
* Removed deprecated function memcache_flush_all(TEXT);
memcache_flush(TEXT) should be used instead.
* Various code cleanup, editorialization on error message formats,
and refactorings.
pgmemcache 1.1
==============
* Add a TODO list.
* Fix a potential memory leak in memcache_server_add(): this function
might have unwittingly allocated memory in TopMemoryContext.
* Make the "port" argument to memcache_server_add() optional. If not
specified, it defaults to the libmemcache default (11211).
* Add a "dist" target to the Makefile.
pgmemcache 1.1 beta1
====================
* New maintainer: Neil Conway. Thanks to the sponsorship of The Open
Technology Group.
* Change build system to use just a normal Makefile and the Postgres
PGXS infrastructure, rather than pmk. This means pmk is no longer a
build dependency.
* Various fixes to allow pgmemcache to be built against PostgreSQL
8.2, including adding PG_MODULE_MAGIC. I've briefly tested this
release against CVS HEAD, 8.2, and 8.1. Note that this release will
NOT compile against PostgreSQL 8.0 or earlier; if this is important
to people, this could be fixed pretty easily.
* Fix a logic error in memcache_set_cmd(): as a result, memcache_set()
and memcache_replace() now work as intended, instead of being
aliases for memcache_add().
* Fix a buffer overflow in memcache_gen_host(): this function
neglected to allocate space for the varlena header.
* Fix a read of uninitialized memory in memcache_atomic_op(),
memcache_delete() and memcache_set_cmd().
* Remove all the code that connected and disconnected from SPI. As far
as I can see, pgmemcache has no need to use SPI at all: SPI is
intended for issuing SQL queries, which pgmemcache has no need to
do. Similarly, use palloc() rather than SPI_palloc().
* Fix various compiler warnings with gcc -Wall on AMD64, and
presumably other platforms as well. Use the C99 "PRIu64" macro to
get a portable printf(3) conversion specifier for 64-bit
unsigned integers.
* Fix error message style for elog() message strings: error message
should not begin with a capital letter.
* Optimize a few functions to use a stack-allocated StringInfoData,
rather than a heap-allocated StringInfo.
* Fix typo in the implementation of memcache_stat(TEXT).