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

49 Коммитов

Автор SHA1 Сообщение Дата
Sugu Sougoumarane 03dd9b6f32 []mproto.Field -> []*query.Field
This part 1 of the QueryResult revamp. With this change,
vitess does not see any MySQL types. The BSON layer still
sends mysql types for backward compatibility, which will
be deleted once deprecated.
2015-11-09 01:52:07 -08:00
Alain Jobart 9b59e8f782 Removing last use of key.KeyRange in vtgate gorpc code.
And then removing key.KeyRange.
2015-11-06 09:45:04 -08:00
Alain Jobart 51be389106 Submitting changes that were already made internally. 2015-11-05 07:33:02 -08:00
Alain Jobart b540fce0b2 Migrating from go's Session to proto3 Session. 2015-11-04 10:29:51 -08:00
Anthony Yeh c196bd044d vtgateclienttest: Add test case for NULL vs. empty string. 2015-10-27 18:40:51 -07:00
Sugu Sougoumarane d12476e9fe proto: migrate EntityIds 2015-10-25 22:02:58 -07:00
Sugu Sougoumarane 5aa0b5c830 proto: add error handling 2015-10-24 18:10:03 -07:00
Dominic Hamon fd1e0b8fff Introduce error for types that can't be bound to proto3.
Plumb the error all the way through the stack.
2015-10-22 12:44:50 -07:00
Anthony Yeh 7335bcd8bf Remove bsonp3 vtgate protocol.
It's no longer needed now that the PHP client uses gRPC.
2015-10-16 00:07:55 -07:00
Anthony Yeh fc34ab1fcd java/client: Implement canonical error conversion. 2015-10-06 15:13:44 -07:00
Ammar Aijazi b43fe513d9 Add more context for partialerrors in vtgateclienttest 2015-09-28 17:09:19 -07:00
Ammar Aijazi 6075687096 vtgateclienttest: add support for forcing errors in Begin, Commit, Rollback using callerid 2015-09-25 11:55:27 -07:00
Ammar Aijazi cabdd2c55b Add support for partial errors in vtgateclienttest errors service 2015-09-25 11:55:27 -07:00
Ammar Aijazi 8142cf80fa Support SteamExecute methods in vtgateclienttest errors service 2015-09-25 11:55:27 -07:00
Ammar Aijazi 10f6a6d725 Add more errors, with error codes, to vtgateclienttest 2015-09-25 11:55:27 -07:00
Anthony Yeh bb3286bf9f java: Add Cursor to new Java client and use SQLException.
This provides translation of reult row data into native Java types.
It's a slightly different design than Cursor in the old client, which
was more like an iterator. This one is more like a JDBC ResultSet.
I didn't call it a ResultSet because it doesn't implement the full
interface.

I also switched from custom exceptions to using the SQLException
hierarchy. It should have most of the error categories we need, and if
necessary we can add new exceptions as sub-categories. That way,
managing errors and retries should be much more similar to what someone
might be used to with JDBC.
2015-09-24 15:24:06 -07:00
Anthony Yeh 76efa6bfc6 Merge branch 'master' into vtgate-client-test 2015-09-22 17:05:18 -07:00
Anthony Yeh 5a179623ca Implement echo tests for goclienttest.
These are ported back from the new Java client tests. Now the Go tests
should be a complete reference implementation of currently available
test cases in vtgateclienttest.

As we add more test cases, we should first add a reference implementation
like this in Go, and then port the tests to other languages.
2015-09-22 16:54:49 -07:00
Dean Yasuda fb8d99d1af Merge branch 'master' into batch 2015-09-22 11:26:10 -07:00
Alain Jobart ff800b2a18 Retiring SpitQueryPart, using the proto3 version now.
Note the hadoop java code is broken, as it uses the old
java client and not the new one (and the bson structure changed).
The right fix is probably to switch to new client there.
2015-09-21 12:17:09 -07:00
Dean Yasuda fd2b83c34b Fix vtgateclienttest CallerID tests.
The previous CallerID test returns an err with a "SUCCESS: ..." message
when an sql CallerID query succeeds in order to return control to the
caller. This test needed to be updated to expect that.
2015-09-18 16:46:34 -07:00
Dean Yasuda 604cd01259 Support ExecuteBatchShard in vtgatev2.py.
Change the vtgateclienttest/services/callerid.go test to always return
an error when callerid is handled. The error will contain word
"SUCCESS:" if callerid matches. This is necessary since falling through
breaks the expectations of the caller.

