Re: query has no destination for result data - Mailing list pgsql-general

From Adrian Klaver
Subject Re: query has no destination for result data
Date
Msg-id e75c3c9b-20fa-0b4d-a9ed-3b398082787c@aklaver.com
Whole thread Raw
In response to Re: query has no destination for result data  (Rob Sargent <robjsargent@gmail.com>)
Responses Re: query has no destination for result data  (Pavel Stehule <pavel.stehule@gmail.com>)
List pgsql-general
On 3/6/19 7:12 AM, Rob Sargent wrote:
> 
> 
>> On Mar 6, 2019, at 6:32 AM, Ron <ronljohnsonjr@gmail.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
currentschema 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
spaceon 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.klaver@aklaver.com


pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: query has no destination for result data
Next
From: Pavel Stehule
Date:
Subject: Re: query has no destination for result data