docs: public User selectUser(final long userId) throws SQLException {
        Connection conn = null;
        PreparedStatement stmt = null;
        ResultSet rs = null;
        Timer.Context ctx = metrics.selectUserTimer.time();
        try {
           conn = connectionSupplier.getConnection();
           stmt = conn.prepareStatement(selectUserByIdSQL);
           stmt.setLong(1, userId);
           rs = stmt.executeQuery();
           return rs.next() ? userFromResultSet(rs) : null;
        } finally {
           ctx.stop();
           SQLUtil.closeQuietly(conn, stmt, rs);
        }
     }