…qfstest.sh, this will make RS test work again. Rename output directory of the first (non RS) copy test to keep only test logs around.
…r to reduce cpu utilization by avoiding c++ / java marshaling of directory listings. Add recursive directory removal test to KfsTest.java.
…tCompletion(), by ensuring that the chunk reader still exists after completion invocation in TryToCloseIdle().
…tCompletion(), by ensuring that the chunk writer still exists after completion invocation in TryToCloseIdle().
…cation cache by keeping pointer to permissions stored in a file attribute, and explicitly setting allocation status -EPERM in AllocateChunkForAppend() instead of returning -EPERM.
…eck optimization with append allocations. One problem with is that the -EPERM returned by AllocateChunkForAppend() can potentially clash with -1 returned in other cases. The other problem is that the cached permissions in the record append cache can become stale / out of date. On the other hand this optimization has practically no benefit as it only affects the "permissions denied" case, and has no effect on the successful allocations.
…cas in the case when the chunk allocation successfully completes after the file has been already deleted.
Builds a bundled mstress jar and tar file, excluded from the ALL target of the main build, using ant
…n the case if no chunks past the specified offset / position exist. This is needed to correctly support sort master use of the range truncate with append files.
…o_vector, max_chunks) in the case when leaf node search returns next file, i.e. no chunks exists after the specified offset.
…sulted in the status code sign reversal. It looks like that this mainly affected chunk allocation failure detection as the relevant failure detection condition is "less than zero", where in most (all?) of other places affected, the failure conditions are "not equal zero". The effect of the allocation failure mis-detection isn't detrimental, as the undetected chunk allocation manifests itself later on, as write id allocation failure. This bug reduces the failure tolerance in the cases where all chunk servers involved in allocation fail to allocate the chunk, as this would result in no replicas available for "re-allocation" leading to potential write failure if the file was created with no recovery. The bug also reduces failure tolerance in other cases as the initial allocation would result in allocation of less replicas than requested. Though probably most common case of the relevant chunk allocation failures would be "out of space", as the request timeout logic isn't affected by this bug, therefore the practical effect of this bug seems low, or, at best, moderate right now.