RabbitMQ 3.6.10 free open source message broker released


The RabbitMQ team announced the release of RabbitMQ 3.6.10. This release contains bug fixes and usability improvements. Binary and source distributions of the new release can be found on the downloads page, GitHub, Package Cloud, and Bintray. The RabbitMQ team encourages all users of earlier versions of RabbitMQ to upgrade to this latest release.



BizTalk and RabbitMQ


An article on TechNet about integration of the RabbitMQ open source AMQP message broker with BizTalkshows how to implement the standard queue messaging – sending and receiving messages from BizTalk down through the RabbitMQ queue. The author uses the WCF-Custom LOB Adapter (provided from BizTalk side) and the WCF RabbitMQ Binding (provided from RabbitMQ side) to link two systems.

A Delphi and Free Pascal client library for the RabbitMQ message broker is available.

IIS Express startup error “Failed while trying to preload CLR version v4.0”


Today, when I started my first ISAPI development and testing with Delphi for Habari Client message broker libraries, a fresh installation of Internet Information Server 7.5 (IIS Express) failed to start.

Launching with the debug parameter /trace:e gave this cryptic message:

Failed while trying to preload CLR version v4.0.  hr = 8007000d
Failed to initalize the W3WP_HOST  hr = 8007000d
Process Model Shutdown called
Failed to start 'HostedWASStart'.  Error = 28152744
HostableWebCore activation failed.

The “Failed while trying to preload CLR version v4.0” was the helpful hint. The reason of the startup error was simply a missing .NET 4.0 framework on the machine. To fix it, this line in C:\Users\Documents\IISExpress\config\applicationhost.config

<applicationDefaults applicationPool="Clr4IntegratedAppPool" />

had to be changed to

<applicationDefaults applicationPool="Clr2IntegratedAppPool" />

to switch to .NET framework 2.

FastMM4 4.991


(September 3, 2012) Pierre LeRiche released FastMM4 4.991. It includes OSX and XE3 support and a new feature, the function LogMemoryManagerStateToFile:

This call logs a summary of the memory manager state to file: The total allocated memory, overhead, efficiency, and a breakdown of allocated memory by class and string type. This call may be useful to catch objects that do not necessarily leak, but do linger longer than they should.