Skip to content

virtuoso-t crash: SEGV on virtuoso-opensource/libsrc/Wi/sqljp.c #1385

Description

@CR7-source

Environment:

Ubuntu 22.04, virtuoso v7.2.17 0a2b062 ~ latest version 06e00b6

POC

CREATE TABLE v0 ( v1 LONG NVARCHAR , v2 CHAR ) ;
 CREATE VIEW v5 AS SELECT * , DENSE_RANK ( v1 ) AS v3 , ( SELECT STDDEV_POP ( v2 ) FROM v0 tt1 JOIN v0 tt2 ON v0 . v1 = v0 . v2 , v0 WHERE v2 = v2 ) AS v4 FROM v0 a FULL OUTER JOIN v0 tt USING ( v2 , v1 ) NATURAL JOIN v0 WHERE v1 = 'x' ;

Error output

==961609==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000002 (pc 0x55fc941d5545 bp 0x7f8b7713fce0 sp 0x7f8b7713fc50 T7)
==961609==The signal is caused by a READ memory access.
==961609==Hint: address points to the zero page.
    #0 0x55fc941d5545 in jp_add /home/virtuoso-opensource/libsrc/Wi/sqljp.c:528
    #1 0x55fc941d585c in dfe_jp_fill /home/virtuoso-opensource/libsrc/Wi/sqljp.c:581
    #2 0x55fc941d5d10 in dfe_join_score_jp /home/virtuoso-opensource/libsrc/Wi/sqljp.c:676
    #3 0x55fc9418a9e3 in sqlo_layout_sort_tables /home/virtuoso-opensource/libsrc/Wi/sqldf.c:6750
    #4 0x55fc9418babb in sqlo_layout_1 /home/virtuoso-opensource/libsrc/Wi/sqldf.c:7061
    #5 0x55fc9418cd08 in sqlo_layout_plan /home/virtuoso-opensource/libsrc/Wi/sqldf.c:7301
    #6 0x55fc9418d16e in sqlo_layout /home/virtuoso-opensource/libsrc/Wi/sqldf.c:7366
    #7 0x55fc9418ec66 in sqlo_top_2 /home/virtuoso-opensource/libsrc/Wi/sqldf.c:7811
    #8 0x55fc94192dc5 in sqlo_top_1 /home/virtuoso-opensource/libsrc/Wi/sqldf.c:8218
    #9 0x55fc94193a15 in sqlo_top_select /home/virtuoso-opensource/libsrc/Wi/sqldf.c:8366
    #10 0x55fc9414bacb in sql_stmt_comp /home/virtuoso-opensource/libsrc/Wi/sqlcomp2.c:960
    #11 0x55fc9414fa77 in sqlc_subquery_1 /home/virtuoso-opensource/libsrc/Wi/sqlcomp2.c:2271
    #12 0x55fc9414fe59 in sqlc_subquery /home/virtuoso-opensource/libsrc/Wi/sqlcomp2.c:2328
    #13 0x55fc94237234 in sqlc_sch_list /home/virtuoso-opensource/libsrc/Wi/sqlstmts.c:1892
    #14 0x55fc9414bd13 in sql_stmt_comp /home/virtuoso-opensource/libsrc/Wi/sqlcomp2.c:1014
    #15 0x55fc9414dcc7 in sql_compile_1 /home/virtuoso-opensource/libsrc/Wi/sqlcomp2.c:1722
    #16 0x55fc9414eaf4 in sql_compile /home/virtuoso-opensource/libsrc/Wi/sqlcomp2.c:1904
    #17 0x55fc9400ab5e in eql_compile_2 /home/virtuoso-opensource/libsrc/Wi/eqlcomp.c:2869
    #18 0x55fc9422497d in stmt_set_query /home/virtuoso-opensource/libsrc/Wi/sqlsrv.c:1404
    #19 0x55fc942262e7 in sf_sql_execute /home/virtuoso-opensource/libsrc/Wi/sqlsrv.c:1882
    #20 0x55fc942271ac in sf_sql_execute_w /home/virtuoso-opensource/libsrc/Wi/sqlsrv.c:2051
    #21 0x55fc9422de72 in sf_sql_execute_wrapper /home/virtuoso-opensource/libsrc/Wi/sqlsrv.c:3997
    #22 0x55fc946d5563 in future_wrapper /home/virtuoso-opensource/libsrc/Dk/Dkernel.c:1174
    #23 0x55fc946e25b1 in _thread_boot /home/virtuoso-opensource/libsrc/Thread/sched_pthread.c:296
    #24 0x7f8b872c2ac2  (/lib/x86_64-linux-gnu/libc.so.6+0x94ac2)
    #25 0x7f8b87353a73 in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x125a73)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV /home/virtuoso-opensource/libsrc/Wi/sqljp.c:528 in jp_add
Thread T7 created by T6 here:
    #0 0x7f8b87aab685 in __interceptor_pthread_create ../../../../src/libsanitizer/asan/asan_interceptors.cpp:216
    #1 0x55fc946e2875 in oplthread_create /home/virtuoso-opensource/libsrc/Thread/sched_pthread.c:425
    #2 0x55fc946d3cb2 in get_free_thread /home/virtuoso-opensource/libsrc/Dk/Dkernel.c:402
    #3 0x55fc946d66bb in schedule_request /home/virtuoso-opensource/libsrc/Dk/Dkernel.c:1654
    #4 0x55fc946d7b94 in read_service_request /home/virtuoso-opensource/libsrc/Dk/Dkernel.c:2439
    #5 0x55fc946d3e4a in call_default_read /home/virtuoso-opensource/libsrc/Dk/Dkernel.c:498
    #6 0x55fc946d4604 in check_inputs_low /home/virtuoso-opensource/libsrc/Dk/Dkernel.c:681
    #7 0x55fc946d8730 in server_loop /home/virtuoso-opensource/libsrc/Dk/Dkernel.c:2812
    #8 0x55fc946e25b1 in _thread_boot /home/virtuoso-opensource/libsrc/Thread/sched_pthread.c:296
    #9 0x7f8b872c2ac2  (/lib/x86_64-linux-gnu/libc.so.6+0x94ac2)

Thread T6 created by T0 here:
    #0 0x7f8b87aab685 in __interceptor_pthread_create ../../../../src/libsanitizer/asan/asan_interceptors.cpp:216
    #1 0x55fc946e2875 in oplthread_create /home/virtuoso-opensource/libsrc/Thread/sched_pthread.c:425
    #2 0x55fc946d92bf in PrpcProtocolInitialize /home/virtuoso-opensource/libsrc/Dk/Dkernel.c:3264
    #3 0x55fc946d9325 in PrpcListen /home/virtuoso-opensource/libsrc/Dk/Dkernel.c:3298
    #4 0x55fc93f59e67 in main /home/virtuoso-opensource/binsrc/virtuoso/viunix.c:704
    #5 0x7f8b87257d8f  (/lib/x86_64-linux-gnu/libc.so.6+0x29d8f)

==961609==ABORTING

*** Error 08S01: [Virtuoso Driver]CL065: Lost connection to server

Activity

  1. added a commit that references this issue on Apr 20, 2026
    89e1aab
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions