You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Konrad Windszus (JIRA)" <ji...@apache.org> on 2014/12/21 19:15:13 UTC
[jira] [Created] (JCRVLT-81) FilterSet.equals is returning true for
filter sets with distinct roots
Konrad Windszus created JCRVLT-81:
-------------------------------------
Summary: FilterSet.equals is returning true for filter sets with distinct roots
Key: JCRVLT-81
URL: https://issues.apache.org/jira/browse/JCRVLT-81
Project: Jackrabbit FileVault
Issue Type: Bug
Affects Versions: 3.1.14
Reporter: Konrad Windszus
Currently FilterSet equals will return true if either the instances are the same or all entries are the same (https://github.com/apache/jackrabbit-filevault/blob/trunk/vault-core/src/main/java/org/apache/jackrabbit/vault/fs/api/FilterSet.java#L259).
This is not sufficient because there may be multiple distinct filter sets which do not have any entries but rather only the implicit whitelist entry but distinct roots. All those FilterSets are considered equal.
One example is
{code}
<?xml version="1.0" encoding="UTF-8"?>
<workspaceFilter version="1.0">
<!-- allow configurations to be detected in deeper levels -->
<filter root="/content/test1" />
<filter root="/content/test1" />
</workspaceFilter>
{code}
Also the hashCode is implemented very ineffeciently (alway returning 0) which will lead to degraded performance e.g. when using Maps.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)