Description of problem: Currently when the SDK tries to read an empty list of elements, without a close tag, it fails to detect the end of the list correctly, and it includes the in the list the next elements. Version-Release number of selected component (if applicable): 4.1.0.alpha How reproducible: Always. Steps to Reproduce: 1. Make sure that at least one cluster has an empty list of required RNG sources. 2. Use the SDK to list the clusters: ---8<--- require 'ovirtsdk4' connection = OvirtSDK4::Connection.new({ :url => 'https://engine41.example.com/ovirt-engine/api', :username => 'admin@internal', :password => 'redhat123', :ca_file => 'ca.pem', }) clusters_service = connection.system_service.clusters_service clusters = clusters_service.list clusters.each do |cluster| puts "#{cluster.name}: #{cluster.required_rng_sources}" end connection.close ---8<--- Actual results: Default: ["random"] mycluster: [nil, "legacy", "false", "false", "false", "\n 4\n 1\n ", "true", nil, nil] Note that for the cluster that has an empty list of required RNG sources this prints an incorrect list, including values that appear after it, like the 'legacy' switch type. Expected results: This should print the list of required RNG sources for each cluster. Default: ["random"] mycluster: []
This bug report has Keywords: Regression or TestBlocker. Since no regressions or test blockers are allowed between releases, it is also being identified as a blocker for this release. Please resolve ASAP.