"timfox" wrote : "vc123" wrote : | | | | anonymous wrote : | | | On my tests, persistent auto-ack send was too fast ( about 3000 1K messages/s) which means that there is no auto commit. if so, it would mean that persistent message delivery is not really reliable which is a violation of the JMS spec. | | | | | | | No, that's not a violation of the spec for previously mentioned reasons. I suspect you are using a non durable subscriber, in which case messages won't get persisted anyway. | | | | Please can you explain whether you are using a queue or topic, whether it is temporary, and if a topic, whether is durable or non durable? | | It turns out that the speed was so high because I used Hypersonic as the "persistent" store. When I switched to Oracle, the 1KB message production rate fell down to the expected value of about 100 messages/sec. | | I traced Oracle SQL statements resulting from message send/receive calls, and I saw that with persistent delivery a commit is issued once per each message in the AUTO_ACK mode and once per batch in the transactional mode as expected. So JBoss Messaging works according to the spec. | | However, I was rather disappointed with non_persistent delivery which was about 1700-2000 messages/s with Oracle. Apparently, even with non_persistent delivery, JM still issues quite a few SQL calls. | | Switching back to HSQL, in hopes to improve performance, was no joy either because on my stress test (sending-receiving 1K messages in a loop) HSQL failed repeated with the following stack: | | | 15:48:04,936 WARN [JDBCSupport] SQLException caught, SQLState 23000 | | code:-104- assuming deadlock detected, try:1 | | java.sql.SQLException: Violation of unique constraint SYS_PK_51: | | duplicate value(s) for column(s) $$ in statement [INSERT INTO JBM_MSG | | (MESSAGE_ID, RELIABLE, EXPIRATION, TIMESTAMP, PRIORITY, TYPE, HEADERS, | | PAYLOAD) SELECT ?, ?, ?, ?, ?, ?, ?, ? FROM JBM_DUAL WHERE NOT EXISTS | | (SELECT MESSAGE_ID FROM JBM_MSG WHERE MESSAGE_ID = ?)] | | at org.hsqldb.jdbc.Util.throwError(Unknown Source) | | at org.hsqldb.jdbc.jdbcPreparedStatement.executeUpdate(Unknown | | Source) | | | The failure occured under JBoss 5 Beta 4 as well as Jboss 4.2.2 with SP3 Messaging. | | Thanks. | | VJ | |
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4128499#4128499 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4128499 _______________________________________________ jboss-user mailing list [email protected] https://lists.jboss.org/mailman/listinfo/jboss-user
