[Opensrf-commits] r2014 - in tags/rel_1_6_0-alpha: . src/perl/lib (dbs)
svn at svn.open-ils.org
svn at svn.open-ils.org
Mon Aug 23 09:40:18 EDT 2010
Author: dbs
Date: 2010-08-23 09:40:16 -0400 (Mon, 23 Aug 2010)
New Revision: 2014
Modified:
tags/rel_1_6_0-alpha/ChangeLog
tags/rel_1_6_0-alpha/src/perl/lib/OpenSRF.pm
Log:
Update ChangeLog and version stamp for 1.6.0-alpha release
Modified: tags/rel_1_6_0-alpha/ChangeLog
===================================================================
--- tags/rel_1_6_0-alpha/ChangeLog 2010-08-23 13:28:09 UTC (rev 2013)
+++ tags/rel_1_6_0-alpha/ChangeLog 2010-08-23 13:40:16 UTC (rev 2014)
@@ -1 +1,282 @@
-#ChangeLog
+2010-08-23 dbs
+
+ * .: Tag the OpenSRF 1.6 alpha release
+
+ * Bring supported distros up to date, warn about Java support
+
+ * Create rel_1_6 branch for next major OpenSRF release
+
+2010-08-18 erickson
+
+ * Due to the async nature of xmllhttprequest, processing http responses (which
+ often lead to further async-request laden callbacks) at receive time can result
+ in out-of-order message handling. To bring order to this chaos, push all inbound
+ message onto a queue, then go back to processing the older messages in order of
+ oldest to newest.
+
+2010-08-16 scottmk
+
+ * A few minor tweaks in the name of const-correctness.
+
+ M src/router/osrf_router_main.c
+
+ * Several minor and inconsequential changes:
+
+ 1. Tidied up the white space in a few places.
+
+ 2. Commented out several unused functions, used only for development,
+ in order to eliminate some annoying compiler warnings.
+
+ 3. Added the const qualifier to several variables.
+
+ 4. Added three branches to a switch/case structure, in order to
+ eliminate some compiler warnings about untested enum values. The
+ new branches merely issue warning messages to the log (presumably
+ we don't expect to see RESULT or STATUS messages in this
+ context).
+
+ M src/gateway/osrf_http_translator.c
+
+2010-08-15 scottmk
+
+ * 1. Pedantic change for const-correctness: replaced all calls to
+ jsonObjectGetKey() with calls to jsonObjectGetKeyConst().
+
+ 2. Tidied up white space and comments here and there.
+
+ M src/router/osrf_router_main.c
+
+2010-08-14 scottmk
+
+ * Pedantic change for const-correctness: change three calls to
+ jsonObjectGetKey() to call jsonObjectGetKeyConst() instead.
+
+ M src/gateway/osrf_http_translator.c
+
+ * Pedantic change for const-correctness: replace two calls to
+ jsonObjectGetKey() with calls to jsonObjectGetKeyConst().
+
+ M src/libopensrf/osrf_parse_json.c
+
+ * Minor performance tweak: replace a call to buffer_add()
+ with a call to buffer_add_n().
+
+ In this case we already know how many characters to add,
+ so we can avoid a call to strlen().
+
+ M src/libopensrf/osrf_prefork.c
+
+ * Add some macros for upward compatibility from the old JSON parser.
+
+ These macros map the old functions to the equivalent new ones.
+
+ M include/opensrf/osrf_json.h
+
+ * Eliminate the old JSON parser, implemented in osrf_json_parser.c and
+ the associated header osrf_json_utils.h.
+
+ This parser has been completely replaced by a newer one implemented
+ in osrf_parse_json.c, plus an incremental JSON parser (so far
+ unused) in jsonpush.c..
+
+ The even older parser of JSON-with-comments is not affected.
+
+ D include/opensrf/osrf_json_utils.h
+ M include/opensrf/osrf_json.h
+ D src/libopensrf/osrf_json_parser.c
+ M src/libopensrf/osrf_json_object.c
+ M src/libopensrf/Makefile.json
+ M src/libopensrf/osrf_json_tools.c
+ M src/libopensrf/Makefile.am
+ M src/libopensrf/osrf_parse_json.c
+ M Makefile.am
+
+2010-08-13 dbs
+
+ * Get the extra_debs into Squeeze as well; fix a typo in libmemcached-tools
+
+ * Make the names of the rules for installing extra Squeeze debs line up
+
+ * Make log length in Perl logger a configurable value to assist debugging
+
+ If logging to syslog instead of a file, you might need to adjust the
+ syslog configuration to accept longer than its own default lengths of
+ log messages
+
+2010-08-13 scottmk
+
+ * Minor cleanup:
+
+ Changed two calls to buffer_add(), when appending a single character,
+ to call buffer_add_char() instead, which is slightly more efficient.
+
+ M src/srfsh/srfsh.c
+
+2010-08-13 dbs
+
+ * First cut at adding Debian Squeeze to OpenSRF prerequisite installer
+
+ Along the way, make a few other changes:
+ * drop Debian Etch and Gentoo support
+ * add dscott at laurentian.ca to the author list
+ * remove Class::DBI as that's actually a prereq for Evergreen, not OpenSRF
+
+2010-08-11 scottmk
+
+ * Adding comments and tinkering with white space.
+ No substantive changes.
+
+ M src/libopensrf/osrf_prefork.c
+
+2010-08-10 scottmk
+
+ * Provide a way for a service to set the effective buffer size for a
+ specified method.
+
+ Non-atomic methods accumulate RESULT messages into a buffer, from which
+ they are flushed when the buffer is about to overflow, or when the
+ closing STATUS message is issued.
+
+ The new osrfMethodSetBufferSize() function allows the service to favor
+ large buffers (for greater throughput) or small ones (for a lower
+ latency for the first response).
+
+ Since the buffersize is not an absolute limit, the effective buffer
+ size may be set to zero, in which case each RESULT message will be
+ packaged and sent in a separate XMPP message as soon as it is ready.
+
+ Changing the buffer size has no effect on an atomic method, nor on a
+ method that returns only one RESULT message.
+
+ M include/opensrf/osrf_application.h
+ M src/libopensrf/osrf_application.c
+
+2010-08-09 scottmk
+
+ * Cruft removal; there should be no outwardly visible effects.
+
+ 1. Remove the OSRF_METHOD_ATOMIC and OSRF_METHOD_SYSTEM options
+ from the interface functions osrfRegisterMethod() and
+ osrfRegisterExtendedMethod().
+
+ An application cannot usefully apply these options when it registers
+ a method, and if it tries, it will almost certainly not work as
+ intended anyway.
+
+ This change required considerable refactoring of the code
+ responsible for registering methods.
+
+ 2. When the attempt to initialize an application fails, remove
+ the application from the application list and destroy it,
+ instead of keeping it around in an unusable state.
+
+ 3. Eliminate some redundant lookups of application by name
+ when registering system methods.
+
+ M include/opensrf/osrf_application.h
+ M src/libopensrf/osrf_application.c
+
+ * Fixed a bug in the chunking.
+
+ Short version: The non-atomic system methods weren't working. Now
+ they are.
+
+ Long version: When a method returns a value greater than zero, a
+ post-processing step sends a STATUS message to signify that the
+ response is complete. In the old code this post-processing
+ bypassed the buffer-flushing step, so that anything still in the
+ buffer didn't get sent.
+
+ The non-atomic system methods returned positive return codes and
+ were therefore subject to this problem. I don't know if any
+ non-system methods return postive return codes, but if they do,
+ they would also have been affected.
+
+ M src/libopensrf/osrf_application.c
+
+2010-08-05 gmc
+
+ * set transaction ID by default to make it easier to trace requests from srfsh
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2010-08-04 miker
+
+ * always use respond_complete to finish a request, whether there is a final
+ message or not
+
+2010-08-04 scottmk
+
+ * Implement the chunking of OSRF messages. I.e. bundle multiple
+ OSRF messages into an XMPP message, up to about 10k bytes, so
+ as to reduce networking overhead.
+
+ M include/opensrf/osrf_application.h
+ M src/libopensrf/osrf_application.c
+
+2010-08-03 miker
+
+ * Mike, when adding the length, actually add the length, not the string
+
+2010-07-29 scottmk
+
+ * 1. Add a buffer to osrfAppSession structure; for future use
+
+ 2. New function osrfSendTransportPayload(). This a repackaging of
+ existing functionality pulled out into a separate function so that
+ it can be reused in other contexts.
+
+ These changes are preparation for future changes, and will have no
+ visible effect by themselves.
+
+ M include/opensrf/osrf_app_session.h
+ M src/libopensrf/osrf_app_session.c
+
+2010-07-29 miker
+
+ * Add response chunking support to the Perl implementation of OpenSRF
+
+ Two new optional paramters to register_method are now supported:
+ * max_chunk_size
+ * max_chunk_count
+
+ OpenSRF has always supported message bundling, but only respond_complete made
+ use of this fact by sending the final result message and the completion status
+ message in the same XMPP envelope. Now, on a per method basis, RESULT messages
+ can be bundled (cached) until one of three conditions occurs:
+
+ * The size of the JSON of the RESULT messages matches or exceeds max_chunk_size
+ * The number of RESULT messages cached matches or exceeds max_chunk_count
+ * respond_complete is called (which happens implicitly by returning from a
+ method)
+
+ Because the overhead of sending multiple XMPP messages far outweighs the caching
+ and cache management costs of chunking, the default for max_chunk_size is set
+ at 10240 bytes (10k). The default for max_chunk_count is 0. To turn off chunking
+ completely, set the max_chunk_size register_method parameter to 0.
+
+2010-07-29 scottmk
+
+ * 1. Make osrfMessageToJSON() available at global scope.
+
+ 2. New function osrf_message_set_result() -- a more efficient alternative
+ to osrf_message_set_result_content().
+
+ Typically when using the older function, we convert a jsonObject to JSON
+ text, and then parse the JSON text back into a jsonObject. With the new
+ function we can avoid the round trip through the text format.
+
+ M include/opensrf/osrf_message.h
+ M src/libopensrf/osrf_message.c
+
+2010-07-13 dbs
+
+ * Whitespace / description cleanup
+
+ * Teach opensrf-perl.pl the same PID directory as osrf_ctl.sh
+
+ This should cut down on one more command-line option when working
+ with individual Perl services.
+
+ * Typo fix to display all OpenSRF methods: sysemt -> system
+
Modified: tags/rel_1_6_0-alpha/src/perl/lib/OpenSRF.pm
===================================================================
--- tags/rel_1_6_0-alpha/src/perl/lib/OpenSRF.pm 2010-08-23 13:28:09 UTC (rev 2013)
+++ tags/rel_1_6_0-alpha/src/perl/lib/OpenSRF.pm 2010-08-23 13:40:16 UTC (rev 2014)
@@ -14,11 +14,11 @@
=head1 VERSION
-Version 1.4.0
+Version 1.6.0-alpha
=cut
-our $VERSION = 1.4.0;
+our $VERSION = 1.6.0-alpha;
=head1 METHODS
More information about the opensrf-commits
mailing list