Is that possible a function to behave differently inside and outside another main function code?

View: New views
1 Messages — Rating Filter:   Alert me  

Is that possible a function to behave differently inside and outside another main function code?

by rodrigosperb :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

HHello,

I have a bit of a problem that is sort of driving me crazy. I need to perform an "addition of two (mathematical) functions". I represent them as linestrings in my solution, and it is part of another bigger function. The code is as follows:

...header...
SELECT st_LineFromMultiPoint(st_Collect(st_MakePoint(xy.t,xy.at)))
FROM (SELECT q.t, dr_delay_value($1,q.t) + dr_delay_value($3,dr_delay_value($1,q.t)) AS at
      FROM (SELECT st_X(st_PointN($1,n)) AS t
            FROM generate_series(1,st_NumPoints($1)) AS h(n)
            UNION
            SELECT st_X(st_PointN($2,n)) AS t
            FROM generate_series(1,st_NumPoints($2)) AS h(n)
            UNION
            SELECT st_Xmax($1) AS t
            ) AS q ORDER BY q.t) AS xy
...bottom...
dr_delay_value() is simply a look-up function that takes the Y value for a certain X.

The thing is that eventually this fuction is failing on returning more specifically a 2-points linestring (that sould) and returns only a single point one. Now, I have prepared a "wrapper" PL/Pgsql function to keep track of what is passed to that function (perhaps that was the reason for the error. With that I'm pretty much sure that the arguments passed are fine, and still get the same error... Strangely, with my wrapper function keeping track of the arguments passed to the function I was able to try out to run the same request (that inside of the bigger function fails) separately, and guess what? is simply works!!

I hope anyone may have a clue of what is going on. That's a very strange behavior, I would say.

Regards,

Rodrigo Sperb

_______________________________________________
postgis-devel mailing list
postgis-devel@...
http://postgis.refractions.net/mailman/listinfo/postgis-devel