If a user is connected multiple times using the same priority in different clients the server will send the message (sent to bare JID of user) only to the client that last logged in (with highest priority). Instead we need to be smarter and even let admins override the default logic:
New smart logic:
1) Select resources with highest priority
2) Select resources with highest show value (e.g. available, away, xa)
3) Select resource with most recent activity
4) Send message to that resource
Admins can set the system property "route.all-resources" to true to override the above logic and just send the message to all connected resources with highest priority.
See: http://www.xmpp.org/specs/rfc3921.html#rules (Section 220.127.116.11.)