[
https://issues.apache.org/jira/browse/AMQNET-480?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tom M. updated AMQNET-480:
--------------------------
Description:
We are using NMS trunk rev 1.7.0.3383 and are facing trouble when decompressing
a broker message (ActiveMq 5.9.0) with compresed messages to be consumed by a
.Net/ApacheNMS client.
It seems only binary files are affected and not all of them, those files
affected do have a size above 48000 bytes.
===
Bad state (incorrect data check)
at Ionic.Zlib.InflateManager.Inflate(FlushType flush)
at Ionic.Zlib.ZlibCodec.Inflate(FlushType flush)
at Ionic.Zlib.ZlibBaseStream.Read(Byte[] buffer, Int32 offset, Int32 count)
at Ionic.Zlib.ZlibStream.Read(Byte[] buffer, Int32 offset, Int32 count)
at System.IO.BinaryReader.Read(Byte[] buffer, Int32 index, Int32 count)
at Apache.NMS.ActiveMQ.Commands.ActiveMQBytesMessage.get_Content()
===
In http://dotnetzip.codeplex.com/workitem/10562 there seems to be an old issue.
So in NMS 1.6.2 or even 1.7.0 trunk it is still 'Ionic.Zlib, Version=1.9.1.5'
used but not the latest? I suppose it is a problem of the dll included rather
than a producer/broker/consumer issue?
Is it possible do update NMS at least to 'Ionic.Zlib, Version=1.9.1.6' which
has the bug mentioned fixed or even the to latest 1.9.1.8?
(http://dotnetzip.codeplex.com)
We failed to do so ourselves with the following error, any advice is
appreciated:
Could not load file or assembly 'Ionic.Zlib, Version=1.9.1.5, Culture=neutral,
PublicKeyToken=edbe51ad942a3f5c' or one of its dependencies. The located
assembly's manifest definition does not match the assembly reference.
(Exception from HRESULT: 0x80131040)
at Apache.NMS.ActiveMQ.CompressionPolicy.CreateDecompressionStream(Stream data)
at Apache.NMS.ActiveMQ.Commands.ActiveMQBytesMessage.InitializeReading() in
d:\Work\Projects\Vesely\NMS\activemq-dotnet\Apache.NMS.ActiveMQ\trunk\src\main\csharp\Commands\ActiveMQBytesMessage.cs:line
499
at Apache.NMS.ActiveMQ.Commands.ActiveMQBytesMessage.get_Content()
was:
We are using NMS trunk rev 1.7.0.3383 and are facing trouble when decompressing
a broker message (ActiveMq 5.9.0) with connection.useCompression=true in a
.Net/ApacheNMS client.
It seems only binary files are affected and not all of them.
===
Bad state (incorrect data check)
at Ionic.Zlib.InflateManager.Inflate(FlushType flush)
at Ionic.Zlib.ZlibCodec.Inflate(FlushType flush)
at Ionic.Zlib.ZlibBaseStream.Read(Byte[] buffer, Int32 offset, Int32 count)
at Ionic.Zlib.ZlibStream.Read(Byte[] buffer, Int32 offset, Int32 count)
at System.IO.BinaryReader.Read(Byte[] buffer, Int32 index, Int32 count)
at Apache.NMS.ActiveMQ.Commands.ActiveMQBytesMessage.get_Content()
===
I don't think the producer is relevant here since the broker is responsible to
compress a message before delivery(?), but I do post it too:
MessageProducer producer = ... Session session = ... ResultSet rs = ... BLOB
blob = ((OracleResultSet) rs).getBLOB(STMT_SELECT_BINMSG); BytesMessage msg =
session.createBytesMessage(); msg.writeBytes(blob.getBytes(1,
(int)blob.length())); producer.send(msg); session.commit();
===
In http://dotnetzip.codeplex.com/workitem/10562 there seems to be an old issue.
So in NMS 1.6.2/1.7.0 trunk it is still 'Ionic.Zlib, Version=1.9.1.5' but not
the latest? Is it a problem of the dll included or a matter of
producer/broker/consumer?
> "Bad state" exception when decompressing
> -----------------------------------------
>
> Key: AMQNET-480
> URL: https://issues.apache.org/jira/browse/AMQNET-480
> Project: ActiveMQ .Net
> Issue Type: Bug
> Components: NMS
> Affects Versions: 1.6.2
> Environment: ActiveMQ 5.9.0
> Reporter: Tom M.
> Assignee: Jim Gomes
> Priority: Blocker
>
> We are using NMS trunk rev 1.7.0.3383 and are facing trouble when
> decompressing a broker message (ActiveMq 5.9.0) with compresed messages to be
> consumed by a .Net/ApacheNMS client.
> It seems only binary files are affected and not all of them, those files
> affected do have a size above 48000 bytes.
> ===
> Bad state (incorrect data check)
> at Ionic.Zlib.InflateManager.Inflate(FlushType flush)
> at Ionic.Zlib.ZlibCodec.Inflate(FlushType flush)
> at Ionic.Zlib.ZlibBaseStream.Read(Byte[] buffer, Int32 offset, Int32 count)
> at Ionic.Zlib.ZlibStream.Read(Byte[] buffer, Int32 offset, Int32 count)
> at System.IO.BinaryReader.Read(Byte[] buffer, Int32 index, Int32 count)
> at Apache.NMS.ActiveMQ.Commands.ActiveMQBytesMessage.get_Content()
> ===
> In http://dotnetzip.codeplex.com/workitem/10562 there seems to be an old
> issue.
> So in NMS 1.6.2 or even 1.7.0 trunk it is still 'Ionic.Zlib,
> Version=1.9.1.5' used but not the latest? I suppose it is a problem of the
> dll included rather than a producer/broker/consumer issue?
> Is it possible do update NMS at least to 'Ionic.Zlib, Version=1.9.1.6' which
> has the bug mentioned fixed or even the to latest 1.9.1.8?
> (http://dotnetzip.codeplex.com)
> We failed to do so ourselves with the following error, any advice is
> appreciated:
> Could not load file or assembly 'Ionic.Zlib, Version=1.9.1.5,
> Culture=neutral, PublicKeyToken=edbe51ad942a3f5c' or one of its dependencies.
> The located assembly's manifest definition does not match the assembly
> reference. (Exception from HRESULT: 0x80131040)
> at Apache.NMS.ActiveMQ.CompressionPolicy.CreateDecompressionStream(Stream
> data)
> at Apache.NMS.ActiveMQ.Commands.ActiveMQBytesMessage.InitializeReading() in
> d:\Work\Projects\Vesely\NMS\activemq-dotnet\Apache.NMS.ActiveMQ\trunk\src\main\csharp\Commands\ActiveMQBytesMessage.cs:line
> 499
> at Apache.NMS.ActiveMQ.Commands.ActiveMQBytesMessage.get_Content()
--
This message was sent by Atlassian JIRA
(v6.2#6252)