-ChangeLog
-=========
+commit 0a469559782c8e79e489e3fa003f90c7c92d51bf
+Author: Galen Charlton <gmc@equinoxinitiative.org>
+Date: Thu Feb 16 15:32:13 2017 -0500
-OpenSRF 2.4.1
--------------
-commit d266817a76b3659fd2b2acba13e94f01389d2a14
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Wed Jun 24 16:07:58 2015 +0000
-
- set stage for point release notes, à la Evergreen
-
- Also fix a couple typos.
-
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-19 16 doc/RELEASE_NOTES.txt
-
-commit b1807500aa0e3854a512f5c244fef188b370ac65
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Wed Jun 24 16:01:26 2015 +0000
-
- increment version number for 2.4.1 release
-
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 1 src/perl/lib/OpenSRF.pm
-1 1 src/python/setup.py
-1 1 version.m4
-
-commit 95b24da0e8b85b20b018b35a7c7ecdec73a6968e
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Wed Jun 3 18:35:35 2015 +0000
-
- LP#1152272: do not log batch invocation of srfsh in .srfsh_history
-
- When running srfsh to process a script, do not log
- the requests in .srfsh_history.
-
- To test
- -------
- [1] Run the following command:
-
- echo 'request opensrf.math opensrf.system.echo "foo"' | srfsh
-
- [2] Note that the last line of ~/.srfsh_history should be
- 'request opensrf.math opensrf.system.echo "foo"'
-
- [3] Apply the patch, compile, and run
-
- echo 'request opensrf.math opensrf.system.echo "bar"' | srfsh
-
- [4] This time, no additional line should have been added to
- ~/.srfsh_history
-
- [5] Another variation to try:
-
- srfsh test.srfsh
-
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
- Signed-off-by: Mike Rylander <mrylander@gmail.com>
-
-7 3 src/srfsh/srfsh.c
-
-commit f3da6d5be3e607d8f4ba4c60815cccef60cd9487
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Wed Jun 3 17:42:06 2015 +0000
-
- LP#1461625: ensure srfsh doesn't close STDOUT prematurely
-
- Ensure that when running srfsh in non-interactive mode
- that reads commands directly from a file, (i.e.,
- "srfsh script.srfsh" or as a shebang script), it does
- not close STDOUT after handling the first request.
-
- To test
- -------
- [1] Create a srfsh script containing:
-
- request opensrf.math opensrf.system.echo "foo"
- request opensrf.math opensrf.system.echo "bar"
-
- [2] Run "srfsh script.srfsh". Note that only the
- results of the first echo request are output.
- [3] Apply the patch and recompile, then run
- "srfsh script.srfsh" again. This time, the
- output of both requests is displayed.
+ add release notes for OpenSRF 2.4.2
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
- Signed-off-by: Mike Rylander <mrylander@gmail.com>
+ Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
-1 1 src/srfsh/srfsh.c
+28 0 doc/RELEASE_NOTES.txt
-commit ab6db9fb56317a553d58d7dc8471ad9288fe0b92
-Author: Dan Scott <dscott@laurentian.ca>
-Date: Thu Jun 18 11:52:00 2015 -0400
+commit e72a15842c10d4c2288323ede92f38d4b4b41794
+Author: Galen Charlton <gmc@equinoxinitiative.org>
+Date: Wed Feb 15 16:58:06 2017 -0500
- LP#1409055 Support specific protocols for OpenSRF gateway requests
+ LP#1652382: more improvements to cache key munging
- If the user passes in a gateway hostname that contains a specific HTTP or HTTPS
- protocol, let's just use that.
+ - teach osrfCacheRemove to clean keys
+ - fix implict declaration compilation warning
+ - account for fact that iscntrl('\0') returns true
- Signed-off-by: Dan Scott <dscott@laurentian.ca>
- Signed-off-by: Bill Erickson <berickxx@gmail.com>
+ Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
+ Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
-12 0 src/python/osrf/gateway.py
+5 2 src/libopensrf/osrf_cache.c
-commit 78e6fcbb637edbbec4d3996e0281a5e4d7e2663e
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Tue Mar 24 21:00:57 2015 +0000
+commit c1eae17ad8b61d62ad6795ca3cd01347c39c7903
+Author: Galen Charlton <gmc@equinoxinitiative.org>
+Date: Wed Feb 15 14:12:34 2017 -0500
- LP#1436047: make srfsh --safe act as if "! command" doesn't exist
+ LP#1652382: handle cases where supplied key is longer than 250 bytes
- This patch make srfsh treat attempting to run an external
- command via "! command" as a parsing error if --safe is
- supplied. It also suppress mention of "! commands" from
- the internal help.
+ With this patch, if cache clients want to use a key longer
+ than the memcached text protocol limit of 250 bytes, the
+ key is normalized to 'shortened_' + md5_hex(normalized_key).
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
- Signed-off-by: Mike Rylander <mrylander@gmail.com>
+ Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
+ Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
-10 4 src/srfsh/srfsh.c
+10 1 src/libopensrf/osrf_cache.c
+4 0 src/perl/lib/OpenSRF/Utils/Cache.pm
-commit c7d5810f29fd5b8f7b125af58df053abf5dbb9bf
+commit b2ed8ef36baa1242448beae89ffe51a98f8175d1
Author: Mike Rylander <mrylander@gmail.com>
-Date: Tue Mar 24 16:22:16 2015 -0400
+Date: Mon Jan 30 12:54:10 2017 -0500
- LP#1436047: Allow disabling of "bang commands" in srfsh
-
- srfsh has the ability to execute commands via system() calls using
- the common "!command" syntax. This is very useful, but it would
- be nice to be able to turn that functionality off in some cases.
-
- This branch adds argument parsing to detect a new '--safe' command
- line parameter, which disables the "!command" syntax.
+ LP#1652382: Make use of the clean key just created
Signed-off-by: Mike Rylander <mrylander@gmail.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-24 12 src/srfsh/srfsh.c
-
-commit 24c230a7c90c6a7ff300ca86745998fd07ee2105
-Author: Ben Shum <bshum@biblio.org>
-Date: Mon May 4 17:16:29 2015 -0400
-
- Docs: Fix mailing list link for help in README
-
- Signed-off-by: Ben Shum <bshum@biblio.org>
-
-2 2 README
-
-commit 1d632a356086e5691605bd4b6a131769a05f4906
-Author: Josh Stompro <github@stompro.org>
-Date: Tue Apr 21 09:50:49 2015 -0500
-
- LP#1445503 - Updated Ejabberd setup steps for Ejabberd 14.x for Debian Jessie
-
- Signed-off-by: Josh Stompro <github@stompro.org>
- Signed-off-by: Ben Shum <bshum@biblio.org>
-
-29 2 README
+ Signed-off-by: Kathy Lussier <klussier@masslnc.org>
+ Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
+ Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
-commit b8bef9320b13dd5a87f34072b71af70bb1714e4a
-Author: Ben Shum <bshum@biblio.org>
-Date: Mon May 4 17:01:23 2015 -0400
+1 1 src/libopensrf/osrf_cache.c
- Docs: Emphasize variables and paths consistently in README
-
- Some variables and paths were not emphasized when the instructions for
- websockets was added. Maintain consistency in the document and emphasize
- them.
-
- Signed-off-by: Ben Shum <bshum@biblio.org>
-
-6 6 README
-
-commit 0be401fa0b5e3db89db73e5daf5652e69a8947bb
-Author: Ben Shum <bshum@biblio.org>
-Date: Mon May 4 16:57:38 2015 -0400
-
- Docs: Add [source, bash] to code blocks that were not defined in README
-
- For consistency, add [source, bash] to all the blocks of code or script
- commands in the README
-
- Signed-off-by: Ben Shum <bshum@biblio.org>
-
-6 0 README
-
-commit 30a5a2d9b13c4aa0636f2885f0953a840b291033
-Author: Ben Shum <bshum@biblio.org>
-Date: Mon May 4 16:49:08 2015 -0400
-
- Docs: Keep all source syntax consistent in README
-
- Change occurrences of [source,bash] to [source, bash] for consistency
- throughout README.
-
- Signed-off-by: Ben Shum <bshum@biblio.org>
-
-11 11 README
-
-commit d59acb614910808b5773c377df4e9806f76546dc
-Author: Bill Erickson <berickxx@gmail.com>
-Date: Thu Feb 5 10:34:40 2015 -0500
+commit f608444010fff1b4b6da06b5ec49df643218b005
+Author: Mike Rylander <mrylander@gmail.com>
+Date: Fri Jan 27 15:25:05 2017 -0500
- LP#1418613 per-tab websocket send() JS thinko repair
+ LP#1652382: normalization of memcache keys in C code
- Avoid referencing variable defined somewhere outside the send_ws()
- function. Doing so happened to result in re-sending the same message
- twice in some cases.
+ Memcache does not allow spaces in keys, so here we will actively strip them
+ from any key we get from a caller. Some callers are not very proactive about
+ sending clean keys, and this patch prevents issues that can poison C-based
+ OpenSRF service backends.
- Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
+ Signed-off-by: Kathy Lussier <klussier@masslnc.org>
+ Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
+ Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
-1 1 src/javascript/opensrf.js
-
-OpenSRF 2.4.0
--------------
-
-commit df5aa177d80b40fe1e318a103a48222378af1587
-Author: Bill Erickson <berickxx@gmail.com>
-Date: Fri Oct 17 17:07:53 2014 -0400
-
- LP#1383828 Jessie/Trusty installer Apache "mpm" repairs
-
- Disable the default Apache mpm_event module and enable mpm_prefork for
- Debian Jessie and Ubuntu Trusty.
-
- Signed-off-by: Bill Erickson <berickxx@gmail.com>
- Signed-off-by: Ben Shum <bshum@biblio.org>
-
-8 2 src/extras/Makefile.install
-
-commit b199a9a84aa815dbcbc4c98e3269c192fecdb238
-Author: Ben Shum <bshum@biblio.org>
-Date: Mon Nov 10 12:20:31 2014 -0500
-
- LP#1391248: Fix NameVirtualHost warnings in websockets apache2.conf
-
- For the websockets configuration, the sample apache2.conf for Apache 2.4 (i.e.
- Ubuntu 14.04, etc.) contains NameVirtualHost entries that are no longer
- needed.
-
- When starting apache2-websockets, you may see warnings like:
-
- AH00548: NameVirtualHost has no effect and will be removed in the next
- release /etc/apache2-websockets/apache2.conf:53
-
- Remove the NameVirtualHost entries and these warnings go away.
-
- Signed-off-by: Ben Shum <bshum@biblio.org>
- Signed-off-by: Bill Erickson <berickxx@gmail.com>
-
-0 2 examples/apache_24/websockets/apache2.conf
-
-commit 3c268142659852c6b09a8709a84029702698d2ea
-Author: Ben Shum <bshum@biblio.org>
-Date: Fri Oct 31 23:53:58 2014 -0400
-
- LP#1369169: Remove hardcoded paths for OpenSRF directory
-
- Signed-off-by: Ben Shum <bshum@biblio.org>
- Signed-off-by: Bill Erickson <berickxx@gmail.com>
-
-2 2 README
-
-commit 8bcfe29874dc2aeb2fdc07b16660a0350d377cee
-Author: Ben Shum <bshum@biblio.org>
-Date: Sat Sep 13 18:23:46 2014 -0400
-
- LP#1369169: Mention the requirement for valid SSL certificate
-
- The apache2-websockets instance will not start without a valid SSL certificate
- in /etc/apache2/ssl. Include a mention of this in the README with the extra
- stipulation that it is still possible to use a self-signed SSL certificate for
- testing purposes, but this is not recommended for live installations.
-
- Signed-off-by: Ben Shum <bshum@biblio.org>
- Signed-off-by: Bill Erickson <berickxx@gmail.com>
-
-7 1 README
-
-commit 25d0b0d6abe90612430b74f3c9bcf9c75c0a972e
-Author: Ben Shum <bshum@biblio.org>
-Date: Fri Sep 12 17:58:11 2014 -0400
-
- LP#1369169: Add websockets section to the OpenSRF README
-
- Remove the separate README.websockets and move the contents into the primary
- OpenSRF README document so that all steps are in one place.
-
- Additional edits to the websockets instructions to detail differences made
- between Ubuntu 14.04 Trusty and Debian / Ubuntu 12.04 Precise. More edits
- may be necessary for Debian Jessie later?
-
- Also, create a separate config file for Apache 2.4 that is copied into place
- for Ubuntu Trusty and potentially other systems that will need it.
-
- Signed-off-by: Ben Shum <bshum@biblio.org>
- Signed-off-by: Bill Erickson <berickxx@gmail.com>
-
-93 0 README
-0 53 README.websockets
- delete mode 100644 README.websockets
-
-commit c6e0150be2b0d3c010d4ea6c34a81f69cec3004b
-Author: Ben Shum <bshum@biblio.org>
-Date: Sat Sep 13 18:04:54 2014 -0400
-
- LP#1369169: Add Apache 2.4 specific configuration file for websockets
-
- For Apache 2.4, there were some necessary modifications for running the
- websockets code properly. Similar to how we do things in Evergreen, we
- added a new directory for apache_24 which contains the modified apache2.conf
- file.
-
- Signed-off-by: Ben Shum <bshum@biblio.org>
- Signed-off-by: Bill Erickson <berickxx@gmail.com>
-
-80 0 examples/apache_24/websockets/apache2.conf
- create mode 100644 examples/apache_24/websockets/apache2.conf
-
-commit 92e8a5f7d6040bda312317ce339e459d5549d3eb
-Author: Ben Shum <bshum@biblio.org>
-Date: Sat Sep 13 18:07:47 2014 -0400
-
- LP#1369169: Remove trailing whitespace from apache2.conf
-
- For some reason, there was a lot of trailing whitespace in this apache2.conf
- file for websockets. Removing them.
-
- Signed-off-by: Ben Shum <bshum@biblio.org>
- Signed-off-by: Bill Erickson <berickxx@gmail.com>
-
-19 19 examples/apache2/websockets/apache2.conf
+20 2 src/libopensrf/osrf_cache.c
-commit 1b0252065496be18b8c4eb3991d1057928dd7784
-Author: Ben Shum <bshum@biblio.org>
-Date: Sat Sep 13 17:03:19 2014 -0400
-
- LP#1369169: Standardize styling of root linux account for README
-
- Signed-off-by: Ben Shum <bshum@biblio.org>
- Signed-off-by: Bill Erickson <berickxx@gmail.com>
-
-3 3 README
-
-commit 10b9f9eeac545cf46387e45b8cbd06e2a556baf3
-Author: Ben Shum <bshum@biblio.org>
-Date: Sat Sep 13 17:38:54 2014 -0400
-
- LP#1369169: Add generated README.html to the .gitignore file for OpenSRF
-
- Signed-off-by: Ben Shum <bshum@biblio.org>
- Signed-off-by: Bill Erickson <berickxx@gmail.com>
-
-1 0 .gitignore
-
-commit 2bceabc55f8b1ccb13089298bfdb6a220c5735d6
+commit da98d30ca754a5a9bacb09982f8cad9c053a3105
Author: Galen Charlton <gmc@esilibrary.com>
-Date: Thu Aug 21 16:52:10 2014 -0700
+Date: Thu Dec 22 15:53:12 2016 +0500
- fix typo in release notes
+ LP#1652122: fix infinite recursion in opensrf.system.method.all
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 1 doc/RELEASE_NOTES.txt
-
-commit e5eab9073e25b82914986326a5e97e7feecb5dfb
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Thu Aug 21 16:33:11 2014 -0700
-
- bump up version number for OpenSRF 2.4.0-alpha
+ Under certain circumstances, calling opensrf.system.method.all on a
+ Perl service can result in an infinite recursion when attempting to
+ serialize an OpenSRF::Application object to JSON. In particular,
+ this was observed to happen when doing an introspection of
+ the opensrf.settings service.
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-2 2 src/perl/lib/OpenSRF.pm
-1 1 src/python/setup.py
-1 1 version.m4
-
-commit b929dd7080b91e1f7c938778580ac6957835e666
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Thu Aug 21 16:30:58 2014 -0700
-
- update ChangeLog for OpenSRF 2.4.0-alpha
+ This patch avoids the infinite recursion (and consequent memory
+ leak) by ensuring that the 'session' key is slated for exclusion
+ from serialization from OpenSRF::Application objects during
+ bootstrapping.
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-582 1004 ChangeLog
-
-commit 4426a8a503baec5171ae4245eccd595444815358
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Thu Aug 21 16:30:05 2014 -0700
-
- release notes for OpenSRF 2.4.0-alpha
+ Note that the problem does not affect all Perl services; if a
+ Perl service declares at least one streaming method, the auto-registration
+ of the .atomic method will result in 'session'-stripping.
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-121 0 doc/RELEASE_NOTES.txt
- create mode 100644 doc/RELEASE_NOTES.txt
-
-commit e8f78636586aeca15632bcfbf0cae20beb2d66a6
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Thu Aug 21 10:02:14 2014 -0700
-
- LP#1002028: set Access-Control-Expose-Headers
+ This patch fixes a regression introduced in bug 1350457.
- This allows the OpenSRF JavaScript client library (or
- to be precise, one that has been modified to direct
- requests at a different domain) to take advantage of CORS
- support.
+ To test
+ -------
+ [1] Run 'introspect opensrf.settings' via srfsh; observe
+ that it never returns and that the opensrf.settings drone
+ will grow in memory sized until killed.
+ [2] Apply the patch, then repeat step 1. This time, the
+ request should succeed.
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
+ Signed-off-by: Mike Rylander <mrylander@gmail.com>
-1 0 src/gateway/apachetools.c
+1 1 src/perl/lib/OpenSRF/System.pm
-commit bc914bf1933cc7a9272134fd4bbeb7601d233903
+commit 5bd88d39d7d22e6deee85952f1dc827c138095c4
Author: Galen Charlton <gmc@esilibrary.com>
-Date: Thu Aug 21 09:13:23 2014 -0700
-
- LP#1002028: support CORS for HTTPS
-
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-2 0 src/gateway/apachetools.c
+Date: Fri Mar 18 10:59:11 2016 -0400
-commit d8dbf0c4e44cf45f00ffe2785d0778658029b825
-Author: Bennett Goble <nivardus@gmail.com>
-Date: Tue May 22 11:57:56 2012 -0400
-
- LP#1002028: Cross Origin Resource Sharing for OpenSRF
-
- Background
- ----------
- Browsers' same-origin policy currently restricts requests to the current
- website's domain to prevent various nefarious scenarios. However,
- because APIs and other web resources need to remain open to cross-site
- use Cross Origin Resource Sharing (CORS) was created to allow services
- to formally authorize cross-origin requests. CORS makes it simple to use
- OpenSRF's HTTP translator and gateway APIs on websites using separate
- domains.
+ LP#1559121: remove Debian Squeeze support
- Example Scenarios
- -----------------
- 1) A library would like an AJAX-driven "quicksearch" box on their main
- site, which is hosted on a different domain than their catalog.
- 2) A developer wants to create new web applications and services that
- tie into Evergreen, but does not wish to install EG locally or
- configure a proxy.
+ Now that Debian Squeeze's LTS (long-term support) period
+ has ended, Evergreen no longer offers community support
+ for that distribution. This patch removes references
+ to Squeeze from the installation scripts and documentation.
- Implementation
- --------------
- The function crossOriginHeaders() has been added to apachetools.c.
- Incoming requests are checked to see if they have an Origin header. The
- value of the Origin header is checked against a whitelist defined in
- opensrf_core.xml config (XPath: /config/gateway/cross_origin/origin).
- The function returns 1 if CORS headers have been added to the response.
+ To test:
- Notes
- -----
- * The OpenSRF Javascript client library (opensrf.js) defaults to the root
- of the current web host "/osrf-http-translator." In addition, synchronous
- requests are presumed in some situations: resulting in the oncomplete
- method never returning (Blocking requests are not possible with cross-
- domain XHR.)
- * It is also possible to enable CORS with the Apache "set header"
- configuration directive. However, this means that the necessary headers
- would be appended to every response.
+ [1] Verify that Debian Squeeze is no longer referenced in
+ the installation documentation.
- Links
- -----
- Specification - http://www.w3.org/TR/cors/
- Wikipedia Article - http://en.wikipedia.org/wiki/Cross-origin_resource_sharing
-
- Signed-off-by: Bennett Goble <nivardus@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-8 0 examples/opensrf_core.xml.example
-36 0 src/gateway/apachetools.c
-5 0 src/gateway/apachetools.h
-5 0 src/gateway/osrf_http_translator.c
-5 0 src/gateway/osrf_json_gateway.c
+0 1 README
+1 14 src/extras/Makefile.install
-commit 6ed6f2bc6bf56d0834ae43f00c193bce5a3867a1
+commit 65ed54c4dc713919756644d3873f8fa7d851b427
Author: Galen Charlton <gmc@esilibrary.com>
-Date: Thu Aug 21 08:58:18 2014 -0700
-
- Revert "LP#1350457: Pass caller's session to subrequests called via method_lookup"
-
- This reverts commit 96917538c6b6fad688dd40c2a8f0cc9127053b24.
-
-3 3 src/perl/lib/OpenSRF/Application.pm
-
-commit f0c02bf3cc4e8e2c1049fd2ba0fd24079b5aeba6
-Author: Josh Stompro <Stomproj@larl.org>
-Date: Wed May 21 08:26:53 2014 -0500
+Date: Thu Feb 4 13:09:48 2016 -0500
- (doc) Reorder changes to ejabberd.cfg in install instructions
+ LP#1350457: add test case for perl2JSONObject change
- I found it annoying that the list of changes to make to ejabberd.cfg
- didn't follow the order that the options showed up in the default
- Debian ejabberd.cfg. I reordered them so after you finish changing one
- option, you can search forward in the document for the next term.
-
- (From Github pull request #3.)
-
- Signed-off-by: Josh Stompro <Stomproj@larl.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-4 4 README
+4 1 src/perl/t/09-Utils-JSON.t
-commit 96917538c6b6fad688dd40c2a8f0cc9127053b24
+commit 675c7a693d9a5d4f228d7b7ca5fe3b3f7fd62214
Author: Mike Rylander <mrylander@gmail.com>
Date: Wed Jul 30 13:29:46 2014 -0400
because then the subrequest can't look up the proper locale, among other
things. The forthcoming branch passes the caller's session to the subrequest.
- Signed-off-by: Mike Rylander <mrylander@gmail.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-3 3 src/perl/lib/OpenSRF/Application.pm
-
-commit 6cdd5251ac64651534e579f7e02a70a665f60283
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Thu Jul 17 11:37:53 2014 -0400
-
- LP#1341687 listeners log/drop XMPP error msgs
-
- The most common form of XMPP error messages are "bounced" messages, i.e.
- those where the recipient is not available. Instead of passing these
- useless and confusing messages down to a drone for processing, log the
- error in the listener and drop the message.
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-9 0 src/libopensrf/osrf_prefork.c
-5 1 src/perl/lib/OpenSRF/Server.pm
-
-commit 54da75bd2f045dbd2225317f74dc5fe38f415fe5
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Wed Aug 20 14:00:17 2014 -0700
-
- LP#1343578: document <logtag> in the example opensrf_core.xml
-
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-12 0 examples/opensrf_core.xml.example
-
-commit 2f4ed86a136cfb7547f7e8c3e2109f4473139276
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Thu Jul 17 15:10:35 2014 -0400
-
- LP#1343578: Perl/C syslog "logtag" additions.
-
- * Honor logtag value when applying a default appname for Perl and C
- * Extract / apply logtag in the router
- * Minor repair: avoid redundant strdup
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Mike Rylander <mrylander@gmail.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 1 src/libopensrf/log.c
-1 1 src/libopensrf/osrf_system.c
-5 2 src/perl/lib/OpenSRF/Utils/Logger.pm
-2 0 src/router/osrf_router_main.c
-
-commit 512f77b4652d6c793c21c7b6955480e6b9ada195
-Author: Mike Rylander <mrylander@gmail.com>
-Date: Fri Jun 20 15:52:47 2014 -0400
-
- LP#1343578: Add support for log tagging
-
- The ability to provide instance-specific log tagging via syslog
- would make running multiple instances much easier to manage. So
- this branch does that.
+ This patch also teaches OpenSRF object registration how to strip certain
+ object members -- in particular, the session -- so that introspection
+ continues to work.
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-2 0 include/opensrf/log.h
-26 1 src/libopensrf/log.c
-3 0 src/libopensrf/osrf_system.c
-4 0 src/perl/lib/OpenSRF/Utils/Logger.pm
-
-commit 6c3b1001c6183b2f633d0f43ccd3d28071c0c48d
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon May 5 13:40:46 2014 -0400
-
- LP#1316245: JS now uses browser-native JSON routines
-
- * Replace JSON2jsRaw() with JSON.parse()
-
- * Replace js2JSONRaw() with JSON.stringify()
-
- * Removed unit tests for JSON2jsRaw() and js2JSONRaw()
-
- * Removed jsonPretty() pretty-printing routine. Use
- JSON.stringify(json, null, <spaces>) instead.
-
- See also:
-
- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_native_JSON
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-2 94 src/javascript/JSON_v1.js
-0 60 src/javascript/tests/testJSON_v1.js
-
-commit 2677f8e815a61f9b808bb57647f6ec9d448f0268
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Aug 4 14:26:36 2014 -0400
-
- LP#1268619: disable shared workers pending browser issues
-
- There appears to be a bug in Chromium where loading the same page
- multiple times (without a refresh or cache clear) causes the
- SharedWorker to fail to instantiate on every other page load.
- Further research pending. Disabling SharedWorker's entirely for
- now.
-
- Note, to replicate, load a page using shared workers, focus the
- browser address bar, hit Enter to load the page again. The shared
- worker will fail to load on every other page load, though it will
- appear to the SharedWorker caller (opensrf.js) that the port is open.
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-6 1 src/javascript/opensrf.js
-
-commit 755a58642281246df280877f7ad480503b1ddc4b
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Wed Jul 30 12:05:36 2014 -0400
-
- LP#1268619: update JS/WS/SSL code comment
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 4 src/javascript/opensrf_ws_shared.js
-
-commit c65c6d9f91c5372360619004c8602d2a262dfb8b
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Thu Jul 10 11:29:49 2014 -0400
-
- LP#1268619: JS status codes can come across as numbers; stringify for match
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 1 src/javascript/opensrf.js
-
-commit 17ae5ca5e6db6700dc4b61599c4394f80e727711
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Tue Jul 8 09:41:12 2014 -0400
-
- LP#1268619: JS libs capture all method errors
-
- Instead of selecting specific errors to report as method errors, report
- all API calls which return 400 or 500-series errors as method errors.
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-2 1 src/javascript/opensrf.js
-
-commit 9fdef970f3785e958090f8edf4ad37ece4459343
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Sun May 4 15:58:17 2014 -0400
-
- LP#1268619: websocket: avoid sharedworker for firefox 29
-
- https://bugzilla.mozilla.org/show_bug.cgi?id=504553#c73
-
- Avoid using SharedWorkers when useragent match "Firefox". FF supports
- shared workers, but it does not yet support WebSockets within shared
- workers.
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-8 3 src/javascript/opensrf.js
+9 4 src/perl/lib/OpenSRF/Application.pm
+8 1 src/perl/lib/OpenSRF/Utils/JSON.pm
-commit f43286bf11119c731ee0dbe9b5b740d8715ace66
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Thu Apr 10 08:50:13 2014 -0400
+commit b484a31c413a017c6b7409f3f101636f68c08c9a
+Author: Jason Etheridge <jason@esilibrary.com>
+Date: Tue Jul 14 14:54:27 2015 -0400
- LP#1268619: websockets: detect connectedness of JS default sockets
+ LP#1474507: fix interval_to_seconds for weeks and seconds
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-18 2 src/javascript/opensrf.js
-10 1 src/javascript/opensrf_ws.js
-3 1 src/javascript/opensrf_ws_shared.js
-
-commit 0cf0a8a5fe61228995f75d0f0c6e4f4731888c40
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Apr 7 12:04:33 2014 -0400
-
- LP#1268619: websockets: auto-upgrade to shared workers; SSL-always
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-42 4 src/javascript/opensrf.js
-95 0 src/javascript/opensrf_ws.js
-4 4 src/javascript/opensrf_ws_shared.js
- create mode 100644 src/javascript/opensrf_ws.js
-
-commit 8120314b86d2b6cafe2f5fd968b4475cc187acfb
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Tue Mar 11 17:25:19 2014 -0400
-
- LP#1268619: websockets: gateway code repairs & confing options
-
- * avoid unneccessary and wrong incantation of apr_thread_exit. The two
- sub-threads now both live for the duration of the process.
- * to be safe, create thread mutex before threads
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-8 1 README.websockets
-252 206 src/gateway/osrf_websocket_translator.c
-
-commit 4ce075beeb5f81b8eb4c2cb2669b3a99ebab40ba
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Mar 10 15:55:24 2014 -0400
-
- LP#1268619: websockets: apply syslog name in gateway
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 0 src/gateway/osrf_websocket_translator.c
-
-commit 77c7f5889e8f31038cd732feb3e6057a0d3788b5
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Mar 10 08:41:45 2014 -0400
-
- LP#1268619: websockets: README typo repairs
-
- Patch from Warren Layton to repair path to 'envvars' and clarify some
- text.
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-2 2 README.websockets
-
-commit bb424c1424193e4db340e3f6e17a939dc1dd821a
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Thu Mar 6 15:47:36 2014 -0500
-
- LP#1268619: websockets : additional apache config docs
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-20 40 README.websockets
-0 43 examples/apache2/websockets.conf
-73 0 examples/apache2/websockets/apache2.conf
- delete mode 100644 examples/apache2/websockets.conf
- create mode 100644 examples/apache2/websockets/apache2.conf
-
-commit 9f2d35e6f6b6ec5a3db109adb518cf270d49c683
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Thu Mar 6 15:05:12 2014 -0500
-
- LP#1268619: websockets: apache conf -> info logging
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 1 examples/apache2/websockets.conf
-
-commit b1b3bf60f613b94d1455afb54dff4ad4a7e95ddd
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Wed Mar 5 08:40:05 2014 -0500
-
- LP#1268619: websockets: remove single-tab JS WS implementation
-
- It was falling behind the shared lib in bug fixes and features. A
- per-tab WS implementation is (maybe) a dangerous thing to have around,
- as well, since it encourages /many/ connections. Can resurrect later if
- needed.
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-0 165 src/javascript/opensrf_ws.js
- delete mode 100644 src/javascript/opensrf_ws.js
-
-commit 6765c6395b0fb2a1c501f7c94a04cfacc7d460db
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Tue Mar 4 14:10:59 2014 -0500
-
- LP#1268619: websockets: shared worker path; JS api_level
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-25 8 src/javascript/opensrf.js
-
-commit f5ada2850552560a24e473e02532e75870ab7307
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Mar 3 16:23:44 2014 -0500
-
- LP#1268619: websockets: initial C libs api_level support
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-4 1 src/libopensrf/osrf_message.c
-
-commit 2bcead2d3e1c560a30c5b9beba6d1cbfe58778ed
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Mar 3 16:01:58 2014 -0500
-
- LP#1268619: websockets : gateway log inbound messages at internal
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-7 0 src/gateway/osrf_websocket_translator.c
-
-commit 5631bbdfa0f9a4fe2ea1b238c5e2ffee4b606dc1
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Mar 3 12:06:12 2014 -0500
-
- LP#1268619: websocket : add JS lib to makefile
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 1 src/Makefile.am
-
-commit 0054ea6684a933037af1cc3bc6358c7096dc051c
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Mar 3 10:29:23 2014 -0500
-
- LP#1268619: websocket: avoid module auto configuration
-
- We don't want osrf_websocket_translator to be directly loaded as a
- module, since it is not an apache module, but a shared library loaded by
- an apache module (mod_websockets). This is especially true of the default
- apache instance.
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 1 src/gateway/Makefile.am
-
-commit e375a1e31b87a3d645b6da05e83f2a29f885f1fc
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Mar 3 10:05:26 2014 -0500
-
- LP#1268619: websocket : apache gateway minor fixes
-
- Replace remaining remote_ip calls with a get_client_ip() function which
- operates for apache2 and apache4.
-
- Make log functions for applying a log trace value accept const char*'s
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-2 2 include/opensrf/log.h
-11 16 src/gateway/osrf_websocket_translator.c
-2 2 src/libopensrf/log.c
-
-commit 0a0d3f616c9531c7931c365e1912cbcf6358441b
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Mar 3 09:42:03 2014 -0500
-
- LP#1268619: websocket : more JS api docs
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-83 20 src/javascript/opensrf_ws_shared.js
-
-commit aa1c088bd45a254290ad202875eb87c4bd4eeb2a
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Thu Jan 16 11:41:01 2014 -0500
-
- LP#1268619: websockets : added config docs to install readme
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-19 0 README.websockets
-1 1 src/gateway/osrf_websocket_translator.c
-
-commit a64f10c4183a495ec3912458c9b6268856e8fe47
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Tue Jan 14 16:25:20 2014 -0500
-
- LP#1268619: websocket JS libs: reconnect and auto-connect
-
- JS clients no longer need to explicitly call the shared WS setup
- routine. It happens under the covers now.
-
- JS client detects disconnects and reconnects when the next message send
- attempt occurs.
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-4 6 src/javascript/opensrf.js
-55 45 src/javascript/opensrf_ws_shared.js
-
-commit a02360aadfcd113cbec88d9c2455e42fdd74e536
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Tue Jan 14 16:22:23 2014 -0500
-
- LP#1268619: websocket translator idle timeout / graceful shutdown
-
- Added support for an idle timeout and idle check interval configuration
- variables. These allow each websocket apache process to kick off
- clients that have been connected and are idle for too long, thus hogging
- a process unnecessarily.
-
- Added a SIGUSR1 signal handler which forces the idle timeout to be very
- low and a short re-check period so that the client can be kicked as soon
- as there are no open conversations.
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-263 25 src/gateway/osrf_websocket_translator.c
-
-commit bef394a7c24df54f1e63fc3e83cd473195a46c3a
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Fri Jan 10 11:57:29 2014 -0500
-
- LP#1268619: websockets: support WS via shared web workers
-
- This allows mutiple browser tabs to share the same websocket connection.
-
- TODO: add tab (port) disconnect handler
- TODO: more docs / examples
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-55 0 src/javascript/opensrf.js
-176 0 src/javascript/opensrf_ws_shared.js
- create mode 100644 src/javascript/opensrf_ws_shared.js
-
-commit fdb255a92f9fa687a50bed05ef918523cf902d8b
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Thu Jan 9 15:00:03 2014 -0500
-
- LP#1268619: websocket: do not disconnect ws() on osrf disconnect message
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-0 5 src/javascript/opensrf.js
-
-commit d546d7eacb183ba2ddd0c0ba5dc281dc5086ae81
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Tue Feb 5 10:22:34 2013 -0500
-
- LP#1268619: temporary websocket installer README
+ This patch fixes an issue where OpenSRF::Utils::interval_to_seconds()
+ was not recognizing intervals expressed as seconds or weeks.
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
+ Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-47 0 README.websockets
- create mode 100644 README.websockets
+2 2 src/perl/lib/OpenSRF/Utils.pm
-commit e4ef36f385c4f3b83ac4b49f2b07ee19c3166ff0
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Tue Feb 5 09:52:57 2013 -0500
+commit 61e6732111db9389038bce1b1f6f655b619fdc86
+Author: Jason Etheridge <jason@esilibrary.com>
+Date: Tue Jul 14 15:10:15 2015 -0400
- LP#1268619: Sample Websocket translator Apache 2.2 configuration
+ LP#1474507: tests for interval_to_seconds
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-43 0 examples/apache2/websockets.conf
- create mode 100644 examples/apache2/websockets.conf
+16 0 src/perl/t/09-Utils-interval_to_seconds.t
+ create mode 100644 src/perl/t/09-Utils-interval_to_seconds.t
-commit 32ab4b133c9c96780e8b202ab1efe46bbf321c3b
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Fri Jan 25 12:38:13 2013 -0500
-
- LP#1268619: websocket gateway: improved memory mgt; logging
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 1 src/gateway/Makefile.am
-18 23 src/gateway/osrf_websocket_translator.c
-2 2 src/javascript/opensrf_ws.js
-
-commit 0f3aa6480d2fbc9645571e057dac3f3be08709d1
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Jan 21 11:34:57 2013 -0500
-
- LP#1268619: websockets; free temporary osrf msgs; minor comment change
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-11 2 src/gateway/osrf_websocket_translator.c
-
-commit de238b740f3a54dacd07610d8e187f417bf5b677
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Dec 10 14:33:14 2012 -0500
-
- LP#1268619: websocket; docs, more memory mgmt
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-79 34 src/gateway/osrf_websocket_translator.c
-
-commit f990a29db95d9b1c06efa22c1b3f4fbc43206571
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Nov 12 16:46:19 2012 -0500
-
- LP#1268619: websocket translator
-
- * starting packet inspection
- * activity log; recipient removal
- * only cache connected recipients; use request_rec pool for session_pool parent
- * wrap all thread work in mutex
- * session memory goodness
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-278 72 src/gateway/osrf_websocket_translator.c
-
-commit 27707398e955b8a8a2df1a5311aebc19b8eb1708
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Thu Nov 8 12:36:16 2012 -0500
-
- LP#1268619: websocket JS additions
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-51 50 src/javascript/opensrf.js
-124 63 src/javascript/opensrf_ws.js
-
-commit cc42cb62c47edabd693e491ad0d939970d7dbc53
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Tue Oct 30 15:51:18 2012 -0400
-
- LP#1268619: track websocket_plugin.h locally until replaced by makefile.install process
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-130 0 src/gateway/websocket_plugin.h
- create mode 100644 src/gateway/websocket_plugin.h
-
-commit 9e455c227be32bed4a16e6dab7045b6424e2ba15
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon Oct 29 17:27:44 2012 -0400
-
- LP#1268619: websocket gateway repairs and cleanup
-
- * use jsonObjectFree() on jsonObjets, not free();
- * removed some debugging logs
- * accommodate API changes for Apache 2.4
- * safer logging:
-
- Avoid using ap_log_rerror, in particular referencing server->request
- from the responder thread, since the request_rec will be invalid after
- on_disconnect is called.
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-61 66 src/gateway/osrf_websocket_translator.c
-
-commit a77eb22c27183d23fb08ed40bc75469d8c54b884
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Fri Oct 26 15:06:13 2012 -0400
-
- LP#1268619: Apache websocket translator module
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-6 2 src/gateway/Makefile.am
-427 0 src/gateway/osrf_websocket_translator.c
- create mode 100644 src/gateway/osrf_websocket_translator.c
-
-commit 1dafbe7512f086a58212fcc66c07e348647f31ad
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Thu Sep 20 15:55:04 2012 -0400
-
- LP#1268619: OpenSRF JS websockets plugin
-
- Adds an opensrf_ws.js handler. Requries some small modifications to
- opensrf.js. Load opensrf_ws.js in DojoSRF.
-
- For now, to use, add to script:
-
- OpenSRF.Session.transport = OSRF_TRANSPORT_TYPE_WS;
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 0 src/javascript/DojoSRF.js
-53 15 src/javascript/opensrf.js
-104 0 src/javascript/opensrf_ws.js
- create mode 100644 src/javascript/opensrf_ws.js
-
-commit cb56fd32eb43f037c4126e1398b0e9cd546d9f19
+commit 8f6923efc2c632548f860a9aaabd92fdf2545437
Author: Mike Rylander <mrylander@gmail.com>
-Date: Fri Jun 20 16:48:51 2014 -0400
+Date: Thu Sep 10 16:56:13 2015 -0400
- LP#1337401: Only care about our own processes
+ LP#1494486: Limit damage caused by dropped drone XMPP sockets
- OpenSRF can run mutiple times, as different users, on one host.
- Right now we look for all service processes, but we should only
- look for our own. This patch does that.
+ It is apparently possible for drones to get into a state where their XMPP
+ socket is closed but they don't notice. This is bad because the drone can
+ continue to receive requests from its listener but can no longer respond
+ to them. To limit the pain this can cause, we should kill the drone as soon
+ as we notice this condition.
- Signed-off-by: Mike Rylander <mrylander@gmail.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-5 5 bin/opensrf-perl.pl.in
-
-commit 65ce998b02d0778541b3101379013448cba606d2
-Author: Ben Shum <bshum@biblio.org>
-Date: Fri Apr 18 16:36:38 2014 -0400
-
- LP#1315525: Add trusty target and remove lucid from README
+ To avoid overhead, this commit notices when the socket returns an error (or
+ raises a signal, in Perl) upon write, and exits immediately. One message
+ will be lost, but the drone will no longer be a black hole that does nothing
+ but absorb requests it can never fill.
- Signed-off-by: Ben Shum <bshum@biblio.org>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 1 README
-
-commit be5c3d82ecba066b1f4b811af9a32a85eb1c6d70
-Author: Chris Sharp <csharp@georgialibraries.org>
-Date: Sun Jan 26 10:41:31 2014 -0500
-
- LP#1315525: Updating Makefile.install for Ubuntu 14.04. Removing lucid support.
-
- Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
- Signed-off-by: Ben Shum <bshum@biblio.org>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-12 11 src/extras/Makefile.install
-
-commit 339ac28d47a466d2fd0009c24fe0385cb5326479
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Fri Feb 28 09:33:19 2014 -0800
-
- LP#1286248: remove osrf_ctl.sh
-
- As osrf_ctl.sh was deprecated in favor of osrf_control, this patch
- removes the deprecated script entirely.
-
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
-
-0 1 .gitignore
-0 102 bin/osrf_ctl.sh.in
-1 2 configure.ac
-1 1 src/Makefile.am
- delete mode 100755 bin/osrf_ctl.sh.in
-
-commit 8fb4405a2768dd752743dab71d6e2e8a50ee6cd5
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Wed Apr 2 15:24:06 2014 -0700
-
- LP#1285915: document that perl2JSON doesn't order hash keys
-
- This patch documents that JSON strings returned by
- OpenSRF::Utils::JSON->perl2JSON() should not be expected to have
- hash keys sorted in any particular order. It also adjusts a
- corresponding test case to consistently pass under Perl 5.18, which
- introduces hash order randomization.
-
- Forcing JSON output to be in canonical form is another option, and
- easily done by JSON::XS, but would add overhead.
-
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
-
-2 1 src/perl/lib/OpenSRF/Utils/JSON.pm
-5 1 src/perl/t/09-Utils-JSON.t
-
-commit 8a8b4cbbae62d3e927b24541f31fec93949b1752
-Author: Galen Charlton <gmc@esilibrary.com>
-Date: Wed Apr 2 16:05:33 2014 -0700
-
- LP#1234816: improve const-correctness of osrfCachePutString and osrfCachePutObject
-
- Since the cache key is not modified by osrfCachePutString and
- osrfCachePutObject, this patch changes the key parameter of those
- two functions from char* to const char*. It also updates one
- caller osrfCachePutObject to not cast away const-ness.
-
- This patch has no functional impact, but enables future callers
- of osrfCachePut* to pass constant strings without having to
- cast away the const-ness.
-
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
-
-2 2 include/opensrf/osrf_cache.h
-1 1 src/gateway/osrf_http_translator.c
-2 2 src/libopensrf/osrf_cache.c
-
-commit 0d2c6d74cf60e000646e534a7682b508c84ea55a
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Thu Apr 10 13:27:34 2014 -0400
-
- LP#1306044 Removing deprecated jabber register script
-
- This script is no longer user, since ejabberdctrl is used instead.
- What's more, this script uses a Perl package (libnet-jabber-perl) which
- is no longer available in Debian (Jessie).
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-0 1 Makefile.am
-0 50 examples/register.pl
- delete mode 100755 examples/register.pl
-
-commit a53e3878ae172477582ae3cfe3ebd8ec9be14e65
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Thu Apr 10 12:05:08 2014 -0400
-
- LP#1306044 Debian Jessie Makefile.install target
-
- * Removes Perl Net::Jabber as a dependency. There is no Jessie package
- for this and OpenSRF hasn't used it in a long time.
-
- * Leaving Debian Squeeze in place for now
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 0 README
-15 3 src/extras/Makefile.install
-
-commit 2e919d795f0d6c5c17218fef68e894903b168a48
-Author: Mike Rylander <mrylander@gmail.com>
-Date: Thu Mar 13 16:55:19 2014 -0400
-
- LP#1292214: Improve docgen output
-
- Docgen output would be a bit more useful if it respected the formatting
- (such as it is) of the signature content provided by the developer. So,
- let's make that happen.
+ To test
+ -------
+ [1] Start an OpenSRF stack and look for a drone process.
+ [2] Use lsof to identify which socket that drone is using
+ to talk to XMPP.
+ [3] Use gdb to attach to the process and close the socket, e.g.,
+
+ $ gdb -p $PID
+ (gdb) p close(11) # or whatever the socket number was
+ (gdb) c
+
+ [4] Use srfsh to make requests of that service. Eventually, one
+ of them will hit the drone.
+ [5] Sans patch, the request will get handled by the drone, but
+ the results will never get sent, and the drone will remain
+ available to handle other requests.
+ [6] With the patch, the drone will exit when it discovers that it
+ can no longer write to the XMPP socket.
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-1 1 src/extras/docgen.xsl
-
-commit 951d97a32db426874c4bb6314e473660d765f302
-Author: Bill Erickson <berick@esilibrary.com>
-Date: Mon May 13 16:19:51 2013 -0400
-
- LP#1179660: remove OpenSRF.pm AUTOLOAD
-
- Instead of simply producing an error message in the OpenSRF logs, calls
- to nonexistent subroutines are now fatal errors which will stop code
- execution.
-
- Signed-off-by: Bill Erickson <berick@esilibrary.com>
- Signed-off-by: Galen Charlton <gmc@esilibrary.com>
-
-1 40 src/perl/lib/OpenSRF.pm
+4 2 src/libopensrf/osrf_app_session.c
+5 0 src/perl/lib/OpenSRF/Transport/SlimJabber/XMPPReader.pm