zkfan / tungsten-replicator

Automatically exported from code.google.com/p/tungsten-replicator
0 stars 0 forks source link

Upgrade parsing of SQL for MySQL DBMS #150

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
1. To which tool/application/daemon will this feature apply?

Tungsten Replicator.  

2. Describe the feature in general

Tungsten parses statements during shard assignment to detect the type of 
operation, as well as the affected schema (if specified explicitly) and table.  
While it is possible to use the default schema, this means we would not detect 
cross schema updates.  This condition will be corrected as follows. 

a. Tungsten parsing will be upgraded to identify all commonly used MySQL 
statements correctly.  This includes combinations of comments (/* */, //, --, 
etc.). 

b. There will be a status counter to count failed parses so that we can ensure 
failures are not occurring.   There will be a status variable to store the 
sequence number of the last transaction that had a parsing failure. 

c. There will be a configurable option to log the sequence numbers of failed 
parses to a log.  

3. Describe the feature interface

This is internal.  

4. Give an idea (if applicable) of a possible implementation

Requires improvements to the MySQLOperationMatcher class, which is responsible 
for parsing. 

5. Describe pros and cons of this feature.

5a. Why the world will be a better place with this feature.

There would be fewer cases of unparsed, hence faster and more reliable 
performance of parallel replication. 

5b. What hardship will the human race have to endure if this feature is
implemented.

If badly done, parsing can slow down processing of statements.  

6. Notes

Original issue reported on code.google.com by berkeley...@gmail.com on 3 Jul 2011 at 11:22

GoogleCodeExporter commented 9 years ago

Original comment by berkeley...@gmail.com on 26 Aug 2011 at 12:10

GoogleCodeExporter commented 9 years ago

Original comment by berkeley...@gmail.com on 8 Sep 2011 at 5:17

GoogleCodeExporter commented 9 years ago

Original comment by berkeley...@gmail.com on 8 Sep 2011 at 5:18

GoogleCodeExporter commented 9 years ago

Original comment by robert.h...@continuent.com on 1 Mar 2012 at 9:45

GoogleCodeExporter commented 9 years ago

Original comment by robert.h...@continuent.com on 1 Mar 2012 at 9:46

GoogleCodeExporter commented 9 years ago

Original comment by robert.h...@continuent.com on 20 Sep 2012 at 5:05

GoogleCodeExporter commented 9 years ago

Original comment by robert.h...@continuent.com on 5 Nov 2012 at 1:50

GoogleCodeExporter commented 9 years ago
A lot of parsing already in place.

Original comment by linas.vi...@continuent.com on 18 Mar 2013 at 5:54

GoogleCodeExporter commented 9 years ago
We'll use 2.1.0 instead of 2.0.8, hence moving the issues.

Original comment by linas.vi...@continuent.com on 27 Mar 2013 at 3:14