Re: query has no destination for result data

From: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
To: Rob Sargent <robjsargent(at)gmail(dot)com>, Ron <ronljohnsonjr(at)gmail(dot)com>
Cc: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: query has no destination for result data
Date: 2019-03-06 15:27:14
Message-ID: e75c3c9b-20fa-0b4d-a9ed-3b398082787c@aklaver.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 3/6/19 7:12 AM, Rob Sargent wrote:
>
>
>> On Mar 6, 2019, at 6:32 AM, Ron <ronljohnsonjr(at)gmail(dot)com> wrote:
>>
>> On 3/6/19 1:45 AM, Rob Sargent wrote:
>> [snip]
>>> This construct had been working until recent changes but I cannot relate the message to any deformity in the current schema or code.
>>> Any pointers appreciated.
>>
>> What were the recent changes?
>>
>> --
>> Angular momentum makes the world go 'round.
>>
>
> diff optimalMonoPed.sql optimalMonoPed.sql.~20359ea9e67ddf009db89b94140f67988862f247~
> 13,14d12
> < imkr int;
> < jmkr int;
> 53c51
> < --
> ---
>> --
> 67,68d64
> < select imkr=min(ordinal), jmkr=max(ordinal) from mrkidx where ordinal between segp.firstmarker and segp.lastmarker;
> < raise notice 'seg % start=% i=% end=% j=%', segp.id, segp.firstmarker, imkr, segp.lastmarker, jmkr;
>
> In other words two variables dropped along with the select which set them for their only use in a NOTICE, plus white space on a comment line.
>
> So yes the problem must be in the caller.
>
> A not on line numbers: Using \ef on this function presents a slight variation of my code: it rearranges the “language plpgsql” from after the final END; (old style I guess) to before the AS. So line 65 is actually what I thought was line 64.

I believe language plpgsql is not considered part of the function body
so it is not included in the line count:

https://www.postgresql.org/docs/10/plpgsql-structure.html

When tracking a line number down I usually do:

\ef some_function line_number

which counts the line in the function body not the file. So for example:

Using set nu in Vi:

1 CREATE OR REPLACE FUNCTION public.ts_update()
2 RETURNS trigger
3 LANGUAGE plpgsql
4 AS $function$
5 BEGIN
6 NEW.ts_update := timeofday();
7 RETURN NEW;
8 END;
9 $function$

\ef ts_update 4

CREATE OR REPLACE FUNCTION public.ts_update()
RETURNS trigger
LANGUAGE plpgsql
AS $function$
BEGIN
NEW.ts_update := timeofday();
RETURN NEW; <--- This row is marked
END;
$function$

> Still not the real problem of course. (I’ll update my ways re: coding functions)
>
>
>

--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Pavel Stehule 2019-03-06 15:37:37 Re: query has no destination for result data
Previous Message Adrian Klaver 2019-03-06 15:15:52 Re: query has no destination for result data