cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "paul cannon (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CASSANDRA-3101) Should check for errors when calling /bin/ln
Date Mon, 29 Aug 2011 18:40:37 GMT
Should check for errors when calling /bin/ln
--------------------------------------------

                 Key: CASSANDRA-3101
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3101
             Project: Cassandra
          Issue Type: Bug
          Components: Core
    Affects Versions: 0.8.4, 0.7.8
            Reporter: paul cannon
            Priority: Minor


It looks like cassandra.utils.CLibrary.createHardLinkWithExec() does not check for any errors
in the execution of the hard-link-making utility. This could be bad if, for example, the user
has put the snapshot directory on a different filesystem from the data directory. The hard
linking would fail and the sstable snapshots would not exist, but no error would be reported.

It does look like errors with the more direct JNA link() call are handled correctly- an exception
is thrown. The WithExec version should probably do the same thing.

Definitely it would be enough to check the process exit value from /bin/ln for nonzero in
the *nix case, but I don't know whether 'fsutil hardlink create' or 'cmd /c mklink /H' return
nonzero on failure.

For bonus points, use any output from the Process's error stream in the text of the exception,
to aid in debugging problems.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message