Christopher Tubbs created ACCUMULO-3938:
-------------------------------------------

             Summary: Incorrect use of Class.getCanonicalName()
                 Key: ACCUMULO-3938
                 URL: https://issues.apache.org/jira/browse/ACCUMULO-3938
             Project: Accumulo
          Issue Type: Bug
          Components: mapreduce, test
            Reporter: Christopher Tubbs
            Assignee: Christopher Tubbs
             Fix For: 1.6.4, 1.7.1, 1.8.0


It looks like there's some places where we're incorrectly using 
getCanonicalName instead of getName for serialization (when we expect to be 
able to later call Class.forName() to load the class dynamically).

Most of these occur in tests, and don't matter, because there's no difference 
between the name and canonical name. However, there is a big issue in 
RangeInputSplit, which serializes the AuthenticationToken name... this could be 
a serious bug if any other AuthenticationToken types are created and used by 
people implementing their own security modules.

General rule:
* use getName() if you expect to later call forName()
* use getCanonicalName() if you're generating code or printing log messages



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to