I'm working on writing a script that automatically tests all the
built-in functions. As a first step, I just passed NULL for all
of the arguments for each built-in function. I've attached a
list of the 90 functions that crash the backend when this is done.

Since the culprit functions all seem related (I believe they're
all generated by src/backend/utils/mb/conversion_procs), I'd
imagine this should be pretty easy to fix. I haven't played
with this part of the backend before, so if someone else would
like to make the necessary changes, let me know. Otherwise
I'll do it.

As for the testing script itself, it's not finished (testing
NULL inputs is just a trivial first step); when it's done, I'll
submit it for inclusion in CVS.

-Neil

CRASH: SELECT alt_to_iso(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT alt_to_koi8r(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT alt_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT alt_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT alt_to_win1251(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT ascii_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT ascii_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT big5_to_euc_tw(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT big5_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT big5_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT euc_cn_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT euc_cn_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT euc_jp_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT euc_jp_to_sjis(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT euc_jp_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT euc_kr_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT euc_kr_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT euc_tw_to_big5(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT euc_tw_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT euc_tw_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT gb18030_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT gbk_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT iso8859_1_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT iso8859_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT iso_to_alt(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT iso_to_koi8r(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT iso_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT iso_to_win1251(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT johab_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT koi8r_to_alt(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT koi8r_to_iso(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT koi8r_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT koi8r_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT koi8r_to_win1251(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT latin1_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT latin2_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT latin2_to_win1250(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT latin3_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT latin4_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_alt(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_ascii(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_big5(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_euc_cn(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_euc_jp(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_euc_kr(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_euc_tw(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_iso(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_koi8r(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_latin1(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_latin2(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_latin3(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_latin4(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_sjis(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_win1250(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT mic_to_win1251(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT sjis_to_euc_jp(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT sjis_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT sjis_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT tcvn_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT uhc_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_alt(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_ascii(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_big5(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_euc_cn(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_euc_jp(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_euc_kr(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_euc_tw(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_gb18030(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_gbk(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_iso8859(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_iso8859_1(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_johab(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_koi8r(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_sjis(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_tcvn(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_uhc(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf8_to_win1251(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf_to_win1250(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf_to_win1256(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT utf_to_win874(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT win1250_to_latin2(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT win1250_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT win1250_to_utf(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT win1251_to_alt(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT win1251_to_iso(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT win1251_to_koi8r(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT win1251_to_mic(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT win1251_to_utf8(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT win1256_to_utf(NULL,NULL,NULL,NULL,NULL)
CRASH: SELECT win874_to_utf(NULL,NULL,NULL,NULL,NULL)
---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

               http://archives.postgresql.org

Reply via email to