Rumpi Gravenstein <rgravens@gmail.com> writes:
> Is this a PostgreSQL bug?
Maybe, but you haven't provided enough information to let anyone else
reproduce the behavior.
Personally I'm suspicious that because your lag() calls are over
partition by p.logical_partition_key, p.txt order by indx
but then you filter by
where logical_partition_key='TEST_DATA' and usage_text='F(T61)(EXPORT)';
that the lag() functions are seeing some rows that don't show up in
the final output. (This'd require that some output rows from "parse"
share txt values but not usage_text values, but that certainly looks
like it's possible.) So IMO you have not actually demonstrated that
there is any bug.
regards, tom lane