summaryrefslogtreecommitdiff
path: root/unittest
diff options
context:
space:
mode:
authorTor Didriksen <tor.didriksen@oracle.com>2012-03-14 12:28:41 +0100
committerTor Didriksen <tor.didriksen@oracle.com>2012-03-14 12:28:41 +0100
commitcfea7c7dfc00821b1c39a9f8024d60fb337b7ab3 (patch)
tree11d95f49b95896464dc0e1bd0b0fcc0ac06a4b9d /unittest
parent7a4e8d9959ad3fcc2396e0290b5d20e56b8b693f (diff)
downloadmariadb-git-cfea7c7dfc00821b1c39a9f8024d60fb337b7ab3.tar.gz
Bug#13832772 ASSERTION `THD->IS_ERROR() || KILL_ERRNO'
We are trying to sort a lot of text/blob fields, so the buffer is indeed too small. Memory available = thd->variables.sortbuff_size = 262144 min_sort_memory = param.sort_length*MERGEBUFF2 = 292245 So the decision to abort the query is correct. filesort() calls my_error(), the error is reported. But, since we have DELETE IGNORE ... the error is converted to a warning by THD::raise_condition filesort currently expects an error to be recorded in the THD diagnostics area. If we lift this restriction (remove the assert) we end up in the familiar void Protocol::end_statement() default: DBUG_ASSERT(0); The solution seems to be to call my_error(ME_FATALERROR) in filesort, so that the error is propagated as an error rather than a warning.
Diffstat (limited to 'unittest')
0 files changed, 0 insertions, 0 deletions