Граф коммитов

10321 Коммитов

Автор SHA1 Сообщение Дата
Michael Berlin 5ef150b742 Merge pull request #1865 from michael-berlin/splitclone_handle_keyspace_id_changes
worker: SplitClone: Handle keyspace_id changes properly.
2016-07-13 15:58:47 +02:00
Michael Berlin a9136d687a worker: SplitClone: Handle keyspace_id changes properly.
If a row already exists on the destination with a different keyspace_id on a different destination shard, we cannot use UPDATE. Instead, we must DELETE the old row from the old destination shard and INSERT the new row to the new destination shard.
2016-07-13 15:20:29 +02:00
Pavel Ivanov 4203424826 Merge pull request #1841 from pivanof/restore_rpc
Add RestoreFromBackup command to vtctl
2016-07-12 15:07:50 -07:00
Pavel Ivanov cded5ebd13 Merge pull request #1834 from pivanof/protos
Generate protobuf files during compilation and fix the generation rules.
2016-07-12 15:01:05 -07:00
Michael Berlin 7f22b016c9 Merge pull request #1860 from michael-berlin/retry_when_tablets_are_unhealthy
worker: SplitClone: Do not overwrite the state in waitForTablets().
2016-07-12 12:32:42 +02:00
Harshit Gangal 22385e7d71 Incorporated Comments 2016-07-12 12:20:10 +05:30
Michael Berlin 1ddb932b9f worker: SplitClone: Do not overwrite the state in waitForTablets().
This unflakes the worker.py test which requires to observe vtworker in the clone state such that it can run the reparent.

The issue was introduced in https://github.com/youtube/vitess/pull/1858 where waitForTablets() was added as part of the clone phase.
2016-07-12 01:40:28 +02:00
Michael Berlin c4c7376d5c Merge pull request #1858 from michael-berlin/retry_when_tablets_are_unhealthy
worker: SplitClone: At chunk start wait up to 2 hours for healthy sou…
2016-07-12 01:38:45 +02:00
Pavel Ivanov 699c1df9e9 Update generated protobuf files.
The protobuf files are updated with the added
tabletmanagerservice.RestoreFromBackup and mysqlctl.ReinitConfig calls and their
respective Request/Response messages.
2016-07-11 15:03:16 -07:00
Pavel Ivanov 66841f7500 Add RestoreFromBackup command to vtctl.
Executing the command vttablet will completely delete the existing data and
then replace it from the latest backup. The sequence of actions is basically
the same as vttablet has already used to setup a freshly started replica.

Also mysqlctl interface is extended with ReinitConfig function. It's used by
vttablet to change server_id of the replica before restoring it from backup.
That's necessary to avoid a possible situation when restored replica skips
transactions in the replication stream which have the same server_id.

The new RestoreFromBackup command will be used later in the implementation of
an automated pivot.

This change doesn't add any tests for the new functionality because I didn't
find a place where I could add these tests. Please tell me if there is actually
a place that I missed. Meanwhile I tested this manually on the example
Kubernetes setup.
2016-07-11 15:03:10 -07:00
Anthony Yeh 3975020f62 Merge pull request #1859 from enisoc/webdriver
Fix webdriver test in Docker mode
2016-07-11 14:27:35 -07:00
Anthony Yeh 7eb76d9be0 vtctld_web_test: Use Xvfb if present for headless browser.
This allows the test to run in environments with no attached DISPLAY.
2016-07-11 14:00:25 -07:00
Anthony Yeh 78994fbfec docker: Update Dockerfile for webdriver. 2016-07-11 14:00:25 -07:00
Anthony Yeh 7c93b42f52 docker: Update to Maven 3.3.9
The previous version is no longer hosted by the mirror.
2016-07-11 14:00:25 -07:00
Michael Berlin 63cba039b3 worker: SplitClone: At chunk start wait up to 2 hours for healthy source and destination tablets.
Thix fixes the problem that SplitClone immediately failed when the destination tablets became unhealthy because a previous chunk pipeline inserted data too fast.

