ไม่พบคิวปลายทาง '‹QueueName›@‹servername›'

ขณะทดสอบโมเดล pub/sub ฉันเปลี่ยนชื่อคิวผู้สมัครสมาชิก ในขณะที่การสมัครสมาชิกคิวเก่ายังคงมีอยู่ใน DB ดังนั้นจึงมีการสมัครสมาชิกแบบห้อยใน DB

ดังนั้นเมื่อผู้เผยแพร่และผู้สมัครสมาชิกเริ่มต้นและฉันพยายามส่งข้อความจากผู้เผยแพร่ มีข้อยกเว้นเกิดขึ้น และโดยพื้นฐานแล้วผู้เผยแพร่หยุดและไม่ส่งข้อความอีกต่อไป

2011-02-09 09:56:21,115 [6] ข้อผิดพลาด Publisher.ServerEndpoint [(null)] ‹(null)> - ปัญหาเกิดขึ้นเมื่อเริ่มต้นจุดสิ้นสุด System.Configuration.ConfigurationErrorsException: ไม่พบคิวปลายทาง 'StoreInputQueue@' คุณอาจกำหนดค่าปลายทางสำหรับข้อความประเภทนี้ไม่ถูกต้อง (Message.EventMessage) ใน MessageEndpointMappings ของส่วน UnicastBusConfig ในไฟล์การกำหนดค่าของคุณ อาจเป็นกรณีที่ยังไม่ได้สร้างคิวที่กำหนดหรือถูกลบไปแล้ว . ---> System.Messaging.MessageQueueException: ไม่มีคิวหรือคุณไม่มีสิทธิ์เพียงพอที่จะดำเนินการ ใน System.Messaging.MessageQueue.MQCacheableInfo.get_WriteHandle() ที่ System.Messaging.MessageQueue.StaleSafeSendMessage (คุณสมบัติ MQPROPS ธุรกรรม IntPtr) ที่ System.Messaging.MessageQueue.SendInternal (Object obj, MessageQueueTransaction InternalTransaction, MessageQueueTransactionType TransactionType) ที่ System.Messaging MessageQueue.Send (วัตถุ obj, MessageQueueTransactionType ประเภทธุรกรรม) ที่ NServiceBus.Unicast.Transport.Msmq.MsmqTransport.Send (TransportMessage m ปลายทางสตริ) ใน d:\BuildAgent-02\work\20b5f701adefe8f8\src\impl\unicast\NServiceBus.Unicast .Msmq\MsmqTransport.cs:line 334 --- จุดสิ้นสุดของการติดตามสแต็กข้อยกเว้นภายใน --- ที่ NServiceBus.Unicast.Transport.Msmq.MsmqTransport.Send (TransportMessage m ปลายทางของสตริง) ใน d:\BuildAgent-02\work\ 20b5f701adefe8f8\src\impl\unicast\NServiceBus.Unicast.Msmq\MsmqTransport.cs:line 346 ที่ NServiceBus.Unicast.UnicastBus.SendMessage (ปลายทาง IEnumerable`1, correlationId สตริง, MessageIntentEnum messageIntent, ข้อความ IMessage []) ใน d:\BuildAgent -02\work\20b5f701adefe8f8\src\unicast\NServiceBus.Unicast\UnicastBus.cs:line 593 ที่ NServiceBus.Unicast.UnicastBus.Publish[T](T[] ข้อความ) ใน d:\BuildAgent-02\work\20b5f701adefe8f8\ src\unicast\NServiceBus.Unicast\UnicastBus.cs:line 343 ที่ Publisher.ServerEndpoint.Run() ใน C:\Downloads\ESB\NServiceBus\publisher\publisher\ServerEndpoint.cs:line 26 ที่ NServiceBus.Host.Internal.ConfigManager .‹>c_DisplayClass1.b_0() ใน d:\BuildAgent-02\work\20b5f701adefe8f8\src\host\NServiceBus.Host\Internal\ConfigurationManager.cs:line 56

มีช่วงหมดเวลาไหมหลังจากนั้นจะพยายามส่งข้อความถึงสมาชิกที่เหลือ ผมรอค่อนข้างนาน...


person singhsa    schedule 09.02.2011    source แหล่งที่มา


คำตอบ (1)


ฉันไม่คิดว่ามันจะลองอีกครั้ง

การดึงพรม (คิว) ออกจากใต้จุดสิ้นสุดที่ทำงานอยู่นั้นไม่ใช่เรื่องดี ในการผลิตสิ่งนี้ไม่ควรเกิดขึ้นจริงๆ

เนื่องจากคุณเพิ่งทดสอบ ให้ลบแถวการสมัครสมาชิกที่ละเมิดออกจากฐานข้อมูล และรีสตาร์ทตำแหน่งข้อมูล จากนั้นทุกอย่างจะเรียบร้อยดี

person David Boike    schedule 09.02.2011
comment
ความคิดใด ๆ ว่าจะเปิดใช้งานการรวมในคิวตามค่าเริ่มต้นได้อย่างไร เช่น เมื่อ pub/sub สร้างคิว ฉันลองใช้ UseJournalQueue=true โดยไม่มีผลกระทบ - person singhsa; 09.02.2011