Skip to content

V3 Engine Code Refactor#2423

Merged
sougou merged 3 commits intovitessio:masterfrom
Flipkart:v3_refactor
Jan 3, 2017
Merged

V3 Engine Code Refactor#2423
sougou merged 3 commits intovitessio:masterfrom
Flipkart:v3_refactor

Conversation

@harshit-gangal
Copy link
Copy Markdown
Member

Changes

  • Most of the router code is moved to route.go
  • engine VCursor is modified to support the function calls performed on vtgate package.

Currently I am getting (missing Execute method) errors for the vindexes in route.go
go/vt/vtgate/engine/route.go:601: cannot use vcursor (type VCursor) as type vindexes.VCursor in argument to mapper.Map: VCursor does not implement vindexes.VCursor (missing Execute method)

Let me know what I am missing here.

PR is open for more code refactoring proposal.

@harshit-gangal harshit-gangal changed the title [WIP] V3 Engine Code Refactor V3 Engine Code Refactor Jan 2, 2017
@harshit-gangal
Copy link
Copy Markdown
Member Author

@sougou - Error is fixed now.

@sougou
Copy link
Copy Markdown
Contributor

sougou commented Jan 3, 2017

LGTM

This is a good start. We'll likely have to iterate on it over time in the following areas:

  • Simplify the VCursor interface by moving functionality around.
  • Move router_test into engine that uses a vcursor sandbox.

Approved with PullApprove

@sougou sougou merged commit eedfec8 into vitessio:master Jan 3, 2017
dispalt added a commit to dispalt/vitess that referenced this pull request Jan 9, 2017
* 'master' of https://github.com/youtube/vitess: (220 commits)
  vtgate/vindexes: Do not run testfiles.Locate() from init() (2nd time).
  Add comment to document when new fields are included in response
  publish site Fri Jan  6 08:02:30 PST 2017
  Updating doc.
  Optionally send additional C API fields through in responses
  Fixing explorer to handle empty files.
  MultiRow Insert Optimization (vitessio#2422)
  Now the local examples use 'zk2' topology.
  Adding Consul 0.7.2 to base docker image.
  etcd2topo: using lease ID in lock filenames.
  Implementing the Consul topology client.
  test: vtgate_buffer.py: Add second test for vtctl TabletExternallyReparented.
  test: vtgate_buffer.py: Stop the the two threads in case of a test error.
  test: vtgate_buffer.py: Move setup code from setUp to setUpModule.
  test: Add "demote_master_commands" to MysqlFlavor class.
  Include on clauses in impossible queries, to avoid only_full_group_by in aggregations with joins (vitessio#2433)
  Adds support for parsing queries with boolean value comparisons, i.e. true/false and =, !=, >, <, >=, <= (vitessio#2432)
  V3 Engine Code Refactor (vitessio#2423)
  Refactor impossible query generation, and support group by - (vitessio#2409)
  docker/test/run: Avoid using non-universal --tmpdir flag on mktemp (vitessio#2429)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants