Commit 26772f9a authored by Sonia Zorba's avatar Sonia Zorba
Browse files

NodeDAO: used id_from_vos_path function instead of node_vos_path view

parent 57279cef
Loading
Loading
Loading
Loading
Loading
+4 −22
Original line number Diff line number Diff line
@@ -225,26 +225,9 @@ public class NodeDAO {
    }

    public Optional<Long> getNodeId(String nodeVosPath) {
        String sql = "SELECT node_id FROM node_vos_path WHERE vos_path = ?";

        List<Long> nodeIdList = jdbcTemplate.query(conn -> {
            PreparedStatement ps = conn.prepareStatement(sql);
            ps.setString(1, nodeVosPath);
            return ps;
        }, (row, index) -> {
            return row.getLong("node_id");
        });

        switch (nodeIdList.size()) {
            case 0:
                return Optional.empty();

            case 1:
                return Optional.of(nodeIdList.get(0));

            default:
                throw new InternalFaultException("More than 1 node id at path: " + nodeVosPath);
        }
        String sql = "SELECT id_from_vos_path(?) AS node_id";
        Long nodeId = jdbcTemplate.queryForObject(sql, Long.class, nodeVosPath);
        return Optional.ofNullable(nodeId);
    }

    public Optional<ShortNodeDescriptor> getShortNodeDescriptor(String nodeVosPath,
@@ -258,9 +241,8 @@ public class NodeDAO {
                + "n.type = 'container' AS is_container,\n"
                + "n.job_id IS NOT NULL AS busy_state\n"
                + "FROM node n \n"
                + "JOIN node_vos_path p ON n.node_id = p.node_id \n"
                + "LEFT JOIN location loc ON loc.location_id = n.location_id\n"
                + "WHERE vos_path = ?\n";
                + "WHERE n.node_id = id_from_vos_path(?)\n";

        Optional<ShortNodeDescriptor> sndOpt = jdbcTemplate.query(conn -> {
            PreparedStatement ps = conn.prepareStatement(sql);