svn commit: r832039 - in /tomcat/trunk/java/org/apache/naming: HandlerRef.java ResourceRef.java ServiceRef.java StringManager.java resources/DirContextURLStreamHandler.java

View: New views
6 Messages — Rating Filter:   Alert me  

svn commit: r832039 - in /tomcat/trunk/java/org/apache/naming: HandlerRef.java ResourceRef.java ServiceRef.java StringManager.java resources/DirContextURLStreamHandler.java

by markt-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Author: markt
Date: Mon Nov  2 18:46:21 2009
New Revision: 832039

URL: http://svn.apache.org/viewvc?rev=832039&view=rev
Log:
StringBuffer -> StringBuilder for o.a.naming

Modified:
    tomcat/trunk/java/org/apache/naming/HandlerRef.java
    tomcat/trunk/java/org/apache/naming/ResourceRef.java
    tomcat/trunk/java/org/apache/naming/ServiceRef.java
    tomcat/trunk/java/org/apache/naming/StringManager.java
    tomcat/trunk/java/org/apache/naming/resources/DirContextURLStreamHandler.java

Modified: tomcat/trunk/java/org/apache/naming/HandlerRef.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/naming/HandlerRef.java?rev=832039&r1=832038&r2=832039&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/naming/HandlerRef.java (original)
+++ tomcat/trunk/java/org/apache/naming/HandlerRef.java Mon Nov  2 18:46:21 2009
@@ -159,7 +159,7 @@
      */
     public String toString() {
 
-        StringBuffer sb = new StringBuffer("HandlerRef[");
+        StringBuilder sb = new StringBuilder("HandlerRef[");
         sb.append("className=");
         sb.append(getClassName());
         sb.append(",factoryClassLocation=");

Modified: tomcat/trunk/java/org/apache/naming/ResourceRef.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/naming/ResourceRef.java?rev=832039&r1=832038&r2=832039&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/naming/ResourceRef.java (original)
+++ tomcat/trunk/java/org/apache/naming/ResourceRef.java Mon Nov  2 18:46:21 2009
@@ -140,7 +140,7 @@
      */
     public String toString() {
 
-        StringBuffer sb = new StringBuffer("ResourceRef[");
+        StringBuilder sb = new StringBuilder("ResourceRef[");
         sb.append("className=");
         sb.append(getClassName());
         sb.append(",factoryClassLocation=");

Modified: tomcat/trunk/java/org/apache/naming/ServiceRef.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/naming/ServiceRef.java?rev=832039&r1=832038&r2=832039&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/naming/ServiceRef.java (original)
+++ tomcat/trunk/java/org/apache/naming/ServiceRef.java Mon Nov  2 18:46:21 2009
@@ -188,7 +188,7 @@
      */
     public String toString() {
 
-        StringBuffer sb = new StringBuffer("ServiceRef[");
+        StringBuilder sb = new StringBuilder("ServiceRef[");
         sb.append("className=");
         sb.append(getClassName());
         sb.append(",factoryClassLocation=");

Modified: tomcat/trunk/java/org/apache/naming/StringManager.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/naming/StringManager.java?rev=832039&r1=832038&r2=832039&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/naming/StringManager.java (original)
+++ tomcat/trunk/java/org/apache/naming/StringManager.java Mon Nov  2 18:46:21 2009
@@ -120,7 +120,7 @@
 
             iString = MessageFormat.format(value, nonNullArgs);
  } catch (IllegalArgumentException iae) {
-    StringBuffer buf = new StringBuffer();
+    StringBuilder buf = new StringBuilder();
     buf.append(value);
     for (int i = 0; i < args.length; i++) {
  buf.append(" arg[" + i + "]=" + args[i]);

Modified: tomcat/trunk/java/org/apache/naming/resources/DirContextURLStreamHandler.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/naming/resources/DirContextURLStreamHandler.java?rev=832039&r1=832038&r2=832039&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/naming/resources/DirContextURLStreamHandler.java (original)
+++ tomcat/trunk/java/org/apache/naming/resources/DirContextURLStreamHandler.java Mon Nov  2 18:46:21 2009
@@ -99,7 +99,7 @@
      * Override as part of the fix for 36534, to ensure toString is correct.
      */
     protected String toExternalForm(URL u) {
-        // pre-compute length of StringBuffer
+        // pre-compute length of StringBuilder
         int len = u.getProtocol().length() + 1;
         if (u.getPath() != null) {
             len += u.getPath().length();
@@ -109,7 +109,7 @@
         }
         if (u.getRef() != null)
             len += 1 + u.getRef().length();
-        StringBuffer result = new StringBuffer(len);
+        StringBuilder result = new StringBuilder(len);
         result.append(u.getProtocol());
         result.append(":");
         if (u.getPath() != null) {



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@...
For additional commands, e-mail: dev-help@...


Re: svn commit: r832039 - in /tomcat/trunk/java/org/apache/naming: HandlerRef.java ResourceRef.java ServiceRef.java StringManager.java resources/DirContextURLStreamHandler.java

by Remy Maucherat :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Mon, 2009-11-02 at 18:46 +0000, markt@... wrote:
> Author: markt
> Date: Mon Nov  2 18:46:21 2009
> New Revision: 832039
>
> URL: http://svn.apache.org/viewvc?rev=832039&view=rev
> Log:
> StringBuffer -> StringBuilder for o.a.naming

So I did not test or anything, but is SBuilder faster than SBuffer ? Or
it uses less resources ?

Rémy



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@...
For additional commands, e-mail: dev-help@...


Re: svn commit: r832039 - in /tomcat/trunk/java/org/apache/naming: HandlerRef.java ResourceRef.java ServiceRef.java StringManager.java resources/DirContextURLStreamHandler.java

by markt-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Remy Maucherat wrote:

> On Mon, 2009-11-02 at 18:46 +0000, markt@... wrote:
>> Author: markt
>> Date: Mon Nov  2 18:46:21 2009
>> New Revision: 832039
>>
>> URL: http://svn.apache.org/viewvc?rev=832039&view=rev
>> Log:
>> StringBuffer -> StringBuilder for o.a.naming
>
> So I did not test or anything, but is SBuilder faster than SBuffer ? Or
> it uses less resources ?

According to the Javadoc, it should be faster in most cases as StringBuilder
isn't synchronized but StringBuffer is.

Mark


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@...
For additional commands, e-mail: dev-help@...


Re: svn commit: r832039 - in /tomcat/trunk/java/org/apache/naming: HandlerRef.java ResourceRef.java ServiceRef.java StringManager.java resources/DirContextURLStreamHandler.java

by Filip Hanik - Dev Lists :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 11/02/2009 02:30 PM, Remy Maucherat wrote:

> On Mon, 2009-11-02 at 18:46 +0000, markt@... wrote:
>    
>> Author: markt
>> Date: Mon Nov  2 18:46:21 2009
>> New Revision: 832039
>>
>> URL: http://svn.apache.org/viewvc?rev=832039&view=rev
>> Log:
>> StringBuffer ->  StringBuilder for o.a.naming
>>      
> So I did not test or anything, but is SBuilder faster than SBuffer ? Or
> it uses less resources ?
>    

in most uses cases you'd barely see a difference. As speed locking has
gotten much better. (my unqualified guess is that locking is optimistic)
The only time you'd see a difference is if there was an actual
contention on the resource, which with StringBuffers is rare too.

> Rémy
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@...
> For additional commands, e-mail: dev-help@...
>
>
>    


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@...
For additional commands, e-mail: dev-help@...


Re: svn commit: r832039 - in /tomcat/trunk/java/org/apache/naming: HandlerRef.java ResourceRef.java ServiceRef.java StringManager.java resources/DirContextURLStreamHandler.java

by markt-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Filip Hanik - Dev Lists wrote:

> On 11/02/2009 02:30 PM, Remy Maucherat wrote:
>> On Mon, 2009-11-02 at 18:46 +0000, markt@... wrote:
>>  
>>> Author: markt
>>> Date: Mon Nov  2 18:46:21 2009
>>> New Revision: 832039
>>>
>>> URL: http://svn.apache.org/viewvc?rev=832039&view=rev
>>> Log:
>>> StringBuffer ->  StringBuilder for o.a.naming
>>>      
>> So I did not test or anything, but is SBuilder faster than SBuffer ? Or
>> it uses less resources ?
>>    
>
> in most uses cases you'd barely see a difference. As speed locking has
> gotten much better. (my unqualified guess is that locking is optimistic)
> The only time you'd see a difference is if there was an actual
> contention on the resource, which with StringBuffers is rare too.

I'm leaning towards not porting this to 6.0.x since there is no clear
performance issue caused by StringBuffer in 6.0.x. That said, the Javadoc for
StringBuilder is enough to convince me that we should make the change in trunk
as part of the general clean-up/improvement of the code for Tomcat 7.

Mark


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@...
For additional commands, e-mail: dev-help@...


Re: svn commit: r832039 - in /tomcat/trunk/java/org/apache/naming: HandlerRef.java ResourceRef.java ServiceRef.java StringManager.java resources/DirContextURLStreamHandler.java

by Konstantin Kolinko :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

2009/11/3 Mark Thomas <markt@...>:

> Filip Hanik - Dev Lists wrote:
>> On 11/02/2009 02:30 PM, Remy Maucherat wrote:
>>> On Mon, 2009-11-02 at 18:46 +0000, markt@... wrote:
>>>
>>>> Author: markt
>>>> Date: Mon Nov  2 18:46:21 2009
>>>> New Revision: 832039
>>>>
>>>> URL: http://svn.apache.org/viewvc?rev=832039&view=rev
>>>> Log:
>>>> StringBuffer ->  StringBuilder for o.a.naming
>>>>
>>> So I did not test or anything, but is SBuilder faster than SBuffer ? Or
>>> it uses less resources ?
>>>
>>
>> in most uses cases you'd barely see a difference. As speed locking has
>> gotten much better. (my unqualified guess is that locking is optimistic)
>> The only time you'd see a difference is if there was an actual
>> contention on the resource, which with StringBuffers is rare too.
>
> I'm leaning towards not porting this to 6.0.x since there is no clear
> performance issue caused by StringBuffer in 6.0.x. That said, the Javadoc for
> StringBuilder is enough to convince me that we should make the change in trunk
> as part of the general clean-up/improvement of the code for Tomcat 7.
>
> Mark
>

In my opinion, this change in no way different from any other. Though
it is not urgent, as nobody depends on it.

If anyone can find some time to review and vote for any subset of
those 50+ patches, and there will be enough votes, I will be happy to
commit it.

One benefit would be better alignment of TC 7 and TC 6 code and thus
easier backport of patches. The 6.0 -> 5.5 backports will need the
StringBuilder -> StringBuffer conversion anyway, so those are
unaffected.


Regarding the StringBuilder:
They have a common base class, AbstractStringBuilder, that provides
the implementation for them.  What they add on top of it are
classcasts, and synchronization.

Best regards,
Konstantin Kolinko

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@...
For additional commands, e-mail: dev-help@...