I've reused the existing timeout of 2 hours (from the destination writes) and made it configurable as global flag "--retry_duration".
2016-07-11 22:20:21 +02:00
Harshit Gangal ed1e66c230 Fixed Test 2016-07-11 19:04:16 +05:30
Harshit Gangal de94c1d110 AutoCommit Changes in sync with vttablet, Removed Required Keyspace in connection url and Refactored Code 2016-07-11 17:20:38 +05:30
Harshit Gangal 8a81eac1b1 Merge branch 'master' into mutl-row-insert 2016-07-08 16:02:47 +05:30
Harshit Gangal 459e7e0ae7 fixing tests 2016-07-08 15:59:38 +05:30
Michael Berlin 7f0d5ec407 Merge pull request #1856 from michael-berlin/export_auto_online_offline
Exporting internal changes back to open-source. (Added --offline and --online flags to SplitClone automation task.)
2016-07-08 03:18:35 +02:00
Michael Berlin d74c64b6d6 Exporting internal changes back to open-source.
NOTE: This is an automated export. Changes were already LGTM'd internally.
2016-07-07 14:50:39 -07:00
Harshit Gangal f5ecf88831 fixed test and merged single-multirow 2016-07-08 02:55:04 +05:30
Pavel Ivanov f2cfade174 Merge pull request #1854 from pivanof/php_proto
Regenerate php protobuf files.
2016-07-07 12:56:10 -07:00
Harshit Gangal 6da9e70f24 gofmt router.go 2016-07-08 00:53:35 +05:30
Harshit Gangal 9544f5ed27 simplified code and fixed test 2016-07-08 00:53:11 +05:30
Pavel Ivanov 1bf760894f Regenerate php protobuf files.
Apparently these files were not generated for quite some time.
2016-07-07 09:24:15 -07:00
Anthony Yeh 01e4fe0538 Merge pull request #1852 from dsslater/add-vtctld-tests
Add vtctld tests
2016-07-06 15:24:12 -07:00
David Slater ec9989e3c8 removed two spaces to meet style guide 2016-07-06 15:07:41 -07:00
David Slater 6b8270eb6e Added tests for shard organizer 2016-07-06 14:34:42 -07:00
David Slater 46102ff87f Removed hard coded string for srvkeyspaces 2016-07-06 13:28:08 -07:00
Harshit Gangal 81803bafab Fixed routes.Value assignment with interface 2016-07-06 02:53:10 +05:30
Alain Jobart 17b3634a07 Merge pull request #1849 from alainjobart/bytes
Adding unit test for utf8 characters.
2016-07-05 18:35:53 +02:00
Alain Jobart c4d1a71d81 Adding unit test for utf8 characters. 2016-07-05 08:53:36 -07:00
Michael Berlin a53c1e69ec Merge pull request #1848 from michael-berlin/restartable_result_reader
worker: Fix that the number of threads in the status was off by one.
2016-07-05 17:52:19 +02:00
Michael Berlin 641ac0aed3 worker: Fix that the number of threads in the status was off by one.
The old chunk generator code generated "threads+1" chunks. The new code generates "threads" chunks instead. I forgot to adjust the number of threads for the table status.
2016-07-05 17:32:10 +02:00
Michael Berlin 4d52024361 Merge pull request #1847 from michael-berlin/restartable_result_reader
worker: Fix full table scans in restarted streaming queries.
2016-07-05 16:52:36 +02:00
Michael Berlin bac4c755ed worker: Log the error why we're restarting a streaming query. 2016-07-05 16:00:59 +02:00
Michael Berlin 52fd995c80 worker: Fix full table scans in restarted streaming queries. 2016-07-05 15:58:53 +02:00
Michael Berlin b0ec7fc027 Merge pull request #1845 from michael-berlin/restartable_result_reader
worker: Support restarting a failed streaming query.
2016-07-05 12:52:22 +02:00
Michael Berlin 9e8d35d92f Merge branch 'master' into restartable_result_reader 2016-07-05 11:13:26 +02:00
Michael Berlin 930032df0d worker: Fix restart point for multi-column primary key.
I'm using the short form (a,b,c) > (1,2,3) now.
2016-07-05 10:53:23 +02:00
Alain Jobart e96c13a7c8 Merge pull request #1846 from alainjobart/bytes
Changing sql string type to bytes in two protos.
2016-07-05 10:01:42 +02:00
Alain Jobart c50bc78392 Changing sql string type to bytes in two protos.
Since we don't pass bind variables, we have to be able to send any
string we want, not just utf-8.
2016-07-05 00:28:01 -07:00
Michael Berlin ed7f16cb10 worker: Support restarting a failed streaming query.
We'll restart the query by advancing the start of the chunk right after the primary key of the last row read so far.

Other changes:
- Refactored FindChunks. I'm using sqltypes.Result now.
- Added Chunk struct to store a chunk. I'm using sqltypes.Value for the start and end to simplify processing the values.
2016-07-04 18:07:16 +02:00
Michael Berlin 3139dc5cd7 Merge pull request #1842 from michael-berlin/remove_vtworker_timeout
vtworkerclient: Remove --action_timeout.
2016-07-04 05:32:29 -07:00
Harshit Gangal ab1a4993de Merge branch 'master' of https://github.com/youtube/vitess into mutl-row-insert 2016-07-04 03:37:52 +05:30
Harshit Gangal a3803cbbdd first-cut for multi-row insert 2016-07-04 03:37:32 +05:30
Michael Berlin d69fefeaf8 vtworkerclient: Remove --action_timeout.
The timeout flag makes sense for vtctlclient but not for vtworker RPCs which may run for days.
2016-07-03 13:11:11 +02:00
Anthony Yeh 5cbfa10894 Merge pull request #1839 from enisoc/vschema-editor
vtctld: Remove experimental VSchema editor UI.
2016-07-02 17:34:47 -07:00
Anthony Yeh 50bb657d9b vtctld: Remove experimental VSchema editor UI.
The experimental VSchema editor UI was originally intended as a learning
tool to help explain VSchema concepts. We are removing it prior to the
General Availability release because we don't want to encourage a workflow
in which new VSchema is pushed instantly without review.

Instead, VSchema configs should be under source control, and changes
should be peer-reviewed before being pushed at an appropriate time by a
DBA. This mirrors industry best practices for regular SQL schema changes.

In a future release, we plan to incorporate an improved, holistic
Schema+VSchema management system. For now, updates should be done through
vtctlclient:

http://vitess.io/reference/vtctl.html#applyvschema
2016-07-01 23:58:29 -07:00