Alexey Makhmutov created AS7-3435:
-------------------------------------
Summary: No cloning for parameters of primitive types should be performed if
'pass-by-value' option is disabled for LocalEJBReceiver
Key: AS7-3435
URL:
https://issues.jboss.org/browse/AS7-3435
Project: Application Server 7
Issue Type: Bug
Components: EJB
Affects Versions: 7.1.0.CR1b
Reporter: Alexey Makhmutov
Assignee: jaikiran pai
Priority: Minor
If 'pass-by-value' is disabled for the ejb client, then no cloning should be
performed for parameters of primitive types. Current version of code still tries to clone
them, as declared parameter class (primitive type) is not equal to runtime parameter value
used during the invocation ('boxed' class for primitive type), this results a lot
of cloning requests in case of remote methods with primitive types.
This problem was noticed while looking at results of profiling sampling for intensive
concurrent in-vm invocations of remote methods. Despite the disabled
'pass-by-value' option and correct class-pathes for all components, profiling
results still show a lot of call to cloners in case of primitive type parameters. The
performance impact is not significant, however it's still additional overhead which
can be avoided.
In general, I'm not sure if cloning for primitive types is required in other cases as
well, however it definitely shouldn't performed if 'pass-by-value' is
disabled.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see:
http://www.atlassian.com/software/jira