pgspider / sqlite_fdw

SQLite Foreign Data Wrapper for PostgreSQL
Other
219 stars 37 forks source link

Column ctid on foreign table #14

Closed thongpvn closed 5 years ago

thongpvn commented 5 years ago

I can SELECT ctid from a foreign table.


EXPLAIN (VERBOSE, COSTS OFF)
SELECT ctid, * FROM ft1 t1 LIMIT 1;
                                          QUERY PLAN                                          
----------------------------------------------------------------------------------------------
 Limit
   Output: ctid, c1, c2, c3, c4, c5, c6, c7, c8
   ->  Foreign Scan on public.ft1 t1
         Output: ctid, c1, c2, c3, c4, c5, c6, c7, c8
         SQLite query: SELECT "C 1", "c2", "c3", "c4", "c5", "c6", "c7", "c8" FROM main."T 1"
(5 rows)

SELECT ctid, * FROM ft1 t1 LIMIT 1;
      ctid      | c1 | c2 |  c3   |              c4              |            c5            | c6 |     c7     | c8  
----------------+----+----+-------+------------------------------+--------------------------+----+------------+-----
 (4294967295,0) |  1 |  1 | 00001 | Fri Jan 02 00:00:00 1970 PST | Fri Jan 02 00:00:00 1970 | 1  | 1          | foo
(1 row)

But I can not SELECT with ctid filter.


EXPLAIN (VERBOSE, COSTS OFF)
SELECT * FROM ft1 t1 WHERE t1.ctid = '(4294967295,0)';
                                                         QUERY PLAN                                                         
----------------------------------------------------------------------------------------------------------------------------
 Foreign Scan on public.ft1 t1
   Output: c1, c2, c3, c4, c5, c6, c7, c8
   SQLite query: SELECT "C 1", "c2", "c3", "c4", "c5", "c6", "c7", "c8" FROM main."T 1" WHERE (("ctid" = '(4294967295,0)'))
(3 rows)

SELECT * FROM ft1 t1 WHERE (t1.ctid = '(4294967295,0)');
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 
----+----+----+----+----+----+----+----
(0 rows)

Could you help me to resolve this issue?

mochizk commented 5 years ago

Thanks for the report. I fixed the issue. Please confirm.