In ``QoSPlugin._get_ports_with_policy``, if the network IDs list is
empty, the SQLAlchemy throws the following warning:
SELECT statement has a cartesian product between FROM element(s)
"subports_1", "ports", "portnumaaffinitypolicies_1",
"testportextensions_1", "portuplinkstatuspropagation_1",
"portdataplanestatuses_1", "standardattributes_2",
"portdeviceprofiles_1", "ml2_port_bindings_1",
"portsecuritybindings_1", "portdnses_1",
"securitygroupportbindings_1", "qos_network_policy_bindings_1",
"qos_port_policy_bindings_1", "trunks_1",
"standardattributes_1" and FROM element "networks". Apply
join condition(s) between each element to resolve.
This patch avoids this query by checking the network IDs list. If the
list is empty, the expected port list will be too. This is also a
small optimization because we are skipping the port query.
This patch is also applying the same logic to the second query in this
method.
Closes-Bug: #2018000
Change-Id: Ia5380bc78cc1d0136e11cc4692069279419e285e