Currently, the 'node' field is declared as a simple config field, so when only selecting this fields, the runtime gathering is no longer run and it's presumed that all nodes have a backup. So the output is not truthful (instead of just listing the nodes with at least one export, all are listed).
By simply making it a runtime field, filtering works properly and we get the same output as the masterd code. Signed-off-by: Iustin Pop <[email protected]> --- src/Ganeti/Query/Export.hs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Ganeti/Query/Export.hs b/src/Ganeti/Query/Export.hs index 0863573..d45b930 100644 --- a/src/Ganeti/Query/Export.hs +++ b/src/Ganeti/Query/Export.hs @@ -58,7 +58,7 @@ rpcExtractor node (Left err) = [(node, rpcErrToRs err)] exportFields :: FieldList Node Runtime exportFields = [ (FieldDefinition "node" "Node" QFTText "Node name", - FieldSimple (rsNormal . nodeName), QffHostname) + FieldRuntime (\_ n -> rsNormal $ nodeName n), QffHostname) , (FieldDefinition "export" "Export" QFTText "Export name", FieldRuntime (curry fst), QffNormal) ] -- 1.8.1.3
