[ANN] ngx_openresty devel version 1.2.3.1 released

agentzh agentzh at gmail.com
Wed Aug 22 23:02:18 UTC 2012


Hi, guys!

I am happy to announce the new development version of ngx_openresty, 1.2.3.1:

   http://openresty.org/#Download

Special thanks go to all our contributors and users for making this happen!

Below is the complete change log for this release, as compared to the
last (stable) release, 1.2.1.14:

 *   upgraded the Nginx core to 1.2.3.

     *   see <http://nginx.org/en/CHANGES-1.2> for changes.

 *   upgraded LuaNginxModule to 0.6.2.

     *   feature: (re)implemented the standard Lua coroutine API,
         which means that the user is now free to create and run
         their own coroutines within the boilerplate coroutine
         created automatically by LuaNginxModule. thanks chaoslawful
         and jinglong for the design and implementation.

     *   feature: added new dtrace static probes for the user
         coroutine mechanism: "http-lua-coroutine-create" and
         "http-lua-coroutine-resume".

     *   feature: added new dtrace static probes for the cosocket
         mechanism: "http-lua-socket-tcp-send-start",
         "http-lua-socket-tcp-receive-done", and
         "http-lua-socket-tcp-keepalive-buf-unread".

     *   bugfix: the send timeout timer for downstream output was not
         deleted in time in our write event handler, which might
         result in request abortion for long running requests. thanks
         Demiao Lin (ldmiao) for reporting this issue.

     *   bugfix: tcpsock:send() might send garbage if it was not the
         first call: we did not properly initialize the chain writer
         ctx for every "send()" call. thanks Zhu Dejiang for
         reporting this issue.

     *   bugfix: the "ngx_http_lua_probe.h" header file was not
         listed in the "NGX_ADDON_DEPS" list in the "config" file.

     *   optimize: removed unnecessary code that was for the old
         coroutine abortion mechanism based on Lua exceptions. we no
         longer need that at all because we have switched to using
         coroutine yield to abort the current coroutine for
         "ngx.exec", "ngx.exit", "ngx.redirect", and
         "ngx.req.set_uri(uri, true)".

 *   upgraded LuaRestyDNSLibrary to 0.06.

     *   feature: added support for MX type resource records.

     *   feature: unrecognized types of resource records will return
         their raw resource data (RDATA) as the "rdata" Lua table
         field.

 *   upgraded LuaRestyRedisLibrary to 0.13.

     *   feature: added new method read_reply, mostly for using the
         Redis Pub/Sub API.

     *   feature: added new class method add_commands to allow adding
         support for new Redis commands on-the-fly. thanks Praveen
         Saxena for requesting this feature.

     *   docs: added a code sample for using the Redis transactions.

 *   upgraded DrizzleNginxModule to 0.1.4.

     *   bugfix: the "open socket #N left in connection" alerts would
         appear in the nginx error log file when the MySQL/Drizzle
         connection pool was used and the worker process was shutting
         down.

 *   upgraded PostgresNginxModule to 1.0rc2.

     *   bugfix: the "open socket #N left in connection" alerts would
         appear in the nginx error log file when the PostgreSQL
         connection pool was used and the worker process was shutting
         down.

     *   bugfix: removed the useless http-cache related code from
         "ngx_postgres_upstream_finalize_request" to suppress clang
         warnings.

 *   added more dtrace static probes to the Nginx core: "timer-add",
     "timer-del", and "timer-expire".

 *   added more systemtap tapset functions: "ngx_chain_next",
     "ngx_chain_writer_ctx_out", "ngx_chain_dump", and
     "ngx_iovec_dump".

The HTML version of the change contains some helpful hyper-links and
can be browsed here:

    http://openresty.org/#ChangeLog1002003

OpenResty (aka. ngx_openresty) is a full-fledged web application
server by bundling the standard Nginx core, lots of 3rd-party Nginx
modules, as well as most of their external dependencies. See
OpenResty's homepage for details:

    http://openresty.org/

We have been running extensive testing on our Amazon EC2 test cluster
and ensure that all the components (including the Nginx core) play
well together. The latest test report can always be found here:

    http://qa.openresty.org

Enjoy!
-agentzh



More information about the nginx mailing list