mirror of
https://github.com/DBD-SQLite/DBD-SQLite
synced 2025-06-07 06:08:38 -04:00
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.
146 lines
3.3 KiB
Text
146 lines
3.3 KiB
Text
.travis.yml
|
|
Changes
|
|
constants.inc
|
|
dbdimp.c
|
|
dbdimp.h
|
|
dbdimp_tokenizer.inc
|
|
dbdimp_virtual_table.inc
|
|
fts3_tokenizer.h
|
|
inc/Test/FailWarnings.pm
|
|
lib/DBD/SQLite.pm
|
|
lib/DBD/SQLite/Constants.pm
|
|
lib/DBD/SQLite/Cookbook.pod
|
|
lib/DBD/SQLite/Fulltext_search.pod
|
|
lib/DBD/SQLite/GetInfo.pm
|
|
lib/DBD/SQLite/VirtualTable.pm
|
|
lib/DBD/SQLite/VirtualTable/FileContent.pm
|
|
lib/DBD/SQLite/VirtualTable/PerlData.pm
|
|
LICENSE
|
|
Makefile.PL
|
|
MANIFEST This list of files
|
|
MANIFEST.SKIP
|
|
ppport.h
|
|
README
|
|
SQLite.xs
|
|
sqlite3.c
|
|
sqlite3.h
|
|
sqlite3ext.h
|
|
SQLiteXS.h
|
|
t/01_compile.t
|
|
t/02_logon.t
|
|
t/03_create_table.t
|
|
t/04_insert.t
|
|
t/05_select.t
|
|
t/06_tran.t
|
|
t/07_error.t
|
|
t/08_busy.t
|
|
t/09_create_function.t
|
|
t/10_create_aggregate.t
|
|
t/11_get_info.t
|
|
t/12_unicode.t
|
|
t/13_create_collation.t
|
|
t/14_progress_handler.t
|
|
t/15_ak_dbd.t
|
|
t/16_column_info.t
|
|
t/17_createdrop.t
|
|
t/18_insertfetch.t
|
|
t/19_bindparam.t
|
|
t/20_blobs.t
|
|
t/21_blobtext.t
|
|
t/22_listfields.t
|
|
t/23_nulls.t
|
|
t/24_numrows.t
|
|
t/25_chopblanks.t
|
|
t/26_commit.t
|
|
t/27_metadata.t
|
|
t/28_schemachange.t
|
|
t/30_auto_rollback.t
|
|
t/31_bind_weird_number_param.t
|
|
t/32_inactive_error.t
|
|
t/33_non_latin_path.t
|
|
t/34_online_backup.t
|
|
t/35_table_info.t
|
|
t/36_hooks.t
|
|
t/37_regexp.t
|
|
t/38_empty_statement.t
|
|
t/39_foreign_keys.t
|
|
t/40_multiple_statements.t
|
|
t/41_placeholders.t
|
|
t/42_primary_key_info.t
|
|
t/43_fts3.t
|
|
t/44_rtree.t
|
|
t/45_savepoints.t
|
|
t/46_mod_perl.t
|
|
t/47_execute.t
|
|
t/48_bind_param_is_sticky.t
|
|
t/49_trace_and_profile.t
|
|
t/50_foreign_key_info.t
|
|
t/51_table_column_metadata.t
|
|
t/52_db_filename.t
|
|
t/53_status.t
|
|
t/54_literal_txn.t
|
|
t/55_statistics_info.t
|
|
t/56_open_flags.t
|
|
t/57_uri_filename.t
|
|
t/58_see_if_its_a_number_and_explicit_binding.t
|
|
t/59_extended_result_codes.t
|
|
t/60_readonly.t
|
|
t/61_strlike.t
|
|
t/62_regexp_multibyte_char_class.t
|
|
t/63_param_values.t
|
|
t/64_limit.t
|
|
t/65_db_config.t
|
|
t/cookbook_variance.t
|
|
t/lib/SQLiteTest.pm
|
|
t/rt_106151_outermost_savepoint.t
|
|
t/rt_106950_extra_warnings_with_savepoints.t
|
|
t/rt_115465_column_info_with_spaces.t
|
|
t/rt_124227_index_regression.t
|
|
t/rt_15186_prepcached.t
|
|
t/rt_21406_auto_finish.t
|
|
t/rt_25371_asymmetric_unicode.t
|
|
t/rt_25460_numeric_aggregate.t
|
|
t/rt_25924_user_defined_func_unicode.t
|
|
t/rt_26775_distinct.t
|
|
t/rt_27553_prepared_cache_and_analyze.t
|
|
t/rt_29058_group_by.t
|
|
t/rt_29629_sqlite_where_length.t
|
|
t/rt_31324_full_names.t
|
|
t/rt_32889_prepare_cached_reexecute.t
|
|
t/rt_36836_duplicate_key.t
|
|
t/rt_36838_unique_and_bus_error.t
|
|
t/rt_40594_nullable.t
|
|
t/rt_48393_debug_panic_with_commit.t
|
|
t/rt_50503_fts3.t
|
|
t/rt_52573_manual_exclusive_lock.t
|
|
t/rt_53235_icu_compatibility.t
|
|
t/rt_62370_diconnected_handles_operation.t
|
|
t/rt_64177_ping_wipes_out_the_errstr.t
|
|
t/rt_67581_bind_params_mismatch.t
|
|
t/rt_71311_bind_col_and_unicode.t
|
|
t/rt_73159_fts_tokenizer_segfault.t
|
|
t/rt_73787_exponential_buffer_overflow.t
|
|
t/rt_76395_int_overflow.t
|
|
t/rt_77724_primary_key_with_a_whitespace.t
|
|
t/rt_78833_utf8_flag_for_column_names.t
|
|
t/rt_81536_multi_column_primary_key_info.t
|
|
t/rt_88228_sqlite_3_8_0_crash.t
|
|
t/rt_96050_db_filename_for_a_closed_database.t
|
|
t/rt_96877_unicode_statements.t
|
|
t/rt_96878_fts_contentless_table.t
|
|
t/rt_97598_crash_on_disconnect_with_virtual_tables.t
|
|
t/virtual_table/00_base.t
|
|
t/virtual_table/01_destroy.t
|
|
t/virtual_table/02_find_function.t
|
|
t/virtual_table/10_filecontent.t
|
|
t/virtual_table/11_filecontent_fulltext.t
|
|
t/virtual_table/20_perldata.t
|
|
t/virtual_table/21_perldata_charinfo.t
|
|
t/virtual_table/rt_124941.t
|
|
t/virtual_table/rt_99748.t
|
|
t/virtual_table/unknown_op.t
|
|
typemap
|
|
xt/cpp_comments.t
|
|
xt/meta.t
|
|
xt/pmv.t
|
|
xt/pod.t
|