1
0
Fork 0
mirror of https://github.com/DBD-SQLite/DBD-SQLite synced 2025-06-07 14:19:10 -04:00
DBD-SQLite-SQLcipher/t/virtual_table
Max Maischein 1fd1a0d15f Handle 'unknown' op in DBD::SQLite::VirtualTable::PerlData
This patch adds code and a test when SQLite generates an 'unknown'
op for a table join in the BEST_INDEX() callback. The Perl code crashed
when such an op was generated for a JOIN criterion by the SQLite engine.

The SQLite engine creates an 'unknown' op on the following SQL
for example:

                select r.nodepath
                  from temp.scan_results r
                       left join temp.scan_results m
                             on r.nodepath = m.nodepath+1
                 where m.nodepath is null

The important part is that the right side of the left join must be
checked for IS NULL.
2019-01-25 19:05:07 +01:00
..
00_base.t not to use Test::FailWarnings except for developers environment 2019-01-07 03:48:10 +09:00
01_destroy.t not to use Test::FailWarnings except for developers environment 2019-01-07 03:48:10 +09:00
02_find_function.t not to use Test::FailWarnings except for developers environment 2019-01-07 03:48:10 +09:00
10_filecontent.t not to use Test::FailWarnings except for developers environment 2019-01-07 03:48:10 +09:00
11_filecontent_fulltext.t not to use Test::FailWarnings except for developers environment 2019-01-07 03:48:10 +09:00
20_perldata.t not to use Test::FailWarnings except for developers environment 2019-01-07 03:48:10 +09:00
21_perldata_charinfo.t not to use Test::FailWarnings except for developers environment 2019-01-07 03:48:10 +09:00
rt_99748.t not to use Test::FailWarnings except for developers environment 2019-01-07 03:48:10 +09:00
rt_124941.t not to use Test::FailWarnings except for developers environment 2019-01-07 03:48:10 +09:00
unknown_op.t Handle 'unknown' op in DBD::SQLite::VirtualTable::PerlData 2019-01-25 19:05:07 +01:00