summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge XPand Storage Engine (rebased)bb-10.5-xpandSergei Petrunia2020-03-1018-0/+4334
|\
| * XPand SE: Attempt to get packages builtSergei Petrunia2020-03-101-1/+1
| |
| * XPand: fix compile error on Winx64: pass ushort to add_command_operand_ushortSergei Petrunia2020-03-101-1/+5
| | | | | | | | Also add a safety check
| * Fix compile warnings on windowsSergei Petrunia2020-03-103-5/+5
| | | | | | | | | | | | The fix needs a followup: "ulong" is 32-bit on 64-bit Windows, so xpand_connection_cursor::rowdata::length needs to be 64-bit but this causes a cascade of datatype changes all over the code.
| * Fix federated.federatedx_create_handler with --ps-protocol, for CLX-77Sergei Petrunia2020-03-101-3/+4
| | | | | | | | | | | | | | CLX-77 code used "thd->lex->result!=NULL" to check if the SELECT has an INTO part. This is not correct, as the condition also holds when we're using the PS protocol. Use a more generic check: check whether the SELECT has any side effect.
| * Fix compile error on windows: htobe{16,32,64} are not definedSergei Petrunia2020-03-101-0/+21
| | | | | | | | Use the same solution as we used for MyRocks.
| * Fix compile failure: P_S-related code should be inside #ifdefSergei Petrunia2020-03-101-0/+2
| |
| * change upsert test to expect new errorMichael Erickson2020-03-102-12/+12
| |
| * attempt to fix dup key errorMichael Erickson2020-03-101-1/+4
| |
| * add more debugMichael Erickson2020-03-101-3/+5
| |
| * make table discovery workMichael Erickson2020-03-102-9/+12
| |
| * remove my_error and my_printf_errorMichael Erickson2020-03-102-25/+6
| |
| * CLX-14 This commit adds support for pushed conditions for table API.Roman Nozdrin2020-03-106-6/+128
| |
| * Added character set results, minor cleanupIsaac Ackerman2020-03-103-21/+21
| |
| * bump copyright on all xpand source filesMichael Erickson2020-03-107-7/+7
| |
| * add override specifier to handler functionsMichael Erickson2020-03-102-50/+50
| |
| * Fix table discovery.Will DeVries2020-03-103-24/+26
| |
| * Simplify xpand CMakeLists.txtMichael Erickson2020-03-101-19/+1
| | | | | | | | We don't need the MSVC hacks used by Spider.
| * Pass C strings to get_table_oid.Will DeVries2020-03-103-9/+18
| |
| * Remove spaces from the ends of lines.Will DeVries2020-03-104-24/+24
| |
| * set xpand_hosts default back to localhostMichael Erickson2020-03-101-1/+1
| | | | | | | | Whoops, I did not mean to change the default of xpand_hosts.
| * hardcode xpand protocol to tcpMichael Erickson2020-03-102-5/+11
| | | | | | | | | | Hardcode MYSQL_OPT_PROTOCOL to TCP in the Xpand connection. We can add support for sockets later. Also fix a memory leak in xpand_hosts global variable.
| * Moved xpand_hosts back to heap, Fixed malformed data on out of memoryIsaac Ackerman2020-03-102-17/+30
| |
| * Cleanup of allocation strategyIsaac Ackerman2020-03-103-85/+47
| |
| * Add table synchronization for direct update.Will DeVries2020-03-103-4/+19
| |
| * Revert "Revert "Add table synchronization for select and derived handlers.""Will DeVries2020-03-105-6/+60
| |
| * Improved connection management to clustrix supporting round robin and fail overIsaac Ackerman2020-03-103-87/+217
| |
| * Revert "Add table synchronization for select and derived handlers."Will DeVries2020-03-105-60/+6
| |
| * Add table synchronization for select and derived handlers.Will DeVries2020-03-105-6/+60
| |
| * CLX-80: ALTER TABLE t ENGINE=CLUSTRIX fails with an errorSergei Petrunia2020-03-106-79/+266
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * CLX-103: xpand.update fails after for CLX-55, part #2Sergei Petrunia2020-03-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | 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.
| * CLX-103: xpand.update fails after for CLX-55Sergei Petrunia2020-03-102-4/+54
| | | | | | | | | | | | | | | | | | | | | | 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.
| * CLX-55: Prepared Statements: a short term solution for UPDATEsSergei Petrunia2020-03-103-1/+27
| | | | | | | | | | | | | | | | | | 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.
| * Track sysvars that change pushdown executionIsaac Ackerman2020-03-103-8/+61
| |
| * CLX-77: INSERT ... SELECT returns rows to the client...Sergei Petrunia2020-03-101-1/+1
| | | | | | | | | | Part #2: update the testcase as the database we're using was changed.
| * CLX-77: INSERT ... SELECT returns rows to the client instead of insertingSergei Petrunia2020-03-103-0/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * Fix more spacing issues and formatting issues.Will DeVries2020-03-104-132/+124
| |
| * Fix spacing in xpand files after Clustrix to Xpand rename.Will DeVries2020-03-104-101/+87
| |
| * rebrand plugin from "clustrixdb" to "xpand"Michael Erickson2020-03-1016-578/+578
| |
| * Rework transaction management.Will DeVries2020-03-103-221/+212
| |
| * Add found_rows parameter to direct_update_rows.Will DeVries2020-03-102-2/+3
| |
| * Add a partial key parameter to the scan from key command.Will DeVries2020-03-103-9/+12
| | | | | | | | | | This patch does not implement support for partial keys, it just adds the parameter for the Clustrix command.
| * Add lock support for row based select queries.Will DeVries2020-03-104-32/+54
| |
| * Move code track upsert commands into ha_clustrixdb.Will DeVries2020-03-103-51/+26
| |
| * Prevent row based commands from being called with auto-commit.Will DeVries2020-03-102-21/+30
| | | | | | | | | | This patch also fixes a bug in scan_end() and removes an unneeded call to set_overwrite_status().
| * Fix direct_update error handling.Will DeVries2020-03-102-9/+5
| |
| * Add session variable to enable direct update.Will DeVries2020-03-101-2/+15
| |
| * Remove CLUSTRIX_SHARED argument to trx->key_read.Will DeVries2020-03-101-1/+0
| |
| * Support for HA_READ_KEY_EXACT.Will DeVries2020-03-101-13/+31
| |
| * Fix table buffer handling.Will DeVries2020-03-102-22/+48
| |