- 10 Mar, 2020 40 commits
-
-
Sergei Petrunia authored
Fix a number of issues that were preventing row-copying ALTER TABLE from working: - ha_xpand::create() and ha_xpand::open() should take the table name from the arguments, not from TABLE_SHARE object. - ha_xpand::rename_table() should not use decode_file_path() as that fails with an error for temporary table names (#sql_nnnn) - Maintenance of clustrix_table_oid through TABLE_SHARE::tabledef_version didn't cover the temporary work tables created by ALTER TABLE code. Switch to storing it in the Xpand_share instead, and update it in ::create() and ::open. - On as-needed-basis, add quoting of table names to pieces of code that build SQL statements to be ran on the backend. This is a stop-gap measure until a real solution is implemented.
-
Sergei Petrunia authored
Fix the complaint from safemalloc about leaked 8 bytes. When mysql_update() uses direct update, it will still create a quick select (doesn't make much sense, does it?) Quick select will be initialized, which will call ha_xpand::index_init which will allocate ha_xpand::scan_fields. Then, ha_xpand::index_end will be called but it will fail to free scan_fields.
-
Sergei Petrunia authored
Fix xpand.update test It was not using the charsets correctly: UTF-8 encoded strings were passed to MariaDB as latin1. The results of SELECT statements looked correct because they were interpreted as UTF-8, too. But the data in tables was mis-encoded so UPDATE statements already didn't work correctly.
-
Sergei Petrunia authored
Direct UPDATE used to print the original statement. With Prepared Statement, this could cause the statement with original parameter marks ('?') to be printed. Solve this in the same way as "Select Handler" does: print the statement back from the parse tree. The parameters would be substituted.
-
Isaac Ackerman authored
-
Sergei Petrunia authored
Part #2: update the testcase as the database we're using was changed.
-
Sergei Petrunia authored
Make Pushdown_select write output rows into select->join->result, instead of thd->protocol. This makes - SELECT ... INTO @var - SELECT ... INTO OUTFILE - INSERT INTO myisam_table SELECT ... FROM clustrix_table work as intended. Also fixed the federatedx select pushdown handler: - Do not fail an assert if the backend no resultset. Produce an error. - For the SELECT .. INTO syntax, refuse to use Select Handler, because the impelementation doesn't support this.
-
Will DeVries authored
-
Will DeVries authored
-
Michael Erickson authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
This patch does not implement support for partial keys, it just adds the parameter for the Clustrix command.
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
This patch also fixes a bug in scan_end() and removes an unneeded call to set_overwrite_status().
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Roman Nozdrin authored
Fix for a potential null deref in DH for EXPLAIN.
-
Will DeVries authored
-
Roman Nozdrin authored
both single row/value UPSERT and bulk UPSERT.
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-
Will DeVries authored
-