AMQ-2879 the stack-trace to which recently re-emerged in our production logs. The issue was traced to a developer having copy-pasted some PHP script that created a durable topic subscriber but in his clone he subscribed to a queue not a topic. He wasn't to know...
Question is how to prevent clients getting into this situation. Can the transport disconnect the client and log an error to the console, or must it allow the connection, potentially lulling the client developer into a false sense of functioning code?
Might also want to review the documentation and potentially the header names to prevent future confusion.