RabbIT Changelog

What's new in RabbIT 4.11

Feb 17, 2012
  • Cleanup of the request logging. Make sure that logging is done off the selector threads so that we can call external loggers.
  • Added configurable traffic usage loggers so that it is easy to log user network traffic usage.
  • Extracted cache configuration to its own interface and moved the ncache implementation to its own package. The CacheEntry interface was cleaned up so that it is easier to implement and easier to use, some methods that were only for internal usage were removed.
  • More fixes for http headers reading, when the header has been split into many different blocks on the network.

New in RabbIT 4.10 (Feb 17, 2012)

  • Fixed a problem with StackOverflow for chunked resources with many small chunks. Updated rnio to version 1.2.
  • Fixed a problem with enlarging an already large data buffer data buffer.
  • Fixed a problem that caused some bytes to get lost when a data buffer were enlarged.
  • Updated the cache_only config so that rabbit starts without warnings. Try to return the data buffer in a few more cases.
  • Updated javadocs

New in RabbIT 4.9 (Jan 19, 2011)

  • Added a jndi context for database resources.
  • Made it easier to use external classes for databases by adding custom class loading.
  • Stopped using TCP_NO_DELAY.
  • Fixed a problem that caused RequestLineTooLongException to be thrown in some rare cases.
  • Much updates of the javadoc.
  • Added a filter that blocks sites using a sql database table of hosts.
  • Update the rniolibrary.

New in RabbIT 4.8 (Oct 28, 2010)

  • Big javadoc update. Add support for filtering of connect requests.
  • Fixed the problem where the log file got filled with IllegalStateException when repack was on.
  • Handle character encodings and http header content better.
  • Handle semitransparent images better when using the java based image
  • converter.
  • Updated dnsjava to 2.1.0.
  • Shorten the log from "Connection reset by peer".
  • Added addresses to SSLHandlers logs.

New in RabbIT 4.7 (Jul 31, 2010)

  • Fixed the problem 401 and 407 responses when using FileTemplateHttpGeneratorFactory.
  • Added a proxy chain selector to make it it possible to use different connections strategies depending on the request uri.
  • Made it possible to specify a ProxyChainFactory in rabbit.conf.
  • Added a ProxyChainFactory that uses direct access to internal networks and
  • uses a chained proxy for external access.
  • Made sure that the ant based build got valid Main-Class and a Class-Path entries and that the Help.txt was included in the jar.
  • Updated ant javadoc task so that it uses the same arguments as the Makefile.
  • Fixed many trivial issues flagged by idea.
  • A lot of javadoc was added or updated.
  • Made sure that http header read buffers are expanded once before throwing the 414 request too long response.
  • Fixed a problem with reading pipelined requests. Removed the clientHandler from the different handlers since they did not and must not use it.

New in RabbIT 4.5 (May 5, 2010)

  • Created rnio as a separate project out of the rabbit.nio package and made rabbit use rnio. Use URLDeocder instead of home written method. Use utf-8 for meta pages by default. Add a few missing javadoc package descriptions and fixed a few typos in the javadoc. Renamed Coder to Base64 since that is all it handles. Made it possible for filters to see the client request body. Fixed some cross site scripting problems with the generated error pages. Changed the cache so that it throws CacheException if an operation fails.

New in RabbIT 4.2 (Oct 28, 2009)

  • Made it possible to specify what ip rabbit should listen on. Made it possible to specify what ip rabbit should use for outgoing connections. Made access logging handle log setup failure without getting NullPointerException. Added task timing and a status page that can show the time take by different tasks. Do not log about empty cache dir on startup.

New in RabbIT 4.1 (Oct 28, 2009)

  • Increased the default keepalive timeout to 30 seconds. Made number of selector threads configurable, with a default value of the number of cpu cores. Made selector status page easer to read by altering colors between selectors. Made WebConnectionResourceSource actually grow the download buffer when it has read full chunks a few times. Made ConnectionHandler use concurrent collections for better scalability. ConnectionHandler now removes all empty pools. Tried to fix a NPE in the selector code. Call Deflater.end to release native zip resources earlier.

New in RabbIT 4.0 (May 6, 2009)

  • Reworked nio layer so that rabbit uses multiple selector threads. Reworked logging to use java.util.logging and made it possible to use either rabbit.conf or the system property java.util.logging.config.file to specify the logging configuration. Fixed a problem where web connections could be put into the connection pools multiple times.

New in RabbIT 3.18 (Apr 22, 2009)

  • Fixed a problem where tunnels (https) could crash. Fixed a problem where repacking could cause NPE (redeemer).