directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Carsten Kaiser (JIRA)" <j...@apache.org>
Subject [jira] Created: (DIRSERVER-1560) ldif files not sorted in alphabetical order on Linux
Date Tue, 28 Sep 2010 11:59:34 GMT
ldif files not sorted in alphabetical order on Linux
----------------------------------------------------

                 Key: DIRSERVER-1560
                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1560
             Project: Directory ApacheDS
          Issue Type: Bug
    Affects Versions: 1.5.7
         Environment: CentOS - Linux
            Reporter: Carsten Kaiser


	Von: 	Kiran Ayyagari <kayyagari@apache.org>
	Betreff: 	Re: Problem with sorting of ldif files on Linux
	Datum: 	28. September 2010 12:51:36 MESZ
	An: 	users@directory.apache.org
	Kopie: 	Sven Baum <sven.baum@valtech.de>
	Antwort an: 	users@directory.apache.org

Hi there,

we are using ApacheDS respectively the Maven ApacheDS Plugin to run our integration tests
against a clean LDAP server instance and therefore populate
it with the according schema information and setup data on test startup. We have different
ldif files for schema and setup data especially named in alphabetical order
to ensure, that the schema information is loaded before the setup data. Although this works
fine for e.g. on MacOSX it does not work on Linux due to the following
Code Snippet from class org.apache.directory.server.configuration.ApacheDS

else
{
    // get all the ldif files within the directory (should be sorted alphabetically)
   File[] ldifFiles = ldifDirectory.listFiles( new FileFilter()
   { 
       public boolean accept( File pathname )
       {
             boolean isLdif = pathname.getName().toLowerCase().endsWith( ".ldif" );
             return pathname.isFile() && pathname.canRead() && isLdif;
       }
    } );

According to Javadoc of class java.io.File

Returns an array of abstract pathnames denoting the files in the directory denoted by this
abstract pathname.
If this abstract pathname does not denote a directory, then this method returns null. Otherwise
an array of File objects is returned, one for each file or directory in the directory. Pathnames
denoting the directory itself and the directory's parent directory are not included in the
result. Each resulting abstract pathname is constructed from this abstract pathname using
the File(File, String) constructor. Therefore if this pathname is absolute then each resulting
pathname is absolute; if this pathname is relative then each resulting pathname will be relative
to the same directory.

-> There is no guarantee that the name strings in the resulting array will appear in any
specific order; they are not, in particular, guaranteed to appear in alphabetical order.

the assumption stated in the code snippet above is not valid and depends on the platform resp.
Java implementation.

In order to be platform independent the retrieved array of ldif files should be sorted in
alphabetical order explicitly after retrieval.
so you want them in a sorted order right, can you create a JIRA for this, will fix it

Since I'm not a committer could someone please provide a patch for this problem?

When will the next version of the maven ApacheDS plugin be available depending on the most
current ApacheDS version (hopefully including a fix for this problem)? Currently it refers
to 1.5.5...
this is not a official plugin from Apache Directory Project, so can't say when it gets updated


Kind regards,
CAK 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message