michelya / tungsten-replicator

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

Inserting data of type geometry crashes Tungsten master when using row replication #10

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
This issue is migrated from http://forge.continuent.org/jira/browse/TUC-143. 

Description      
The following SQL will make the master crash when row replication is enabled:

CREATE TABLE geom (name VARCHAR(64) CHARACTER SET utf8, bincol BLOB, shape 
GEOMETRY, binutf VARCHAR(64) CHARACTER SET utf8 COLLATE utf8_bin);
INSERT INTO geom (name, shape) VALUES ('test', GeomFromText('Point(132865 
501937)'));

This was detected with connector/mysql tests and is probably a regression

 All     Comments    Work Log    Change History           Sort Order: [Ascending order - Click to sort in descending order]
[ Permlink ]
Comment by Gilles Rayrat [11/Aug/10 10:39 AM]
Relevant replicator logs:

INFO | jvm 1 | 2010/08/08 09:37:27 | 2010-08-08 08:37:26,977 ERROR 
extractor.mysql.RowsLogEvent Failure while processing extracted write row event
INFO | jvm 1 | 2010/08/08 09:37:27 | 
com.continuent.tungsten.replicator.extractor.mysql.MySQLExtractException: 
unknown data type 255
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.extractor.mysql.RowsLogEvent.extractValue(Row
sLogEvent.java:812)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.extractor.mysql.RowsLogEvent.processExtracted
EventRow(RowsLogEvent.java:908)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.extractor.mysql.WriteRowsLogEvent.processExtr
actedEvent(WriteRowsLogEvent.java:73)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.extractor.mysql.MySQLExtractor.extractEvent(M
ySQLExtractor.java:792)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.extractor.mysql.MySQLExtractor.extract(MySQLE
xtractor.java:933)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.extractor.ExtractorWrapper.extract(ExtractorW
rapper.java:93)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.pipeline.SingleThreadStageTask.runTask(Single
ThreadStageTask.java:189)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.pipeline.SingleThreadStageTask.run(SingleThre
adStageTask.java:117)
INFO | jvm 1 | 2010/08/08 09:37:27 | at java.lang.Thread.run(Thread.java:595)
INFO | jvm 1 | 2010/08/08 09:37:27 | 2010-08-08 08:37:26,978 ERROR 
extractor.mysql.MySQLExtractor Failed to extract from mysql-bin.000002 (741)
INFO | jvm 1 | 2010/08/08 09:37:27 | 
com.continuent.tungsten.replicator.extractor.mysql.MySQLExtractException: 
unknown data type 255
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.extractor.mysql.RowsLogEvent.extractValue(Row
sLogEvent.java:812)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.extractor.mysql.RowsLogEvent.processExtracted
EventRow(RowsLogEvent.java:908)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.extractor.mysql.WriteRowsLogEvent.processExtr
actedEvent(WriteRowsLogEvent.java:73)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.extractor.mysql.MySQLExtractor.extractEvent(M
ySQLExtractor.java:792)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.extractor.mysql.MySQLExtractor.extract(MySQLE
xtractor.java:933)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.extractor.ExtractorWrapper.extract(ExtractorW
rapper.java:93)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.pipeline.SingleThreadStageTask.runTask(Single
ThreadStageTask.java:189)
INFO | jvm 1 | 2010/08/08 09:37:27 | at 
com.continuent.tungsten.replicator.pipeline.SingleThreadStageTask.run(SingleThre
adStageTask.java:117)
INFO | jvm 1 | 2010/08/08 09:37:27 | at java.lang.Thread.run(Thread.java:595)

[ Permlink ]
Comment by Stephane Giron [12/Aug/10 10:07 AM]
Probably not a regression as it seem it is not handled by 1.2 branch as well, 
from code inspection.

MySQLBinlog defines :
    public static final int MYSQL_TYPE_GEOMETRY = 255;

but this is never used/referenced

[ Permlink ]
Comment by Gilles Rayrat [13/Aug/10 05:26 AM]
Agreed - not a regression
Postponing to 1.3.1 

Original issue reported on code.google.com by berkeley...@gmail.com on 14 Apr 2011 at 9:08

GoogleCodeExporter commented 9 years ago

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

GoogleCodeExporter commented 9 years ago

Original comment by robert.h...@continuent.com on 23 Jan 2012 at 6:50