In the connection's _execute_batch call, some routing will be
keyspace_ids, and some will be by shards. This means that an
_execute_batch may create both a ExecuteBatchKeyspaceIds and
ExecuteBatchShard call. Merge the results back together.

Add tests for ExecuteBatchShard in python_client_test.py and
vtgatev2_test.py.
2015-09-18 16:10:39 -07:00
Alain Jobart 7ac06dd180 more conversions to proto3 SrvKeyspace. Still not done yet. 2015-09-13 06:55:11 -07:00
Alain Jobart 38cded1cf9 Adding GetSrvShard to the vtgate server internal API.
(this is a short term fix to an internal google issue).
2015-09-02 12:21:44 -07:00
Alain Jobart 1017ce6cfc Removing SASL over BSON support. 2015-09-01 09:15:37 -07:00
Alain Jobart 45ae76c3f4 Changing type used by ExecuteEntityIds to be the proto3 one. 2015-08-31 08:11:37 -07:00
Alain Jobart 6dfb8431fd Now using []byte instead of key.KeyspaceId in vtgate. 2015-08-28 10:05:15 -07:00
Alain Jobart 31323e8c22 Now using proto3 KeyRange in vtgate's {,Stream}ExecuteKeyRanges. 2015-08-27 17:09:18 -07:00
Anthony Yeh 3ac1c1c211 vtgateclienttest: Add quit:// query to kill process.
Signals don't seem to work right in Travis, so this is an extra way to
tear down.
2015-08-23 19:13:31 -07:00
Anthony Yeh 0d58f755d2 Add new bson-encoded proto3 rpc flavor for vtgate. 2015-08-22 16:01:45 -07:00
Anthony Yeh fbee459180 java: Add tests for gRPC SplitQuery and GetSrvKeyspace. 2015-08-20 13:52:58 -07:00
Anthony Yeh db6827a7de java: Add echo tests for transactions and callerId. 2015-08-20 11:56:28 -07:00
Anthony Yeh e67cbc5911 vtgateclienttest: Add echo service for codec testing. 2015-08-20 02:15:20 -07:00
Alain Jobart 4345cdd655 Fixing SplitQuery now. 2015-08-12 14:13:48 -07:00
Alain Jobart 27c5c2ec3e Now converting ExecuteBatchShards and ExecuteBatchKeyspaceIds. 2015-08-12 13:26:17 -07:00
Alain Jobart 92159a08f4 now converting ExecuteEntityIds. 2015-08-12 12:21:07 -07:00
Alain Jobart 301adba7e5 ExecuteKeyRanges and StreamExecuteKeyRanges are now converted. 2015-08-12 11:24:50 -07:00
Alain Jobart 9b5ac9a3d5 ExecuteKeyspaceIds and StreamExecuteKeyspaceIds now done to. 2015-08-12 10:41:31 -07:00
Alain Jobart fedecd34a2 Not using vtgate.proto.QueryShard any more in vtgate. 2015-08-12 09:49:46 -07:00
Alain Jobart 10ccd8ccbf Not using vtgate/proto.Query in vtgate interface any more.
(this is too linked to the BSON version).
2015-08-12 09:02:48 -07:00
Alain Jobart cfac40d1e6 Changing go vtgate client to use pb.TabletType. 2015-08-11 10:42:34 -07:00
Alain Jobart 9d08e24be0 Adding a main file for test libraries. 2015-08-10 15:15:33 -07:00
Alain Jobart dc54dab9d8 Move files around. Now have a proper library, and the unit tests
are in sub-libraries.
2015-08-10 15:00:23 -07:00
Alain Jobart 07a81e272c Adding comment. 2015-08-07 08:50:50 -07:00
Alain Jobart dddbdbfb5f Adding unit tests for the go client.
We don't need to fork vtgateclienttest, we can just execute it
in process. The test cases are meant to be the blue print of all the
client implementation unit tests.
2015-08-06 17:46:45 -07:00
Alain Jobart cfa4c4b056 Adding a server-side test scenario for callerid in vtgate. 2015-08-06 11:51:12 -07:00
Alain Jobart 67e7c406b5 Adding the plumbing for vtgateservice.GetSrvKeyspace in python.
Re-using the keyspace.Keyspace object, as it has what we need,
until we use the proto3 version.
2015-07-28 16:40:07 -07:00
Alain Jobart 766c52b88e Adding GetSrvKeyspace to vtgate API. 2015-07-28 15:55:06 -07:00
Alain Jobart d4a91c59bd Adding vtgateclienttest, and using it for python client.
A lot more work will happen there over the next few weeks.
2015-07-27 15:36:30 -07:00