Informix - Problem description
Problem IT28941 | Status: Closed |
SELECTING SBLOB BSON DATA CAN RETURN -937 ERROR BSON_TO_CHAR: MI_LO_TO_BUFFER RETURNED XXX, BUT THE UDT HAD YYY BYTES | |
product: | |
INFORMIX SERVER / 5725A3900 / C10 - IDS 12.10 | |
Problem description: | |
This problem was reported on aix64 running 12.10.FC9. My repro illustrates the problem on this version and I've also confirmed it reproduces on aix64 running 12.10.FC12W1. I have not been able to dupe on linux x86_64 yet and while I think it is still an issue there, my repro may not be exposing it because of 2k versus 4k sbspace page sizes and the size of smart blobs my bson data is storing. You will typically see a -937 error and a query of bson data will return an error like this in my repro: (U0001) - bson_to_char: mi_lo_to_buffer returned 0, but the UDT had 4176 bytes Error in line 2 Near character position 55 The customer reported similar errors: (U0001) - bson_to_char: mi_lo_to_buffer returned 4068, but the UDT had 8498 bytes Trapping for a -937 error on the server produces a stack like this: 0x00000001000ac888 (oninit)afhandler 0x00000001000ad2b8 (oninit)affail_interface 0x00000001001b4954 (oninit)check_traperror 0x00000001001772bc (oninit)sqerr@AF32_1 0x0000000100173848 (oninit)sqerr1 0x000000010017b8f4 (oninit)sqapi_sqlstate_setup 0x000000010017b7c0 (oninit)sqapi_udr_error 0x000000010096c6e4 (oninit)mi_db_error_raise 0x0000000100b33c08 (oninit)bson_to_char 0x0000000100b3103c (oninit)json_output 0x0000000100e6f448 (oninit)udrlm_clang_execute_internal 0x0000000100e6ef40 (oninit)udrlm_clang_execute 0x00000001015aff18 (oninit)udrlm_exec_routine 0x00000001005f80b4 (oninit)udr_execute 0x000000010048d1ec (oninit)ev_udr 0x00000001004822a0 (oninit)new_eval 0x0000000100989964 (oninit)evalcols 0x000000010098309c (oninit)getrow 0x000000010098426c (oninit)fetchrow 0x0000000100b5a1d4 (oninit)exfetch 0x00000001007c1ca4 (oninit)sql_nfetch 0x00000001007c1374 (oninit)sq_nfetch 0x000000010070a00c (oninit)sqmain 0x0000000100c65618 (oninit)listen_verify 0x0000000100c6423c (oninit)spawn_thread 0x0000000100ff5b20 (oninit)th_init_initgls 0x00000001017cdba0 (oninit)startup | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * Users of IDS versions prior to 12.10.xC14. * **************************************************************** * PROBLEM DESCRIPTION: * * Selecting sblob bson data can return -937 error * * bson_to_char: mi_lo_to_buffer returned xxx, but the UDT had * * yyy bytes. * **************************************************************** * RECOMMENDATION: * **************************************************************** | |
Local Fix: | |
Solution | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 25.04.2019 23.09.2019 23.09.2019 |
Problem solved at the following versions (IBM BugInfos) | |
12.10.xC14 | |
Problem solved according to the fixlist(s) of the following version(s) |