]> git.evergreen-ils.org Git - OpenSRF.git/blob - ChangeLog
LP#1704116: fix intermittant failure of parallel building
[OpenSRF.git] / ChangeLog
1 commit 0a469559782c8e79e489e3fa003f90c7c92d51bf
2 Author: Galen Charlton <gmc@equinoxinitiative.org>
3 Date:   Thu Feb 16 15:32:13 2017 -0500
4
5     add release notes for OpenSRF 2.4.2
6     
7     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
8
9 28      0       doc/RELEASE_NOTES.txt
10
11 commit e72a15842c10d4c2288323ede92f38d4b4b41794
12 Author: Galen Charlton <gmc@equinoxinitiative.org>
13 Date:   Wed Feb 15 16:58:06 2017 -0500
14
15     LP#1652382: more improvements to cache key munging
16     
17     - teach osrfCacheRemove to clean keys
18     - fix implict declaration compilation warning
19     - account for fact that iscntrl('\0') returns true
20     
21     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
22     Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
23
24 5       2       src/libopensrf/osrf_cache.c
25
26 commit c1eae17ad8b61d62ad6795ca3cd01347c39c7903
27 Author: Galen Charlton <gmc@equinoxinitiative.org>
28 Date:   Wed Feb 15 14:12:34 2017 -0500
29
30     LP#1652382: handle cases where supplied key is longer than 250 bytes
31     
32     With this patch, if cache clients want to use a key longer
33     than the memcached text protocol limit of 250 bytes, the
34     key is normalized to 'shortened_' + md5_hex(normalized_key).
35     
36     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
37     Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
38
39 10      1       src/libopensrf/osrf_cache.c
40 4       0       src/perl/lib/OpenSRF/Utils/Cache.pm
41
42 commit b2ed8ef36baa1242448beae89ffe51a98f8175d1
43 Author: Mike Rylander <mrylander@gmail.com>
44 Date:   Mon Jan 30 12:54:10 2017 -0500
45
46     LP#1652382: Make use of the clean key just created
47     
48     Signed-off-by: Mike Rylander <mrylander@gmail.com>
49     Signed-off-by: Kathy Lussier <klussier@masslnc.org>
50     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
51     Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
52
53 1       1       src/libopensrf/osrf_cache.c
54
55 commit f608444010fff1b4b6da06b5ec49df643218b005
56 Author: Mike Rylander <mrylander@gmail.com>
57 Date:   Fri Jan 27 15:25:05 2017 -0500
58
59     LP#1652382: normalization of memcache keys in C code
60     
61     Memcache does not allow spaces in keys, so here we will actively strip them
62     from any key we get from a caller.  Some callers are not very proactive about
63     sending clean keys, and this patch prevents issues that can poison C-based
64     OpenSRF service backends.
65     
66     Signed-off-by: Mike Rylander <mrylander@gmail.com>
67     Signed-off-by: Kathy Lussier <klussier@masslnc.org>
68     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
69     Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
70
71 20      2       src/libopensrf/osrf_cache.c
72
73 commit da98d30ca754a5a9bacb09982f8cad9c053a3105
74 Author: Galen Charlton <gmc@esilibrary.com>
75 Date:   Thu Dec 22 15:53:12 2016 +0500
76
77     LP#1652122: fix infinite recursion in opensrf.system.method.all
78     
79     Under certain circumstances, calling opensrf.system.method.all on a
80     Perl service can result in an infinite recursion when attempting to
81     serialize an OpenSRF::Application object to JSON.  In particular,
82     this was observed to happen when doing an introspection of
83     the opensrf.settings service.
84     
85     This patch avoids the infinite recursion (and consequent memory
86     leak) by ensuring that the 'session' key is slated for exclusion
87     from serialization from OpenSRF::Application objects during
88     bootstrapping.
89     
90     Note that the problem does not affect all Perl services; if a
91     Perl service declares at least one streaming method, the auto-registration
92     of the .atomic method will result in 'session'-stripping.
93     
94     This patch fixes a regression introduced in bug 1350457.
95     
96     To test
97     -------
98     [1] Run 'introspect opensrf.settings' via srfsh; observe
99         that it never returns and that the opensrf.settings drone
100         will grow in memory sized until killed.
101     [2] Apply the patch, then repeat step 1. This time, the
102         request should succeed.
103     
104     Signed-off-by: Galen Charlton <gmc@esilibrary.com>
105     Signed-off-by: Mike Rylander <mrylander@gmail.com>
106
107 1       1       src/perl/lib/OpenSRF/System.pm
108
109 commit 5bd88d39d7d22e6deee85952f1dc827c138095c4
110 Author: Galen Charlton <gmc@esilibrary.com>
111 Date:   Fri Mar 18 10:59:11 2016 -0400
112
113     LP#1559121: remove Debian Squeeze support
114     
115     Now that Debian Squeeze's LTS (long-term support) period
116     has ended, Evergreen no longer offers community support
117     for that distribution. This patch removes references
118     to Squeeze from the installation scripts and documentation.
119     
120     To test:
121     
122     [1] Verify that Debian Squeeze is no longer referenced in
123         the installation documentation.
124     
125     Signed-off-by: Galen Charlton <gmc@esilibrary.com>
126
127 0       1       README
128 1       14      src/extras/Makefile.install
129
130 commit 65ed54c4dc713919756644d3873f8fa7d851b427
131 Author: Galen Charlton <gmc@esilibrary.com>
132 Date:   Thu Feb 4 13:09:48 2016 -0500
133
134     LP#1350457: add test case for perl2JSONObject change
135     
136     Signed-off-by: Galen Charlton <gmc@esilibrary.com>
137
138 4       1       src/perl/t/09-Utils-JSON.t
139
140 commit 675c7a693d9a5d4f228d7b7ca5fe3b3f7fd62214
141 Author: Mike Rylander <mrylander@gmail.com>
142 Date:   Wed Jul 30 13:29:46 2014 -0400
143
144     LP#1350457: Pass caller's session to subrequests called via method_lookup
145     
146     In the process of looking up a method for an internal subrequest, we lose
147     session info. This is a problem when the subrequest makes a remote request,
148     because then the subrequest can't look up the proper locale, among other
149     things. The forthcoming branch passes the caller's session to the subrequest.
150     
151     This patch also teaches OpenSRF object registration how to strip certain
152     object members -- in particular, the session -- so that introspection
153     continues to work.
154     
155     Signed-off-by: Mike Rylander <mrylander@gmail.com>
156     Signed-off-by: Galen Charlton <gmc@esilibrary.com>
157
158 9       4       src/perl/lib/OpenSRF/Application.pm
159 8       1       src/perl/lib/OpenSRF/Utils/JSON.pm
160
161 commit b484a31c413a017c6b7409f3f101636f68c08c9a
162 Author: Jason Etheridge <jason@esilibrary.com>
163 Date:   Tue Jul 14 14:54:27 2015 -0400
164
165     LP#1474507: fix interval_to_seconds for weeks and seconds
166     
167     This patch fixes an issue where OpenSRF::Utils::interval_to_seconds()
168     was not recognizing intervals expressed as seconds or weeks.
169     
170     Signed-off-by: Jason Etheridge <jason@esilibrary.com>
171     Signed-off-by: Galen Charlton <gmc@esilibrary.com>
172
173 2       2       src/perl/lib/OpenSRF/Utils.pm
174
175 commit 61e6732111db9389038bce1b1f6f655b619fdc86
176 Author: Jason Etheridge <jason@esilibrary.com>
177 Date:   Tue Jul 14 15:10:15 2015 -0400
178
179     LP#1474507: tests for interval_to_seconds
180     
181     Signed-off-by: Galen Charlton <gmc@esilibrary.com>
182
183 16      0       src/perl/t/09-Utils-interval_to_seconds.t
184  create mode 100644 src/perl/t/09-Utils-interval_to_seconds.t
185
186 commit 8f6923efc2c632548f860a9aaabd92fdf2545437
187 Author: Mike Rylander <mrylander@gmail.com>
188 Date:   Thu Sep 10 16:56:13 2015 -0400
189
190     LP#1494486: Limit damage caused by dropped drone XMPP sockets
191     
192     It is apparently possible for drones to get into a state where their XMPP
193     socket is closed but they don't notice. This is bad because the drone can
194     continue to receive requests from its listener but can no longer respond
195     to them. To limit the pain this can cause, we should kill the drone as soon
196     as we notice this condition.
197     
198     To avoid overhead, this commit notices when the socket returns an error (or
199     raises a signal, in Perl) upon write, and exits immediately.  One message
200     will be lost, but the drone will no longer be a black hole that does nothing
201     but absorb requests it can never fill.
202     
203     To test
204     -------
205     [1] Start an OpenSRF stack and look for a drone process.
206     [2] Use lsof to identify which socket that drone is using
207         to talk to XMPP.
208     [3] Use gdb to attach to the process and close the socket, e.g.,
209     
210         $ gdb -p $PID
211         (gdb) p close(11) # or whatever the socket number was
212         (gdb) c
213     
214     [4] Use srfsh to make requests of that service. Eventually, one
215         of them will hit the drone.
216     [5] Sans patch, the request will get handled by the drone, but
217         the results will never get sent, and the drone will remain
218         available to handle other requests.
219     [6] With the patch, the drone will exit when it discovers that it
220         can no longer write to the XMPP socket.
221     
222     Signed-off-by: Mike Rylander <mrylander@gmail.com>
223     Signed-off-by: Galen Charlton <gmc@esilibrary.com>
224
225 4       2       src/libopensrf/osrf_app_session.c
226 5       0       src/perl/lib/OpenSRF/Transport/SlimJabber/XMPPReader.pm