You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@archiva.apache.org by Joakim Erdfelt <jo...@erdfelt.com> on 2007/08/16 04:20:19 UTC

Repository case sensitivity.

As I was working on the metadata stuff for MRM-463 I discovered an 
interesting thing in the repository, wanted to know what you all think 
about this.

Case sensitivity:

See http://repo1.maven.org/maven2/logkit/

How should we handle this?
Think about the proxy request for it.

logkit:logkit:1.2::jar
logkit:LogKit:1.2::jar   (notice capitalization)

Those two cannot co-exist on a repository served from windows ATM.
Nor can those two artifacts co-exist in the local repository.

Archiva running on UNIX sees them as different.

Do we report this? (I say yes)
If so, how?

Need to create a jira for this. (any takers)

-- 
- Joakim Erdfelt
  joakim@erdfelt.com
  Open Source Software (OSS) Developer


Re: Repository case sensitivity.

Posted by Maria Odea Ching <oc...@exist.com>.
Joakim Erdfelt wrote:
> As I was working on the metadata stuff for MRM-463 I discovered an 
> interesting thing in the repository, wanted to know what you all think 
> about this.
>
> Case sensitivity:
>
> See http://repo1.maven.org/maven2/logkit/
>
> How should we handle this?
> Think about the proxy request for it.
>
> logkit:logkit:1.2::jar
> logkit:LogKit:1.2::jar   (notice capitalization)
>
> Those two cannot co-exist on a repository served from windows ATM.
> Nor can those two artifacts co-exist in the local repository.
>
> Archiva running on UNIX sees them as different.
>

What if we put a check first before copying the downloaded artifact to 
the target? Get all the directories in the local repository first then 
compare it with the target path (ignoring the case). If more than 1 
match is found, then we report this, otherwise, just proceed with the 
copy? Maybe we could use the CollectionUtils.countMatches(..) to do 
this, wdyt?

> Do we report this? (I say yes)

+1! :)

> If so, how?
>
> Need to create a jira for this. (any takers)
>

What about having an inconsistent artifact proxy problem which will be 
added to the db when a case like the one above is detected during proxying?

For the view aspect (UI), on the other hand, I think it would be more 
appropriate to have this as a separate report from the Repository 
Problem report currently implemented, maybe a Proxying Error Report instead?


Thanks,
Deng