src/dblib/unittests/rpc

Main

Hostnamefreddy
uname -aLinux freddy 4.10.0-30-generic #34-Ubuntu SMP Mon Jul 31 19:38:17 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
date2017-08-12

==28247== Memcheck, a memory error detector
==28247== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==28247== Using Valgrind-3.12.0 and LibVEX; rerun with -h for copyright info
==28247== Command: ./rpc
==28247== 
--28247-- Valgrind options:
--28247--    --tool=memcheck
--28247--    --vgdb=no
--28247--    --num-callers=20
--28247--    --leak-check=yes
--28247--    -v
--28247--    --show-reachable=yes
--28247--    --log-fd=3
--28247--    --suppressions=/home/freddy/suppressions.supp
--28247--    --track-origins=yes
--28247-- Contents of /proc/version:
--28247--   Linux version 4.10.0-30-generic (buildd@lgw01-27) (gcc version 6.3.0 20170406 (Ubuntu 6.3.0-12ubuntu2) ) #34-Ubuntu SMP Mon Jul 31 19:38:17 UTC 2017
--28247-- 
--28247-- Arch and hwcaps: AMD64, LittleEndian, amd64-cx16-lzcnt-rdtscp-sse3-avx-avx2-bmi
--28247-- Page sizes: currently 4096, max supported 4096
--28247-- Valgrind library directory: /home/freddy/install/lib/valgrind
--28247-- Reading syms from /home/freddy/ftdstmp/ftds_comp99/test1/src/dblib/unittests/rpc
--28247-- Reading syms from /lib/x86_64-linux-gnu/ld-2.24.so
--28247--   Considering /lib/x86_64-linux-gnu/ld-2.24.so ..
--28247--   .. CRC mismatch (computed c075befa wanted 5b162bac)
--28247--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/ld-2.24.so ..
--28247--   .. CRC is valid
--28247-- Reading syms from /home/freddy/install/lib/valgrind/memcheck-amd64-linux
--28247--    object doesn't have a dynamic symbol table
--28247-- Scheduler: using generic scheduler lock implementation.
--28247-- Reading suppressions file: /home/freddy/suppressions.supp
--28247-- Reading suppressions file: /home/freddy/install/lib/valgrind/default.supp
--28247-- REDIR: 0x401d4d0 (ld-linux-x86-64.so.2:strlen) redirected to 0x380a60c1 (vgPlain_amd64_linux_REDIR_FOR_strlen)
--28247-- REDIR: 0x401bd80 (ld-linux-x86-64.so.2:index) redirected to 0x380a60db (vgPlain_amd64_linux_REDIR_FOR_index)
--28247-- Reading syms from /home/freddy/install/lib/valgrind/vgpreload_core-amd64-linux.so
--28247-- Reading syms from /home/freddy/install/lib/valgrind/vgpreload_memcheck-amd64-linux.so
==28247== WARNING: new redirection conflicts with existing -- ignoring it
--28247--     old: 0x0401d4d0 (strlen              ) R-> (0000.0) 0x380a60c1 vgPlain_amd64_linux_REDIR_FOR_strlen
--28247--     new: 0x0401d4d0 (strlen              ) R-> (2007.0) 0x04c30c60 strlen
--28247-- REDIR: 0x401bfa0 (ld-linux-x86-64.so.2:strcmp) redirected to 0x4c31d60 (strcmp)
--28247-- REDIR: 0x401dfe0 (ld-linux-x86-64.so.2:mempcpy) redirected to 0x4c35130 (mempcpy)
--28247-- Reading syms from /home/freddy/ftdstmp/ftds_comp99/src/dblib/.libs/libsybdb.so.5.1.0
--28247-- Reading syms from /lib/x86_64-linux-gnu/libpthread-2.24.so
--28247--   Considering /usr/lib/debug/.build-id/d2/d91e222a7bae3822622410509fa0e967e8360f.debug ..
--28247--   .. build-id is valid
--28247-- Reading syms from /lib/x86_64-linux-gnu/libc-2.24.so
--28247--   Considering /lib/x86_64-linux-gnu/libc-2.24.so ..
--28247--   .. CRC mismatch (computed 3bb6a0e6 wanted 41b71c4c)
--28247--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/libc-2.24.so ..
--28247--   .. CRC is valid
--28247-- Reading syms from /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2
--28247--    object doesn't have a symbol table
--28247-- Reading syms from /lib/x86_64-linux-gnu/libssl.so.1.0.0
--28247--    object doesn't have a symbol table
--28247-- Reading syms from /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
--28247--    object doesn't have a symbol table
--28247-- Reading syms from /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3
--28247--    object doesn't have a symbol table
--28247-- Reading syms from /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1
--28247--    object doesn't have a symbol table
--28247-- Reading syms from /lib/x86_64-linux-gnu/libcom_err.so.2.1
--28247--    object doesn't have a symbol table
--28247-- Reading syms from /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1
--28247--    object doesn't have a symbol table
--28247-- Reading syms from /lib/x86_64-linux-gnu/libdl-2.24.so
--28247--   Considering /lib/x86_64-linux-gnu/libdl-2.24.so ..
--28247--   .. CRC mismatch (computed 3af4e647 wanted db71b677)
--28247--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/libdl-2.24.so ..
--28247--   .. CRC is valid
--28247-- Reading syms from /lib/x86_64-linux-gnu/libkeyutils.so.1.5
--28247--    object doesn't have a symbol table
--28247-- Reading syms from /lib/x86_64-linux-gnu/libresolv-2.24.so
--28247--   Considering /lib/x86_64-linux-gnu/libresolv-2.24.so ..
--28247--   .. CRC mismatch (computed bb7360ae wanted c1b4ec17)
--28247--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/libresolv-2.24.so ..
--28247--   .. CRC is valid
--28247-- REDIR: 0x53b9c20 (libc.so.6:strcasecmp) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x53b5590 (libc.so.6:strcspn) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x53bbf10 (libc.so.6:strncasecmp) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x53b7a00 (libc.so.6:strpbrk) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x53b7d90 (libc.so.6:strspn) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x53b92a0 (libc.so.6:memmove) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x53b3d90 (libc.so.6:index) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x53b8e60 (libc.so.6:bcmp) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x53b3fe0 (libc.so.6:strcmp) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x53be610 (libc.so.6:memcpy@@GLIBC_2.14) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x53b76d0 (libc.so.6:strncpy) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x53b5470 (libc.so.6:strcpy) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x53b7710 (libc.so.6:rindex) redirected to 0x4c305f0 (rindex)
--28247-- REDIR: 0x53b5a30 (libc.so.6:strlen) redirected to 0x4c30ba0 (strlen)
--28247-- REDIR: 0x53aece0 (libc.so.6:free) redirected to 0x4c2eccc (free)
--28247-- REDIR: 0x53ae930 (libc.so.6:malloc) redirected to 0x4c2db1f (malloc)
--28247-- REDIR: 0x53b93b0 (libc.so.6:memcpy@GLIBC_2.2.5) redirected to 0x4c31ec0 (memcpy@GLIBC_2.2.5)
--28247-- REDIR: 0x53cdd10 (libc.so.6:__strcpy_sse2_unaligned) redirected to 0x4c30c80 (strcpy)
--28247-- REDIR: 0x53b5e80 (libc.so.6:__GI_strncmp) redirected to 0x4c31350 (__GI_strncmp)
--28247-- REDIR: 0x53b8340 (libc.so.6:__GI_strstr) redirected to 0x4c35390 (__strstr_sse2)
--28247-- REDIR: 0x53b8b10 (libc.so.6:memchr) redirected to 0x4c31e00 (memchr)
--28247-- REDIR: 0x53bffc0 (libc.so.6:strchrnul) redirected to 0x4c34c60 (strchrnul)
found sqlexpress.tempdb for sa in "../../../PWD"
--28247-- REDIR: 0x53b9390 (libc.so.6:__GI_mempcpy) redirected to 0x4c34e60 (__GI_mempcpy)
SQL text will be read from ../../../src/dblib/unittests/rpc.sql
Starting ./rpc
--28247-- REDIR: 0x53af550 (libc.so.6:calloc) redirected to 0x4c2f9ba (calloc)
--28247-- REDIR: 0x53b3dc0 (libc.so.6:__GI_strchr) redirected to 0x4c30750 (__GI_strchr)
--28247-- REDIR: 0x54756c0 (libc.so.6:__strcasecmp_avx) redirected to 0x4c314a0 (strcasecmp)
--28247-- REDIR: 0x5478770 (libc.so.6:__memcpy_avx_unaligned_erms) redirected to 0x4c343c0 (memmove)
About to logon
--28247-- REDIR: 0x53b9750 (libc.so.6:memset) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x5478bb0 (libc.so.6:__memset_avx2_unaligned_erms) redirected to 0x4c342c0 (memset)
--28247-- REDIR: 0x53b9ab0 (libc.so.6:__GI_stpcpy) redirected to 0x4c33d80 (__GI_stpcpy)
expected error 20201: "Packet size of -1 not supported -- size of 0 used instead!"
About to open sqlexpress.tempdb
--28247-- REDIR: 0x53c90c0 (libc.so.6:__strcmp_sse2_unaligned) redirected to 0x4c31c20 (strcmp)
--28247-- REDIR: 0x5476d30 (libc.so.6:__strncasecmp_avx) redirected to 0x4c31580 (strncasecmp)
--28247-- REDIR: 0x53b4020 (libc.so.6:__GI_strcmp) redirected to 0x4c31c70 (__GI_strcmp)
--28247-- Reading syms from /lib/x86_64-linux-gnu/libnss_compat-2.24.so
--28247--   Considering /lib/x86_64-linux-gnu/libnss_compat-2.24.so ..
--28247--   .. CRC mismatch (computed 433ac6c1 wanted 36dcf7bd)
--28247--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/libnss_compat-2.24.so ..
--28247--   .. CRC is valid
--28247-- Reading syms from /lib/x86_64-linux-gnu/libnsl-2.24.so
--28247--   Considering /lib/x86_64-linux-gnu/libnsl-2.24.so ..
--28247--   .. CRC mismatch (computed 7e7ddce9 wanted 35a92cfd)
--28247--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/libnsl-2.24.so ..
--28247--   .. CRC is valid
--28247-- REDIR: 0x53b54b0 (libc.so.6:__GI_strcpy) redirected to 0x4c30d50 (__GI_strcpy)
--28247-- Reading syms from /lib/x86_64-linux-gnu/libnss_nis-2.24.so
--28247--   Considering /lib/x86_64-linux-gnu/libnss_nis-2.24.so ..
--28247--   .. CRC mismatch (computed 5232975c wanted d7b24933)
--28247--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/libnss_nis-2.24.so ..
--28247--   .. CRC is valid
--28247-- Reading syms from /lib/x86_64-linux-gnu/libnss_files-2.24.so
--28247--   Considering /lib/x86_64-linux-gnu/libnss_files-2.24.so ..
--28247--   .. CRC mismatch (computed 0c0e8d0a wanted 81d05c96)
--28247--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/libnss_files-2.24.so ..
--28247--   .. CRC is valid
--28247-- REDIR: 0x53aef00 (libc.so.6:realloc) redirected to 0x4c2fbb3 (realloc)
--28247-- REDIR: 0x53bfdb0 (libc.so.6:rawmemchr) redirected to 0x4c34c90 (rawmemchr)
--28247-- REDIR: 0x5475470 (libc.so.6:__strpbrk_sse42) redirected to 0x4c35470 (strpbrk)
--28247-- Reading syms from /usr/lib/x86_64-linux-gnu/gconv/ISO8859-1.so
--28247--   Considering /usr/lib/x86_64-linux-gnu/gconv/ISO8859-1.so ..
--28247--   .. CRC mismatch (computed 642bf444 wanted d8a40f40)
--28247--   Considering /usr/lib/debug/usr/lib/x86_64-linux-gnu/gconv/ISO8859-1.so ..
--28247--   .. CRC is valid
--28247-- REDIR: 0x401e2b0 (ld-linux-x86-64.so.2:stpcpy) redirected to 0x4c340c0 (stpcpy)
--28247-- Reading syms from /usr/lib/x86_64-linux-gnu/gconv/UTF-16.so
--28247--   Considering /usr/lib/x86_64-linux-gnu/gconv/UTF-16.so ..
--28247--   .. CRC mismatch (computed 70ceee94 wanted c2c2f8e8)
--28247--   Considering /usr/lib/debug/usr/lib/x86_64-linux-gnu/gconv/UTF-16.so ..
--28247--   .. CRC is valid
--28247-- REDIR: 0x53b5e30 (libc.so.6:strncmp) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x54707d0 (libc.so.6:__strncmp_sse42) redirected to 0x4c31430 (__strncmp_sse42)
--28247-- REDIR: 0x54936c0 (libc.so.6:__memcmp_sse4_1) redirected to 0x4c33aa0 (__memcmp_sse4_1)
--28247-- REDIR: 0x543fea0 (libc.so.6:__memcpy_chk) redirected to 0x4a28742 (_vgnU_ifunc_wrapper)
--28247-- REDIR: 0x5478760 (libc.so.6:__memcpy_chk_avx_unaligned_erms) redirected to 0x4c35220 (__memcpy_chk)
--28247-- Reading syms from /usr/lib/x86_64-linux-gnu/gconv/CP1252.so
--28247--   Considering /usr/lib/x86_64-linux-gnu/gconv/CP1252.so ..
--28247--   .. CRC mismatch (computed 73a4dc66 wanted ab9c2413)
--28247--   Considering /usr/lib/debug/usr/lib/x86_64-linux-gnu/gconv/CP1252.so ..
--28247--   .. CRC is valid
Check if server support long identifiers
	  1: SELECT 'x' AS this_is_a_really_really_long_identifier
trying to create a temporary stored procedure
Creating procedure #t0022
	  1: 
	  2: CREATE PROCEDURE #t0022 
	  3:   @null_input varchar(30) OUTPUT 
	  4: , @first_type varchar(30) OUTPUT 
	  5: , @nullout int OUTPUT
	  6: , @varchar_tds7_out varchar(8000) OUTPUT
	  7: , @nvarchar_tds7_out nvarchar(4000) OUTPUT
	  8: , @nrows int OUTPUT 
	  9: , @c_this_name_is_way_more_than_thirty_characters_charlie varchar(20)
	 10: , @nv nvarchar(20) = N'hello'
	 11: AS 
	 12: BEGIN 
	 13: if @null_input is not NULL begin 
	 14: 	select 'error: should be NULL' as status, @null_input as 'null_input'
	 15: 	return -42
	 16: end else begin
	 17: 	print 'Good: @null_input is NULL'
	 18: end
	 19: if @c_this_name_is_way_more_than_thirty_characters_charlie is not NULL begin 
	 20: 	select 'error: should be NULL' as status, @c_this_name_is_way_more_than_thirty_characters_charlie as '@c_this_name_is_way_more_than_thirty_characters_charlie'
	 21: 	return -42
	 22: end else begin
	 23: 	print 'Good: @c_this_name_is_way_more_than_thirty_characters_charlie is NULL'
	 24: end
	 25: select @null_input = max(convert(varchar(30), name)) from systypes 
	 26: select @first_type = min(convert(varchar(30), name)) from systypes 
	 27: select name from sysobjects where 0=1
	 28: select distinct convert(varchar(30), name) as 'type'  from systypes 
	 29: where name in ('int', 'char', 'text') 
	 30: select @nrows = @@rowcount 
	 31: set @varchar_tds7_out = replicate(char(247), 8000)
	 32: set @nvarchar_tds7_out = replicate(nchar(246), 4000)
	 33: select distinct @nv as '@nv', convert(varchar(30), name) as name  from systypes
	 34: select	  @null_input as 'null_input'
	 35: 	, @first_type as 'first_type'
	 36: 	, @nullout as 'nullout'
	 37: 	, @nrows as 'nrows'
	 38: 	, @c_this_name_is_way_more_than_thirty_characters_charlie as 'c'
	 39: 	, @nv as 'nv'
	 40: 	into #parameters
	 41: select * from #parameters
	 42: return 42 
	 43: END 
	 44: 
Created procedure #t0022
executing dbrpcinit
executing dbrpcparam for @null_input
executing dbrpcparam for @first_type
executing dbrpcparam for @nullout
executing dbrpcparam for @varchar_tds7_out
executing dbrpcparam for @nvarchar_tds7_out
executing dbrpcparam for @nrows
executing dbrpcparam for @c_this_name_is_way_more_than_thirty_characters_charlie
executing dbrpcparam for @nv
executing dbrpcsend
executing dbsqlok
Good: @null_input is NULL
Good: @c_this_name_is_way_more_than_thirty_characters_charlie is NULL
fetching results
fetched resultset 1 successfully:
column 1 (name) is 1 wide, buffer initialized to 'one'
name 
row count 0
hasretstatus 0
fetched resultset 2 successfully:
column 1 (type) is 1 wide, buffer initialized to 'one'
type 
char 
int 
text 
row count 3
hasretstatus 0
fetched resultset 3 successfully:
column 1 (@nv) is 1 wide, buffer initialized to 'one'
column 2 (name) is 1 wide, buffer initialized to 'two'
@nv name 
OK bigint 
OK binary 
OK bit 
OK char 
OK datetime 
OK decimal 
OK float 
OK image 
OK int 
OK money 
OK nchar 
OK ntext 
OK numeric 
OK nvarchar 
OK real 
OK smalldatetime 
OK smallint 
OK smallmoney 
OK sql_variant 
OK sysname 
OK text 
OK timestamp 
OK tinyint 
OK uniqueidentifier 
OK varbinary 
OK varchar 
OK xml 
row count 27
hasretstatus 0
fetched resultset 4 successfully:
column 1 (null_input) is 1 wide, buffer initialized to 'one'
column 2 (first_type) is 1 wide, buffer initialized to 'two'
column 3 (nullout) is 1 wide, buffer initialized to 'three'
column 4 (nrows) is 1 wide, buffer initialized to 'four'
column 5 (c) is 1 wide, buffer initialized to 'five'
null_input first_type nullout nrows c 
xml bigint   3   
row count 1
hasretstatus 1
retrieving return status...
42
retrieving output parameters...
param name                  type length  data                          
----  -------------------   ----  ----- ------------------------------
1     @null_input             39      3  xml                           
2     @first_type             39      6  bigint                        
3     @nullout                56      0                                
4     @varchar_tds7_out       39   8000  ÷÷÷÷÷÷÷÷÷÷...                 
5     @nvarchar_tds7_out      39   4000  öööööööööö...                 
6     @nrows                  56      4  3                             
Good: Got 6 output parameters and 1 return status of 42.
Good: Got 4 resultsets and 1 empty resultset.
Dropping procedure
	  1: IF OBJECT_ID('t0022') IS NOT NULL DROP PROC t0022
