[ 
https://issues.apache.org/jira/browse/QPID-1289?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12645746#action_12645746
 ] 

Rob Godfrey commented on QPID-1289:
-----------------------------------

AMQSession.java : _defaultPrefetchHighMark; _defaultPrefetchLowMark; should 
probably have the word "default" removed from their name
AMQConnection.java: protected int _maxPrefetch; ... protected member varibales 
are (in general) evil... what is the justification for this over using 
getters/setters?
ClientProperties.java: +    public static final String MAX_PREFETCH_DEFAULT = 
"5000";  What is the reason for making the already large (1000) default even 
larger?  The JIRA text above says make it 500
XAConnectionImpl.java: +        return _delegate.createXASession(_maxPrefetch, 
_maxPrefetch / 2);  Why put this logic in the XAConnectionImpl?  Surely we 
should have a method on the underlying connection which takes no arguments - 
and it can work out the default prefetch values?
StreamMessageTest.java: 
-            consumerSession.createConsumer(queue, 
AMQSession.DEFAULT_PREFETCH_LOW_MARK,
-                AMQSession.DEFAULT_PREFETCH_HIGH_MARK, false, false, (String) 
null, ft);
+            consumerSession.createConsumer(queue, 
Integer.parseInt(ClientProperties.MAX_PREFETCH_DEFAULT), 
Integer.parseInt(ClientProperties.MAX_PREFETCH_DEFAULT), false, false, (String) 
null, ft);
This seems like a change in the test... what it really seems to suggest is that 
there should be a "createConsumer" method where you don't have to pass this 
in... since we clearly do not care about it in this instance, and we are having 
to repeat code that should be elsewhere (getting the defaults from client 
properties)
ReturnUnroutableMandatoryMessageTest.java  : same comment as for Stream message 
test



> [Java Client] Allow client to set prefetch using system property & reduce 
> default to 500
> ----------------------------------------------------------------------------------------
>
>                 Key: QPID-1289
>                 URL: https://issues.apache.org/jira/browse/QPID-1289
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Client
>    Affects Versions: M3
>            Reporter: Marnie McCormack
>            Assignee: Rob Godfrey
>             Fix For: M4
>
>         Attachments: QPID-1289.patch
>
>
> Currently JMS users can't override the default prefetch value - they get 
> stuck with the default from AMQSession when a consumer is created. We need to 
> be able to pick up a client system property and use that to allow priority 
> queues to work in any useful way (they need a prefetch of 1).
> We should also reduce the default max buffer size to 500. May be that the 
> 0.10 code already handles this ? We need it also on the 0.8 Java code.
> Please update instructions here with details of How To once complete:
> http://cwiki.apache.org/confluence/display/qpid/Use+Priority+Queues

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to