[ http://issues.apache.org/jira/browse/DERBY-212?page=all ]
Knut Anders Hatlen updated DERBY-212:
-------------------------------------
Attachment: DERBY-212-parsePKGNAMCSN-2.diff
I have uploaded a new patch (DERBY-212-parsePKGNAMCSN-2.diff) where I
have tried to address Bryan's review comments.
% svn stat
M java/drda/org/apache/derby/impl/drda/DDMWriter.java
A java/drda/org/apache/derby/impl/drda/DRDAString.java
A java/drda/org/apache/derby/impl/drda/Pkgnamcsn.java
M java/drda/org/apache/derby/impl/drda/DRDAResultSet.java
M java/drda/org/apache/derby/impl/drda/DRDAStatement.java
A java/drda/org/apache/derby/impl/drda/ConsistencyToken.java
M java/drda/org/apache/derby/impl/drda/Database.java
M java/drda/org/apache/derby/impl/drda/DRDAConnThread.java
M java/drda/org/apache/derby/impl/drda/DDMReader.java
Changes from the previous patch:
1) The autoTrim variable in DRDAString was removed. Instead,
DDMReader.readString() has an extra argument, unpad, which
specifies whether trailing padding characters should be removed.
2) DRDAString was simplified:
- Support for converting between different CcsidManagers (and
caching of them) was removed.
- A new byte array is generated each time the length of a string
changes, removing the need for an internal length field.
- setBytes() (and DDMReader.readString()) no longer returns a
boolean value to indicate whether the string value has
changed. Instead, DRDAString has a new method, wasModified(),
which returns true if the last call to setBytes() actually
modified the string.
3) Variable names in DRDAConnThread, Pkgnamcsn and DRDAStatement
were made more consistent (pkgsn instead of secnumber and
sectionNumber).
4) Pkgnamcsn.getPkgcnstknStr() was renamed to getPkgcnstkn() and now
returns an object of type ConsistencyToken instead of a
string. ConsistencyToken is a new class in this patch.
5) StmtKey is not an inner class in Database. It was moved to
Pkgnamcsn and renamed to StatementKey. This change made the
implementation of the class simpler, and it removed the need for
caching the previous statement key in the Database class.
I have run derbyall successfully. Comments are welcome. Thanks!
> Optimize some specific methods in Network Server to improve performance
> -----------------------------------------------------------------------
>
> Key: DERBY-212
> URL: http://issues.apache.org/jira/browse/DERBY-212
> Project: Derby
> Type: Improvement
> Components: Network Server, Performance
> Versions: 10.1.1.0
> Reporter: Kathey Marsden
> Assignee: Knut Anders Hatlen
> Priority: Minor
> Attachments: DERBY-212-parsePKGNAMCSN-2.diff, throughput-normalized.png,
> throughput.png
>
> In reviewing the Network Server Code and profiling there were
> several areas that showed potential for providing performance
> improvement.
> Functions that need optimizing to prevent unneeded object
> creation and excessive decoding
> parsePKGNAMCSN()
> parseSQLDTA_work()
> buildDB2CursorName()
> In DDMWriter and DDMReader, use System Routines in
> java.util.Arrays and System.arrayCopy instead of
> writing code to do functions like copy arrays and
> pad strings.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira