{"push_id":2220315294,"size":1,"distinct_size":1,"ref":"refs/heads/10.2","head":"bbb8c9d77310860f3f81bfd8b824ce353271fb14","before":"02b7dc7bec4ff95c764a244c5037c69f262651e1","commits":[{"sha":"bbb8c9d77310860f3f81bfd8b824ce353271fb14","author":{"name":"Igor Babaev","email":"3b85b3e83e658d5d33308486a92b220edc8ae0a6@askmonty.org"},"message":"Fixed the bug MDEV-14755 Crash when executing prepared statement\nfor a query that uses CTE\n\nThe first reference to a CTE in the processed query uses the unit\nbuilt by the parser for the CTE specification. This unit is\nconsidered as the specification of the derived table created for\nthe first reference of the CTE. This requires some transformation of\nthe original query tree: the unit of the specification must be moved\nto a new position as a slave of the select where the first reference\nto the CTE occurs. The transformation is performed by the function\nst_select_lex_node::move_as_slave(). There was an obvious bug in this\nfunction. As a result of this bug in many cases the moved unit turned\nout to be lost in the query tree. This could cause different problems.\nIn particular the prepared statements for queries that used CTEs could\nmiss cleanup for some selects that was performed at the end of the\npreparation/execution of the PSs. If such cleanup is not done for a PS\nthe next execution of the PS causes an assertion abort or a crash.","distinct":true,"url":"https://api.github.com/repos/MariaDB/server/commits/bbb8c9d77310860f3f81bfd8b824ce353271fb14"}]}
{"actor":{"display_login":"igorbabaev"}}