--28247-- Discarding syms at 0x7d626e0-0x7d63efc in /usr/lib/x86_64-linux-gnu/gconv/UTF-16.so due to munmap()
rpc.c OK
--28247-- Discarding syms at 0x7f665e0-0x7f672d2 in /usr/lib/x86_64-linux-gnu/gconv/CP1252.so due to munmap()
--28247-- Discarding syms at 0x7b5f5e0-0x7b600ba in /usr/lib/x86_64-linux-gnu/gconv/ISO8859-1.so due to munmap()
--28247-- Discarding syms at 0x73202b0-0x7325b05 in /lib/x86_64-linux-gnu/libnss_compat-2.24.so due to munmap()
--28247-- Discarding syms at 0x77430e0-0x7749869 in /lib/x86_64-linux-gnu/libnss_nis-2.24.so due to munmap()
--28247-- Discarding syms at 0x752bfd0-0x7539091 in /lib/x86_64-linux-gnu/libnsl-2.24.so due to munmap()
--28247-- Discarding syms at 0x794f1d0-0x79552a1 in /lib/x86_64-linux-gnu/libnss_files-2.24.so due to munmap()
==28247== 
==28247== HEAP SUMMARY:
==28247==     in use at exit: 6,376 bytes in 187 blocks
==28247==   total heap usage: 1,799 allocs, 1,612 frees, 1,222,477 bytes allocated
==28247== 
==28247== Searching for pointers to 187 not-freed blocks
==28247== Checked 475,232 bytes
==28247== 
==28247== LEAK SUMMARY:
==28247==    definitely lost: 0 bytes in 0 blocks
==28247==    indirectly lost: 0 bytes in 0 blocks
==28247==      possibly lost: 0 bytes in 0 blocks
==28247==    still reachable: 0 bytes in 0 blocks
==28247==         suppressed: 6,376 bytes in 187 blocks
==28247== 
==28247== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
--28247-- 
--28247-- used_suppression:     20 openssl leak 1 /home/freddy/suppressions.supp:2 suppressed: 1,376 bytes in 20 blocks
--28247-- used_suppression:    163 openssl leak 3 /home/freddy/suppressions.supp:18 suppressed: 4,888 bytes in 163 blocks
--28247-- used_suppression:      4 openssl leak 2 /home/freddy/suppressions.supp:10 suppressed: 112 bytes in 4 blocks
==28247== 
==28247== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)

Main