[
https://issues.apache.org/jira/browse/DERBY-5947?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Knut Anders Hatlen updated DERBY-5947:
--------------------------------------
Attachment: values1-after-4a.txt
d5947-4a-authorization.diff
The 4a patch moves the authorization check for cursor result sets from
generated code to CursorActivation.
This change removed 414 bytes from the generated class for VALUES 1. (The
reduction was mainly class names and method names in the constant pool, not so
many instructions were removed.) The total reduction in size for a VALUES 1
statement is now 878 bytes (from 3408 bytes to 2530 bytes).
Attached is also the decompiled class for VALUES 1 after the 4a patch.
All the regression tests ran cleanly with the patch.
> Factor out common code from generated classes
> ---------------------------------------------
>
> Key: DERBY-5947
> URL: https://issues.apache.org/jira/browse/DERBY-5947
> Project: Derby
> Issue Type: Improvement
> Components: SQL
> Reporter: Knut Anders Hatlen
> Assignee: Knut Anders Hatlen
> Priority: Minor
> Attachments: d5947-1a-remove-common-methods.diff,
> d5947-2a-execute-method.diff, d5947-3a-init-rs.diff,
> d5947-4a-authorization.diff, natural-join-after-3a.txt,
> natural-join-decompiled.txt, values1-after-1a.txt, values1-after-2a.txt,
> values1-after-3a.txt, values1-after-4a.txt, values1-decompiled.txt
>
>
> There's some code that's added to all classes generated by Derby's query
> compiler. For example, there are three static fields that contain statistics
> used to check if the plan is stale, and there are getter and setter methods
> for each of the three fields. The fields and their accessor methods take up
> 468 bytes in every generated class.
> We should see if we can factor out some of this code so that there is a
> single shared copy in BaseActivation. Advantages would be: less complicated
> byte-code generation, less memory occupied by generated classes in the
> statement cache, smaller disk footprint for stored prepared statements.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira