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

1766 Коммитов

Автор SHA1 Сообщение Дата
Michael Berlin a2a0d900ca worker: Resolve destination master using the discovery module.
- Removed previous Resolver interface and respective implementations.
- Removed respective stat vars and flags (--resolve_ttl).

- Added unit test for case where vtworker fails over to a different replica.
- Added unit test for case when healthcheck retries because currently no master is available.
- Extended FakePoolConnection to support these tests:
  - can define callback (AfterFunc) when expected query was received
  - infinite mode where the last request may be received over and over again

- discovery: Introduce DefaultTopoReadConcurrency to avoid duplication.
- discovery: Added EndPointStats.Alias() to avoid duplication.
- discovery: Added EndPointStats.String() to have pretty printed arrays.

Adapted end-to-end tests:
- binlog.py, merge_sharding.py, resharding.py: Enabled healthcheck for master tablets.
- worker.py: Updated stat vars check
2016-04-29 22:58:00 -07:00
sougou b44ed6c0ac Merge pull request #1660 from sougou/v3
v3: support sqltypes.Value for string vindexes
2016-04-27 16:47:01 -07:00
Sugu Sougoumarane 35c5aa2018 v3: support sqltypes.Value for string vindexes
All vindexes must accept sqltypes.Value because that's
how values are supplied for cross-shard joins.
I've also updated the example and the v3 e2e test.
2016-04-27 15:17:19 -07:00
Alain Jobart af6a18b817 Adding BeginExecute{,Batch} rpc to gRPC code.
It is behind a flag for now, until it's been around for long enough, and
then I'll just enable it by default.
2016-04-27 08:11:32 -07:00
Alain Jobart 39980a6184 Fixing a few tests that were using GetSessionId.
It was all implicit, and lazy, really.
2016-04-26 10:36:16 -07:00
Alain Jobart 85c70cc733 Fixing a couple comments. 2016-04-15 08:22:49 -07:00
Alain Jobart f07a42457c Removing a source of flakiness in initial_sharding.
In the process, re-factoring utils.wait_for_vars so it can also take a
key and value, and therefore can be used by a
VtGate.wait_for_endpoints() method. Using that method in a few tests
instead of custom cut&paste code.
2016-04-14 13:48:54 -07:00
Alain Jobart a278cc5bde factoring out more test code for resharding. 2016-04-14 10:56:39 -07:00
Alain Jobart 4c6b05e568 Factoring out status check code in resharding. 2016-04-14 10:36:28 -07:00
Alain Jobart 898e9e225b Factoring out common sharding test code.
Creating a new base class for sharding tests.
Using it in initial_sharding, merge_sharding, resharding and
vertical_split. Adding consistent checks in all of these.
Refactoring them to all match (all_tablets list at beginning, ...).

Also fixing a reporting bug in binlog server, the wrong var was used
for update stream. Actually found this with the tests!
2016-04-14 09:26:17 -07:00
Alain Jobart a8cfdf4970 Addressing all comments but code duplication. 2016-04-14 07:45:03 -07:00
Alain Jobart 1152cc675b Adding a db merge end to end test.
And fix all the bugs it un-covers.
2016-04-13 09:29:45 -07:00
Michael Berlin 083512e1cc Merge pull request #1595 from michael-berlin/min_rdonly_global_to_local
worker: Remove global flag --min_healthy_rdonly_endpoints and make it a flag in each vtworker command.
2016-04-11 14:10:04 -07:00
Anthony Yeh da9c26658b Rebalance test shards. 2016-04-06 15:26:59 -07:00
Anthony Yeh 6c224a8dd9 Don't need to prefix builds with godep anymore.
Thanks to native vendoring support in Go 1.5+.
2016-04-06 14:52:31 -07:00
Ammar Aijazi f43677278d Add master_buffering to test/config.json 2016-04-05 12:31:06 -07:00
Ammar Aijazi fc21924156 Merge branch 'master' into aaijazi_buffer_all_master 2016-04-05 11:53:38 -07:00
Alain Jobart 813b1a8fc7 Various fixes after the gRPC secure changes.
vtgateclienttest has to register services in 'OnRun',
instead of right away, as the gRPC server is not created yet.

Various fixes related to socket file. We were wrongly assuming
we needed the gRPC server when a port is specified, forgetting
the unix socket case. Refactoring the unix socket case to be
better aligned with gRPC code.
2016-04-05 07:43:22 -07:00
Alain Jobart a90553d228 Fixing lint warning. 2016-04-05 07:43:22 -07:00
Alain Jobart f66772fa05 Wiring in immediate callerid for gRPC.
Now extract the gRPC TLS certificate name the client used,
and use that as immediate caller id. When table ACLs are used,
this in effect propagates the certificate name as the client name.

Adding a simple unit test case in secure_transport.py: one vtgate
client cert is allowed to access the test table, another in not.

