Details
-
Improvement
-
Status: Resolved
-
Medium
-
Resolution: Done
-
None
-
None
Description
LazyDataObject method dispatch is a bit sub-optimal, as it does not take advantage:
- Java 8's Method.getArgumentCount()
- Ability to switch on strings coupled with method names being interned
- The fact that getters have zero arguments and hence are uniquely identified by their name
Address these issues, hence further improving LazyDataObject hot path.
Attachments
Issue Links
- relates to
-
MDSAL-399 Use MethodHandles in LazyDataObject to acquire foreign data
-
- Resolved
-
| # | Subject | Branch | Project | Status | CR | V |
|---|---|---|---|---|---|---|
| 77873,3 | Use Method.getParameterCount() | master | mdsal | Status: MERGED | +2 | +1 |
| 77874,3 | Switch on parameterCount | master | mdsal | Status: MERGED | +2 | +1 |
| 77875,4 | Switch on method names | master | mdsal | Status: MERGED | +2 | +1 |
| 77876,3 | Index cached data by method name | master | mdsal | Status: MERGED | +2 | +1 |
| 77877,2 | Use Method.getParameterCount() | master | controller | Status: MERGED | +2 | +1 |
| 77878,3 | Use Method.getParameterCount() | stable/fluorine | controller | Status: MERGED | +2 | +1 |
| 77879,1 | Use Method.getParameterCount() | stable/oxygen | controller | Status: MERGED | +2 | +1 |
| 77881,2 | Use Method.getParameterCount() | stable/fluorine | mdsal | Status: MERGED | +2 | +1 |
| 77882,2 | Switch on parameterCount | stable/fluorine | mdsal | Status: MERGED | +2 | +1 |
| 77883,3 | Switch on method names | stable/fluorine | mdsal | Status: MERGED | +2 | +1 |
| 77884,3 | Index cached data by method name | stable/fluorine | mdsal | Status: MERGED | +2 | +1 |
| 77886,1 | Use Method.getParameterCount() | stable/oxygen | mdsal | Status: MERGED | +2 | +1 |
| 77887,1 | Switch on parameterCount | stable/oxygen | mdsal | Status: MERGED | +2 | +1 |
| 77888,2 | Switch on method names | stable/oxygen | mdsal | Status: MERGED | +2 | +1 |
| 77889,2 | Index cached data by method name | stable/oxygen | mdsal | Status: MERGED | +2 | +1 |
| 77890,9 | Index nonnull/getter methods by String | master | mdsal | Status: MERGED | +2 | +1 |
| 77911,2 | Index getter methods by String | master | mdsal | Status: ABANDONED | 0 | 0 |
| 78042,5 | Index getter methods by String | stable/fluorine | mdsal | Status: MERGED | +2 | +1 |
| 78043,3 | Index getter methods by String | stable/oxygen | mdsal | Status: MERGED | +2 | +1 |