On 03/28/2012 05:00 AM, Karel Zak wrote: > On Tue, Mar 27, 2012 at 11:43:45AM -0700, Ted Ts'o wrote: >> On Tue, Mar 27, 2012 at 01:52:51PM -0400, Michael Conrad wrote: >>> I see how that could be useful if and only if you use exactly one >>> "-s", but if you requested more than one "-s" they still come out in >>> non-stable order. It's like running a SQL query and having all the >>> columns shifted because the first one was a NULL. >> Actually, it's more like running an SQL query without a SORTED BY and >> assuming the order of the rows was stable. Only if the data weren't in any normal form. I say it's like columns getting shifted because if you ask for 2 values you expect the field offset to imply the type of the data. If one field is NULL, the rows shift upward, resulting in a value interpreted as the wrong type. This is why I'm saying the "-o values" is only usable if you use exactly one "-s", because any other scenario means every value returned has an indeterminate type, which is garbage data. IMO a tool should never output garbage. It should prevent or warn about illegitimate usage. Since the tool has been out there and in use for quite a while, I would suggest a warning. (patch attached) >>> At the very least, I would appreciate it if the man page mentioned >>> that "-o value" should only ever be used with exactly one "-s". >> What I would suggest is that blkid explicitly state that the order of >> fields or file systems (if more than one file system is selected) is >> not defined, since that's something which is true in general, and not >> just for "-o value". >> >> It might also be useful to have an EXAMPLES section which gives some >> sample ways that blkid can be used. > Good idea. I'll update the man page. > > Karel Thanks!