我有一個試圖安排使用烏鴉超時留存的超時的情況NServiceBus傳奇,但它會嘗試當它得到這個錯誤:烏鴉返回400「請求太長」錯誤時NServiceBus嘗試安排超時
NServiceBus.Unicast.Transport.Transactional.TransactionalTransport [(null)] <(null)> - Failed raising 'transport message received' event for message with ID=90dadfbd-9eb6-4558-96ec-37edb642330a\17275422
System.InvalidOperationException: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
<HTML><HEAD><TITLE>Bad Request</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD>
<BODY><h2>Bad Request - Request Too Long</h2>
<hr><p>HTTP Error 400. The size of the request headers is too long.</p>
</BODY></HTML>
---> System.Net.WebException: The remote server returned an error: (400) Bad Request.
at System.Net.HttpWebRequest.GetResponse()
at Raven.Client.Connection.HttpJsonRequest.ReadStringInternal(Func`1 getResponse)
--- End of inner exception stack trace ---
at Raven.Client.Connection.HttpJsonRequest.ReadStringInternal(Func`1 getResponse)
at Raven.Client.Connection.HttpJsonRequest.ReadResponseString()
at Raven.Client.Connection.HttpJsonRequest.ReadResponseJson()
at Raven.Client.Connection.ServerClient.DirectPut(RavenJObject metadata, String key, Nullable`1 etag, RavenJObject document, String operationUrl)
at Raven.Client.Connection.ServerClient.<>c__DisplayClass10.<Put>b__f(String u)
at Raven.Client.Connection.ServerClient.TryOperation[T](Func`2 operation, String operationUrl, Boolean avoidThrowing, T& result)
at Raven.Client.Connection.ServerClient.ExecuteWithReplication[T](String method, Func`2 operation)
at Raven.Client.Connection.ServerClient.Put(String key, Nullable`1 etag, RavenJObject document, RavenJObject metadata)
at Raven.Client.Document.HiLoKeyGenerator.PutDocument(JsonDocument document)
at Raven.Client.Document.HiLoKeyGenerator.GetNextMax()
at Raven.Client.Document.HiLoKeyGenerator.NextId()
at Raven.Client.Document.HiLoKeyGenerator.GenerateDocumentKey(DocumentConvention convention, Object entity)
at Raven.Client.Document.MultiTypeHiLoKeyGenerator.GenerateDocumentKey(DocumentConvention conventions, Object entity)
at Raven.Client.Document.DocumentStore.<>c__DisplayClass1.<Initialize>b__0(Object entity)
at Raven.Client.Document.InMemoryDocumentSessionOperations.GetOrGenerateDocumentKey(Object entity)
at Raven.Client.Document.InMemoryDocumentSessionOperations.StoreInternal(Object entity, Nullable`1 etag, String id)
at Raven.Client.Document.InMemoryDocumentSessionOperations.Store(Object entity)
at NServiceBus.Timeout.Hosting.Windows.Persistence.RavenTimeoutPersistence.Add(TimeoutData timeout)
at NServiceBus.Timeout.Core.TimeoutTransportMessageHandler.Handle(TransportMessage message)
at NServiceBus.Unicast.Transport.Transactional.TransactionalTransport.OnTransportMessageReceived(TransportMessage msg)
我已重新啓動烏鴉服務& nservicebus主機。我已經嘗試重新創建這個傳奇,但它仍然發生。正被安排
超時狀態信息是微小的:
<Messages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.net/Invoicing.Service">
<IPartPaymentTimeout>
<Amount>10.00</Amount>
<OriginalTransactionTimeUtc>2013-01-14T05:49:04.8180938Z</OriginalTransactionTimeUtc>
<PaymentNumber>7</PaymentNumber>
<Id>123456</Id>
<InvoiceNumber>1234567/34567</InvoiceNumber>
</IPartPaymentTimeout>
</Messages>
你能捕捉提琴手原始的HTTP請求? –
如何讓NServiceBus通過提琴手路由? –
http://andreasohlund.net/2012/10/16/how-to-debug-ravendb-through-fiddler-using-nservicebus/ –