[JBoss JIRA] Reopened: (JBMESSAGING-312) Refactor persistencemanager
by Tim Fox (JIRA)
[ http://jira.jboss.com/jira/browse/JBMESSAGING-312?page=all ]
Tim Fox reopened JBMESSAGING-312:
---------------------------------
> Refactor persistencemanager
> ---------------------------
>
> Key: JBMESSAGING-312
> URL: http://jira.jboss.com/jira/browse/JBMESSAGING-312
> Project: JBoss Messaging
> Issue Type: Task
> Reporter: Tim Fox
> Assigned To: Tim Fox
> Fix For: 2.0.0 Beta
>
> Original Estimate: 4 days
> Remaining Estimate: 4 days
>
> Refactor PersistenceManager to make less monolithic.
> The PersistenceManager should really only deal with simple persistence operations, e..g. addReference, removeReference, addMessage, removeMessage etc. This makes it easy to re-implement for another type of store.
> Currently the PM contains logic that belongs elsewhere e.g. in the ChannelState.
> The TransactionCallback should be removed to it's own java file.
> The locking operations should occur in the caller.
> There should be an abstraction PMTxContext which can be passed into PM operations to group them.
> This should dramatically clarify and simplify things
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 5 months
[JBoss JIRA] Reopened: (JBMESSAGING-353) ConnectionConsumerTest.testRedeliveryTransacted() fails on Mac OSX 10.4.6 but passes on Windows
by Tim Fox (JIRA)
[ http://jira.jboss.com/jira/browse/JBMESSAGING-353?page=all ]
Tim Fox reopened JBMESSAGING-353:
---------------------------------
> ConnectionConsumerTest.testRedeliveryTransacted() fails on Mac OSX 10.4.6 but passes on Windows
> -----------------------------------------------------------------------------------------------
>
> Key: JBMESSAGING-353
> URL: http://jira.jboss.com/jira/browse/JBMESSAGING-353
> Project: JBoss Messaging
> Issue Type: Bug
> Components: JMS Facade, Tests and Performance
> Affects Versions: 1.0.0, 1.0.1.CR1
> Environment: mac osx 10.4.6
> JDK 1.4.2_09
> JDK 1.5.0_04
> Reporter: Aaron Walker
> Assigned To: Aaron Walker
> Fix For: 2.0.0 Beta
>
> Attachments: messaging-tests.trace.log
>
> Original Estimate: 3 days
> Remaining Estimate: 3 days
>
> The testRedeliveryTransacted fail with the following:
> 1) testRedeliveryTransacted(org.jboss.test.messaging.jms.ConnectionConsumerTest)junit.framework.AssertionFailedError: Didn't receive correct messages
> at org.jboss.test.messaging.jms.ConnectionConsumerTest.testRedeliveryTransacted(ConnectionConsumerTest.java:224)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at org.jboss.test.messaging.tools.junit.SelectiveTestRunner.main(SelectiveTestRunner.java:58)
> The issue revolves around the sess.rollback around line 433 in that after the rollback and the 3 messages get redelivered and on the 3rd message the following if (!tm.getJMSRedelivered()) at line 481 evaluates to true in that the getJMSRedelivered() is false when it should be true. By placing a 1ms sleep just prior to the rollback you can get the test to pass. So after my initial investigation It appears that it may be some sort of threading issue that shows up on my mac.
> I will attached the TRACE log for this If you look at line 765 of the log it shows that the delivery count for the message is 0 when it should be 1
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 5 months
[JBoss JIRA] Reopened: (JBMESSAGING-158) Tidy up tests
by Tim Fox (JIRA)
[ http://jira.jboss.com/jira/browse/JBMESSAGING-158?page=all ]
Tim Fox reopened JBMESSAGING-158:
---------------------------------
> Tidy up tests
> -------------
>
> Key: JBMESSAGING-158
> URL: http://jira.jboss.com/jira/browse/JBMESSAGING-158
> Project: JBoss Messaging
> Issue Type: Task
> Components: Tests and Performance
> Affects Versions: 1.0.0 alpha PR3
> Reporter: Ovidiu Feodorov
> Priority: Minor
> Fix For: 2.0.0 Beta
>
> Original Estimate: 2 days, 4 hours
> Remaining Estimate: 2 days, 4 hours
>
> Tidy up tests:
> - Some test classes (and notably MessageConsumerTest) do a lot of Connection/Session/Consumer/Producer creation in setUp(). The original idea was to separate as much boilerplate code as possible, but this leads to hard to understand tests and may lead to unexpected behavior, since the test my get "hidden" intialization it doesn't want. Refactor them and re-write each test to be as independent as possible.
> - For tests that send messages in a loop, use a centrally-configured loop counter, which can be easily globally modified. Stress test are more likely to exhibit edge cases and race conditions as the number of message increases, and it should be easy to control that number globally.
> Example
> public class Global
> {
> public static final int GENERAL_COUNTER = 100;
> ....
> }
> public class MyTest extends MessagingTestCase
> {
> // override if it doesn't makes sense locally
> protected int NUM_MESSAGES = Global.GENERAL_COUNTER;
> ...
> }
>
> - Some tests are not in the right file.
> When refactor tests, take extra care not to break their semantics, though.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 5 months