(also fixing doc for format of table acl config file).
2016-04-05 07:43:22 -07:00
Alain Jobart a946c6ad7f Adding client -> vtgate encryption, with test. 2016-04-05 07:43:22 -07:00
Alain Jobart c8a6430478 Adding preliminary support for TLS for gRPC.
The server side takes a cert and key, and a ca to verify clients.
The client side takes a cert and key, a ca to verify the server,
and an optional server name in case the server host name does not
match the certificate name.

Renaming secure.py to be more descriptive.
2016-04-05 07:43:22 -07:00
Ammar Aijazi 84275f623c All comments mention that we buffer master requests now, not just transactions 2016-04-04 23:46:30 -07:00
Ammar Aijazi b051d5778e Buffer master reads, not just transactions 2016-04-04 23:46:30 -07:00
Ammar Aijazi 4c96f101ff Add end-to-end tests for VTGate master buffering 2016-04-04 23:46:29 -07:00
Anthony Yeh c99c5d6aa6 e2e/k8s: Use absolute paths for running vitess-up.sh. 2016-04-04 16:40:01 -07:00
Sugu Sougoumarane 6d8344ecb5 Merge branch 'master' into v3 2016-04-04 12:01:54 -07:00
Sugu Sougoumarane 6da03785c8 v3: vschema broken out by keyspace 2016-04-01 17:23:26 -07:00
Anthony Yeh 8c3a1340a6 Make e2e reparent test executable. 2016-04-01 15:02:34 -07:00
thompsonja 8b5d02e69d Merge branch 'master' into k8s_end2end 2016-04-01 14:55:21 -07:00
Sugu Sougoumarane aa06883f87 v3: Classes are history 2016-03-30 22:17:54 -07:00
Joshua Thompson 40e9af53e3 Add TODOs to re-enable currently disabled reparent tests after Orchestrator integration 2016-03-30 13:31:34 -07:00
Joshua Thompson ef8a1025a1 Kubernetes e2e test updates 2016-03-29 17:05:51 -07:00
Michael Berlin 120d673ce4 test/automation_horizontal_resharding.py: Add work-around to make pylint happy. 2016-03-24 22:51:32 +01:00
Michael Berlin d6da4ee8ea worker: Remove global flag --min_healthy_rdonly_endpoints and make it a per-command flag.
Added end-to-end test in worker.py which verifies that --min_healthy_rdonly_endpoints works correctly when there are not enough RDONLY tablets.

Updated tests and documentation.
2016-03-24 22:51:32 +01:00
Ammar Aijazi 67e5183b9d Change resharding.py test to use a sharding key column that isn't keyspace_id 2016-03-22 12:45:38 -07:00
Alain Jobart 35490249b1 Removing SHARD_ZERO constant.
It's an application-layer convention that the unique shard
in a keyspace is named '0'. It's not a Vitess-side convention.
2016-03-18 10:59:04 -07:00
Sugu Sougoumarane d78a7c3103 v3: fix vtgatev3_test
The join tests have been rewritten to use different tables
so they won't conflict with the other tests.
2016-03-17 15:37:43 -07:00
Sugu Sougoumarane bed67e8fff Merge branch 'suguwork' into sequence 2016-03-17 00:56:16 -07:00
Sugu Sougoumarane 8414580160 v3: update test_joins to new type scheme 2016-03-16 23:46:39 -07:00
Sugu Sougoumarane d2d50cc66b Merge branch 'master' into suguwork 2016-03-16 23:17:41 -07:00
Alain Jobart aab0207426 Removing all non-go references to bson or gorpc. 2016-03-16 09:35:22 -07:00
Alain Jobart fce1157acf Removing go rpc python clients. 2016-03-16 09:15:57 -07:00
Alain Jobart ff1f13bfa5 Switching all end2end tests to gRPC.
Removing gorpc protocols flavor.
2016-03-16 08:43:31 -07:00
Alain Jobart 03cbfd20a2 Using a new method in protocols_flavor for types. 2016-03-16 07:35:00 -07:00
Sugu Sougoumarane ebe32686c1 seq: support NEXT VALUE FOR construct 2016-03-15 19:13:58 -07:00
Sugu Sougoumarane 07dfac4313 Merge branch 'suguwork' into sequence 2016-03-14 17:02:50 -07:00
Sugu Sougoumarane fc8f0b5f56 Merge branch 'master' into suguwork 2016-03-14 17:02:42 -07:00
Sugu Sougoumarane 05aeab9457 seq: end-to-end tests 2016-03-14 16:59:21 -07:00
Alain Jobart f139939e29 Fixing a bug in table blacklisting.
If a tablet has blacklisted table rules that don't match
any existing tables, don't blacklist exverything.
In the process, allowing schema changes on databases with views,
as the integration test needs it, and it's a good fix anyway.
2016-03-14 08:19:31 -07:00