Skip to content

Segmentation fault with LEFT JOIN on a partitioned table with pg_pathman 1.4 #193

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Closed
mdurbha72 opened this issue Apr 11, 2019 · 2 comments
Closed

Comments

@mdurbha72
Copy link

Problem description

I have a Postgres 9.6.8 with pg_pathman 1.4 working great. I patched Postgres to 9.6.12 and the OS from 7.4 to 7.6 via a "yum update" and now my queries with LEFT JOIN to a pg_pathman-managed partitioned table causes Segmentation fault and crashes Postgres instance. When pg_pathman is disabled, the query completes fine. How can I fix this? I ran make install USE_PGXS=1" and restarted Postgres, but that did not fix this error. Can you please help?

emr_prod=# SELECT 1 - count(event_date) AS result FROM (SELECT now()::date AS run_date) p LEFT JOIN historic.audit_event ON event_code = 1;
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.

  ## when pg_pathman is disabled, the query runs fine
emr_prod=# SET pg_pathman.enable = f;
NOTICE:  RuntimeAppend, RuntimeMergeAppend and PartitionFilter nodes and some other options have been disabled
SET
emr_prod=# SELECT 1 - count(event_date) AS result FROM (SELECT now()::date AS run_date) p LEFT JOIN historic.audit_event ON event_code = 1;
 result
--------
      1
(1 row)

  ### This is the output in the postgres log - 
2019-04-10 21:21:47 PDT [5162]: [64-1] [] [] LOG:  00000: server process (PID 6459) was terminated by signal 11: Segmentation fault
2019-04-10 21:21:47 PDT [5162]: [65-1] [] [] DETAIL:  Failed process was running: SELECT 1 - count(event_date) AS result FROM (SELECT now()::date AS run_date) p LEFT JOIN historic.audit_event ON event_code = 1;
2019-04-10 21:21:47 PDT [5162]: [66-1] [] [] LOCATION:  LogChildExit, postmaster.c:3574
2019-04-10 21:21:47 PDT [5162]: [67-1] [] [] LOG:  00000: terminating any other active server processes
2019-04-10 21:21:47 PDT [5162]: [68-1] [] [] LOCATION:  HandleChildCrash, postmaster.c:3294
2019-04-10 21:21:47 PDT [5162]: [69-1] [] [] LOG:  00000: all server processes terminated; reinitializing
2019-04-10 21:21:47 PDT [5162]: [70-1] [] [] LOCATION:  PostmasterStateMachine, postmaster.c:3818
2019-04-10 21:21:47 PDT [7125]: [1-1] [] [] LOG:  00000: database system was interrupted while in recovery at log time 2019-04-10 21:02:56 PDT
2019-04-10 21:21:47 PDT [7125]: [2-1] [] [] HINT:  If this has occurred more than once some data might be corrupted and you might need to choose an earlier recovery target.
2019-04-10 21:21:47 PDT [7125]: [3-1] [] [] LOCATION:  StartupXLOG, xlog.c:6076

Environment

postgres@xxx:/var/lib/pgsql> cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

emr_prod=# select * from pg_extension where extname = 'pg_pathman'; extname | extowner | extnamespace | extrelocatable | extversion | extconfig | extcondition
------------+----------+--------------+----------------+------------+-------------------+--------------
pg_pathman | 10 | 2200 | f | 1.4 | {8738685,8738694} | {"",""}
(1 row)

emr_prod=# select version();
version

PostgreSQL 9.6.12 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36), 64-bit
(1 row)

emr_prod=# SELECT get_pathman_lib_version();
get_pathman_lib_version

10409
(1 row)

@mdurbha72
Copy link
Author

Any update on this issue? thanks

@mdurbha72
Copy link
Author

This was resolved after I updated the plugin to 1.5.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants