[
https://issues.apache.org/jira/browse/ACCUMULO-664?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
John Vines updated ACCUMULO-664:
--------------------------------
Assignee: (was: John Vines)
Labels: newbie (was: )
> Mock does not properly emulate object reuse
> -------------------------------------------
>
> Key: ACCUMULO-664
> URL: https://issues.apache.org/jira/browse/ACCUMULO-664
> Project: Accumulo
> Issue Type: Improvement
> Components: test
> Affects Versions: 1.4.1, 1.3.6
> Reporter: John Vines
> Labels: newbie
> Fix For: 1.5.0, 1.4.2
>
>
> Currently our MockAccumulo uses a Key,Value Map to emulate the back end. And
> next() calls just get the Key and Value from the map, with no object reuse.
> This can cause users to create iterators which use an object that succeed in
> Mock but fail on the real system. We should have some sort of system to
> better emulate the appropriate behavior.
> I talked to Adam offline about this, and there were a few initial ideas,
> which basically involve reusing an object and reading in the Value from the
> Map. However, we think it would be a better idea to create a special Key and
> Value extension which Mock uses. This special class would have a flag that
> gets set by the internal Mock next() method to 'invalidate' the old Key and
> Value, so if there are any indications of reuse, they throw an exception with
> a description of their misuse.
> There still may be an issue with that implementation if users are messing
> with internal byte arrays, so we may need to make an additional step to
> either overwrite that data with an informative message and/or have some sort
> of output when people get the byte array to warn them.
> Additionally, Key use may not be an actual issue, since I think only
> RelativeKeys are reused under the hood. However, this may not be the case for
> using MapFiles. Keith can probably quickly answer this question.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira