当我们通过包含完整异常堆栈跟踪的NServiceBus发送消息时,我们得到以下NHibernate异常:
Z Error dehydrating property value for
NServiceBus.TimeoutPersisters.NHibernate.TimeoutEntity.Headers NHibernate.PropertyValueException NHibernate.HibernateException NServiceBus.Core
at NServiceBus.Unicast.Transport.Transactional.TransactionalTransport.ProcessMessage(TransportMessage m)
at NServiceBus.Unicast.Transport.Transactional.TransactionalTransport.ReceiveMessage()
at NServiceBus.Utils.TransactionWrapper.RunInTransaction(Action callback, IsolationLevel isolationLevel, TimeSpan transactionTimeout)
at NServiceBus.Unicast.Transport.Transactional.TransactionalTransport.Process()
它与消息字段的长度有关,但似乎它是内部的 NServiceBus问题。我们使用NServiceBus v3.2.4
消息类如下所示:
public class ExceptionOccuredCommand : ICommand
{
public string Message { get; set; }
public string Details { get; set; }
public DateTime ExceptionDate { get; set; }
public string UserName { get; set; }
public string MachineName { get; set; }
public string ApplicationName { get; set; }
public string ErrorQueue { get; set; }
//public string SourceQueue { get; set; }
public string MessageId { get; set; }
}
如何解决这个问题?
答案 0 :(得分:1)
标题有4000个字符的硬限制,你似乎达到了这个限制。我已在问题列表中为此解决了问题:https://github.com/NServiceBus/NServiceBus/issues/737