本文整理了Java中com.github.shyiko.mysql.binlog.event.QueryEventData
类的一些代码示例,展示了QueryEventData
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QueryEventData
类的具体详情如下:
包路径:com.github.shyiko.mysql.binlog.event.QueryEventData
类名称:QueryEventData
暂无
代码示例来源:origin: apache/rocketmq-externals
private void processQueryEvent(Event event) {
QueryEventData data = event.getData();
String sql = data.getSql();
if (createTablePattern.matcher(sql).find()) {
schema.reset();
}
}
代码示例来源:origin: zendesk/maxwell
private void processQueryEvent(BinlogConnectorEvent event) throws Exception {
QueryEventData data = event.queryData();
processQueryEvent(
data.getDatabase(),
data.getSql(),
this.schemaStore,
Position.valueOf(event.getPosition(), getLastHeartbeatRead()),
Position.valueOf(event.getNextPosition(), getLastHeartbeatRead()),
event.getEvent().getHeader().getTimestamp()
);
}
代码示例来源:origin: debezium/debezium
QueryEventData command = unwrapData(event);
logger.debug("Received query command: {}", event);
String sql = command.getSql().trim();
if (sql.equalsIgnoreCase("BEGIN")) {
source.setBinlogThread(command.getThreadId());
if (initialEventsToSkip != 0) {
logger.debug("Restarting partially-processed transaction; change events will not be created for the first {} events plus {} more rows in the next event",
MySqlConnectorConfig.BUFFER_SIZE_FOR_BINLOG_READER.name());
context.dbSchema().applyDdl(context.source(), command.getDatabase(), command.getSql(), (dbName, statements) -> {
if (recordSchemaChangesInSourceRecords && recordMakers.schemaChanges(dbName, statements, super::enqueueRecord) > 0) {
logger.debug("Recorded DDL statements for database '{}': {}", dbName, statements);
代码示例来源:origin: shyiko/mysql-binlog-connector-java
@Override
public QueryEventData deserialize(ByteArrayInputStream inputStream) throws IOException {
QueryEventData eventData = new QueryEventData();
eventData.setThreadId(inputStream.readLong(4));
eventData.setExecutionTime(inputStream.readLong(4));
inputStream.skip(1); // length of the name of the database
eventData.setErrorCode(inputStream.readInteger(2));
inputStream.skip(inputStream.readInteger(2)); // status variables block
eventData.setDatabase(inputStream.readZeroTerminatedString());
eventData.setSql(inputStream.readString(inputStream.available()));
return eventData;
}
}
代码示例来源:origin: zendesk/maxwell
case QUERY:
QueryEventData qe = event.queryData();
String sql = qe.getSql();
if (BinlogConnectorEvent.BEGIN.equals(sql)) {
try {
rowBuffer.setThreadId(qe.getThreadId());
rowBuffer.setSchemaId(getSchemaId());
} else {
代码示例来源:origin: zendesk/maxwell
public boolean isCommitEvent() {
EventType eventType = getType();
if (eventType == EventType.XID) {
return true;
} else if (eventType == EventType.QUERY) {
// MyISAM will output a "COMMIT" QUERY_EVENT instead of a XID_EVENT.
// There's no transaction ID but we can still set "commit: true"
return COMMIT.equals(queryData().getSql());
}
return false;
}
代码示例来源:origin: apache/nifi
case QUERY:
QueryEventData queryEventData = event.getData();
currentDatabase = queryEventData.getDatabase();
String sql = queryEventData.getSql();
代码示例来源:origin: shyiko/mysql-binlog-connector-java
case QUERY:
QueryEventData queryEventData = (QueryEventData) EventDataWrapper.internal(event.getData());
String sql = queryEventData.getSql();
if (sql == null) {
break;
代码示例来源:origin: org.apache.nifi/nifi-cdc-mysql-processors
case QUERY:
QueryEventData queryEventData = event.getData();
currentDatabase = queryEventData.getDatabase();
String sql = queryEventData.getSql();
代码示例来源:origin: debezium/debezium
QueryEventData command = reader.unwrapData(event);
LOGGER.debug("Received query command: {}", event);
String sql = command.getSql().trim();
if (sql.equalsIgnoreCase("BEGIN")) {
beginTransaction(event);
代码示例来源:origin: debezium/debezium
/**
* Test case that is normally commented out since it is only useful to print out the DDL statements recorded by
* the binlog during a MySQL server initialization and startup.
*
* @throws Exception if there are problems
*/
@Ignore
@Test
public void shouldCaptureQueryEventData() throws Exception {
// Testing.Print.enable();
startClient(client -> {
client.setBinlogFilename("mysql-bin.000001");
client.setBinlogPosition(4);
});
counters.consumeAll(5, TimeUnit.SECONDS);
List<QueryEventData> allQueryEvents = recordedEventData(QueryEventData.class, -1);
allQueryEvents.forEach(event -> {
String sql = event.getSql();
if (sql.equalsIgnoreCase("BEGIN") || sql.equalsIgnoreCase("COMMIT")) return;
System.out.println(event.getSql());
});
}
代码示例来源:origin: zendesk/maxwell
case QUERY:
QueryEventData qe = event.queryData();
String sql = qe.getSql();
String upperCaseSql = sql.toUpperCase();
代码示例来源:origin: perfectsense/dari
@Override
public String getSql() {
if (super.getSql() == null) {
setSql(new String(statement, Charsets.US_ASCII));
}
return super.getSql();
}
代码示例来源:origin: io.debezium/debezium-connector-mysql
/**
* Test case that is normally commented out since it is only useful to print out the DDL statements recorded by
* the binlog during a MySQL server initialization and startup.
*
* @throws Exception if there are problems
*/
@Ignore
@Test
public void shouldCaptureQueryEventData() throws Exception {
// Testing.Print.enable();
startClient(client -> {
client.setBinlogFilename("mysql-bin.000001");
client.setBinlogPosition(4);
});
counters.consumeAll(5, TimeUnit.SECONDS);
List<QueryEventData> allQueryEvents = recordedEventData(QueryEventData.class, -1);
allQueryEvents.forEach(event -> {
String sql = event.getSql();
if (sql.equalsIgnoreCase("BEGIN") || sql.equalsIgnoreCase("COMMIT")) return;
System.out.println(event.getSql());
});
}
内容来源于网络,如有侵权,请联系作者删除!