Type:
Bug
Priority:
Major
Resolution:
Fixed
Affects Version/s:
2.0.0
Fix Version/s:
None
Component/s:
None
Environment:
Ubuntu 12.04LTS and others
In my application I'm getting a crash, valgrind shows this:
==4801== Memcheck, a memory error detector
==4801== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
==4801== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info
==4801== Command: ./CONC-92
==4801==
==4801== Invalid write of size 1
==4801== at 0x4E4CABF: mthd_my_read_rows (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E4C59D: mthd_my_read_query_result (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E5F812: mysql_stmt_execute (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x401599: myexecute (CONC-92.c:283)
==4801== by 0x401F5D: main (CONC-92.c:432)
==4801== Address 0x63d7d38 is 0 bytes after a block of size 8,152 alloc'd
==4801== at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==4801== by 0x4E54481: my_malloc (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E52728: alloc_root (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E4C88F: mthd_my_read_rows (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E4C59D: mthd_my_read_query_result (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E5F812: mysql_stmt_execute (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x401599: myexecute (CONC-92.c:283)
==4801== by 0x401F5D: main (CONC-92.c:432)
==4801==
==4801== Invalid read of size 1
==4801== at 0x4C2BFA2: strlen (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==4801== by 0x4E52895: strdup_root (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E4B91F: unpack_fields (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E4C5C2: mthd_my_read_query_result (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E5F812: mysql_stmt_execute (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x401599: myexecute (CONC-92.c:283)
==4801== by 0x401F5D: main (CONC-92.c:432)
==4801== Address 0x63d7d38 is 0 bytes after a block of size 8,152 alloc'd
==4801== at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==4801== by 0x4E54481: my_malloc (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E52728: alloc_root (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E4C88F: mthd_my_read_rows (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E4C59D: mthd_my_read_query_result (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E5F812: mysql_stmt_execute (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x401599: myexecute (CONC-92.c:283)
==4801== by 0x401F5D: main (CONC-92.c:432)
==4801==
==4801== Invalid read of size 1
==4801== at 0x4C2D0E1: memcpy@@GLIBC_2.14 (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==4801== by 0x4E528BD: strdup_root (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E4B91F: unpack_fields (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E4C5C2: mthd_my_read_query_result (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E5F812: mysql_stmt_execute (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x401599: myexecute (CONC-92.c:283)
==4801== by 0x401F5D: main (CONC-92.c:432)
==4801== Address 0x63d7d38 is 0 bytes after a block of size 8,152 alloc'd
==4801== at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==4801== by 0x4E54481: my_malloc (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E52728: alloc_root (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E4C88F: mthd_my_read_rows (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E4C59D: mthd_my_read_query_result (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x4E5F812: mysql_stmt_execute (in /usr/local/mariadbr134/lib/mariadb/libmariadb.so.2)
==4801== by 0x401599: myexecute (CONC-92.c:283)
==4801== by 0x401F5D: main (CONC-92.c:432)
==4801==
SUCCESS!
==4801==
==4801== HEAP SUMMARY:
==4801== in use at exit: 296 bytes in 2 blocks
==4801== total heap usage: 239 allocs, 237 frees, 167,116 bytes allocated
==4801==
==4801== LEAK SUMMARY:
==4801== definitely lost: 0 bytes in 0 blocks
==4801== indirectly lost: 0 bytes in 0 blocks
==4801== possibly lost: 0 bytes in 0 blocks
==4801== still reachable: 296 bytes in 2 blocks
==4801== suppressed: 0 bytes in 0 blocks
==4801== Rerun with --leak-check=full to see details of leaked memory
==4801==
==4801== For counts of detected and suppressed errors, rerun with: -v
==4801== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 2 from 2)
This does not occur with the mysql client library. The resultset actually has 0 rows as a result, I've tried reproducing this with a minimal test case but it appears it is relevant to have a lot of data in the table in question so I haven't been able to reproduce it.
HOWEVER, I have found the issue and resolved it, it appears to be some pointer arithmatic issues. I'll attach the correction.
{"report":{"fcp":1032.3999999761581,"ttfb":149,"pageVisibility":"visible","entityId":36113,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":32,"apdex":0.5,"journeyId":"bf352cab-e409-4ff8-b216-3773169fd8b7","navigationType":0,"readyForUser":1096.3999999761581,"redirectCount":0,"resourceLoadedEnd":1228.8999999761581,"resourceLoadedStart":156.5,"resourceTiming":[{"duration":405.5,"initiatorType":"link","name":"https://jira.mariadb.org/s/2c21342762a6a02add1c328bed317ffd-CDN/lu2bu7/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/css/_super/batch.css","startTime":156.5,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":156.5,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":562,"responseStart":0,"secureConnectionStart":0},{"duration":405.1999999284744,"initiatorType":"link","name":"https://jira.mariadb.org/s/7ebd35e77e471bc30ff0eba799ebc151-CDN/lu2bu7/820016/12ta74/8679b4946efa1a0bb029a3a22206fb5d/_/download/contextbatch/css/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.css?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true","startTime":156.80000007152557,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":156.80000007152557,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":562,"responseStart":0,"secureConnectionStart":0},{"duration":414,"initiatorType":"script","name":"https://jira.mariadb.org/s/fbf975c0cce4b1abf04784eeae9ba1f4-CDN/lu2bu7/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/js/_super/batch.js?locale=en","startTime":156.89999997615814,"connectEnd":156.89999997615814,"connectStart":156.89999997615814,"domainLookupEnd":156.89999997615814,"domainLookupStart":156.89999997615814,"fetchStart":156.89999997615814,"redirectEnd":0,"redirectStart":0,"requestStart":156.89999997615814,"responseEnd":570.8999999761581,"responseStart":570.8999999761581,"secureConnectionStart":156.89999997615814},{"duration":458.89999997615814,"initiatorType":"script","name":"https://jira.mariadb.org/s/099b33461394b8015fc36c0a4b96e19f-CDN/lu2bu7/820016/12ta74/8679b4946efa1a0bb029a3a22206fb5d/_/download/contextbatch/js/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&locale=en&slack-enabled=true","startTime":157,"connectEnd":157,"connectStart":157,"domainLookupEnd":157,"domainLookupStart":157,"fetchStart":157,"redirectEnd":0,"redirectStart":0,"requestStart":157,"responseEnd":615.8999999761581,"responseStart":615.8999999761581,"secureConnectionStart":157},{"duration":462.2999999523163,"initiatorType":"script","name":"https://jira.mariadb.org/s/94c15bff32baef80f4096a08aceae8bc-CDN/lu2bu7/820016/12ta74/c92c0caa9a024ae85b0ebdbed7fb4bd7/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en","startTime":157.10000002384186,"connectEnd":157.10000002384186,"connectStart":157.10000002384186,"domainLookupEnd":157.10000002384186,"domainLookupStart":157.10000002384186,"fetchStart":157.10000002384186,"redirectEnd":0,"redirectStart":0,"requestStart":157.10000002384186,"responseEnd":619.3999999761581,"responseStart":619.3999999761581,"secureConnectionStart":157.10000002384186},{"duration":464.2999999523163,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":157.20000004768372,"connectEnd":157.20000004768372,"connectStart":157.20000004768372,"domainLookupEnd":157.20000004768372,"domainLookupStart":157.20000004768372,"fetchStart":157.20000004768372,"redirectEnd":0,"redirectStart":0,"requestStart":157.20000004768372,"responseEnd":621.5,"responseStart":621.5,"secureConnectionStart":157.20000004768372},{"duration":466.2999999523163,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":157.30000007152557,"connectEnd":157.30000007152557,"connectStart":157.30000007152557,"domainLookupEnd":157.30000007152557,"domainLookupStart":157.30000007152557,"fetchStart":157.30000007152557,"redirectEnd":0,"redirectStart":0,"requestStart":157.30000007152557,"responseEnd":623.6000000238419,"responseStart":623.6000000238419,"secureConnectionStart":157.30000007152557},{"duration":468.2000000476837,"initiatorType":"link","name":"https://jira.mariadb.org/s/b04b06a02d1959df322d9cded3aeecc1-CDN/lu2bu7/820016/12ta74/a2ff6aa845ffc9a1d22fe23d9ee791fc/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":157.39999997615814,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":157.39999997615814,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":625.6000000238419,"responseStart":0,"secureConnectionStart":0},{"duration":468.10000002384186,"initiatorType":"script","name":"https://jira.mariadb.org/rest/api/1.0/shortcuts/820016/47140b6e0a9bc2e4913da06536125810/shortcuts.js?context=issuenavigation&context=issueaction","startTime":157.5,"connectEnd":157.5,"connectStart":157.5,"domainLookupEnd":157.5,"domainLookupStart":157.5,"fetchStart":157.5,"redirectEnd":0,"redirectStart":0,"requestStart":157.5,"responseEnd":625.6000000238419,"responseStart":625.6000000238419,"secureConnectionStart":157.5},{"duration":470.1999999284744,"initiatorType":"link","name":"https://jira.mariadb.org/s/3ac36323ba5e4eb0af2aa7ac7211b4bb-CDN/lu2bu7/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/css/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.css?jira.create.linked.issue=true","startTime":157.70000004768372,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":157.70000004768372,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":627.8999999761581,"responseStart":0,"secureConnectionStart":0},{"duration":470.1999999284744,"initiatorType":"script","name":"https://jira.mariadb.org/s/3339d87fa2538a859872f2df449bf8d0-CDN/lu2bu7/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/js/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.js?jira.create.linked.issue=true&locale=en","startTime":157.80000007152557,"connectEnd":157.80000007152557,"connectStart":157.80000007152557,"domainLookupEnd":157.80000007152557,"domainLookupStart":157.80000007152557,"fetchStart":157.80000007152557,"redirectEnd":0,"redirectStart":0,"requestStart":157.80000007152557,"responseEnd":628,"responseStart":628,"secureConnectionStart":157.80000007152557},{"duration":584.8999999761581,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-js/jira.webresources:bigpipe-js.js","startTime":158.30000007152557,"connectEnd":158.30000007152557,"connectStart":158.30000007152557,"domainLookupEnd":158.30000007152557,"domainLookupStart":158.30000007152557,"fetchStart":158.30000007152557,"redirectEnd":0,"redirectStart":0,"requestStart":158.30000007152557,"responseEnd":743.2000000476837,"responseStart":743.2000000476837,"secureConnectionStart":158.30000007152557},{"duration":1070.5,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-init/jira.webresources:bigpipe-init.js","startTime":158.39999997615814,"connectEnd":158.39999997615814,"connectStart":158.39999997615814,"domainLookupEnd":158.39999997615814,"domainLookupStart":158.39999997615814,"fetchStart":158.39999997615814,"redirectEnd":0,"redirectStart":0,"requestStart":158.39999997615814,"responseEnd":1228.8999999761581,"responseStart":1228.8999999761581,"secureConnectionStart":158.39999997615814},{"duration":301.89999997615814,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":785.8000000715256,"connectEnd":785.8000000715256,"connectStart":785.8000000715256,"domainLookupEnd":785.8000000715256,"domainLookupStart":785.8000000715256,"fetchStart":785.8000000715256,"redirectEnd":0,"redirectStart":0,"requestStart":785.8000000715256,"responseEnd":1087.7000000476837,"responseStart":1087.7000000476837,"secureConnectionStart":785.8000000715256},{"duration":276.89999997615814,"initiatorType":"script","name":"https://www.google-analytics.com/analytics.js","startTime":1007.3000000715256,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":1007.3000000715256,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":1284.2000000476837,"responseStart":0,"secureConnectionStart":0}],"fetchStart":0,"domainLookupStart":0,"domainLookupEnd":0,"connectStart":0,"connectEnd":0,"requestStart":13,"responseStart":149,"responseEnd":153,"domLoading":152,"domInteractive":1247,"domContentLoadedEventStart":1247,"domContentLoadedEventEnd":1282,"domComplete":1959,"loadEventStart":1959,"loadEventEnd":1960,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":1232.2000000476837},{"name":"bigPipe.sidebar-id.end","time":1233},{"name":"bigPipe.activity-panel-pipe-id.start","time":1233.2000000476837},{"name":"bigPipe.activity-panel-pipe-id.end","time":1235.5},{"name":"activityTabFullyLoaded","time":1289.2000000476837}],"measures":[],"correlationId":"5ba78279813753","effectiveType":"4g","downlink":10,"rtt":0,"serverDuration":71,"dbReadsTimeInMs":9,"dbConnsTimeInMs":15,"applicationHash":"9d11dbea5f4be3d4cc21f03a88dd11d8c8687422","experiments":[]}}