On Thu, Oct 17, 2019 at 2:11 PM Heikki Linnakangas <hlinnaka@iki.fi> wrote:
>
> On 15/10/2019 13:49, Ashutosh Sharma wrote:
> > Hi,
> >
> > I got chance to spend some time looking into the recent changes done
> > in the zedstore code, basically the functions for packing datums into
> > the attribute streams and handling attribute leaf pages. I didn't find
> > any issues but there are some minor comments that I found when
> > reviewing. I have worked on those and attached is the patch with the
> > changes. See if the changes looks meaningful to you.
>
> Thanks for looking! Applied to the development repository
Thank you. Here is one more observation:
When a zedstore table is queried using *invalid* ctid, the server
crashes due to assertion failure. See below,
postgres=# select * from t1 where ctid = '(0, 0)';
server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
The connection to the server was lost. Attempting reset: Failed.
I believe above should have either returned 0 rows or failed with some
user friendly error.
Further, when the same table is queried using some non-existing ctid,
the query returns 0 rows. See below,
postgres=# select count(*) from t1;
count
-------
2
(1 row)
postgres=# select * from t1 where ctid = '(0, 2)';
a | b
---+------
2 | str2
(1 row)
postgres=# select * from t1 where ctid = '(0, 3)';
a | b
---+---
(0 rows)
postgres=# select * from t1 where ctid = '(0, 4)';
a | b
---+---
(0 rows)
--
With Regards,
Ashutosh Sharma
EnterpriseDB:http://www.enterprisedb.com