private void processWriteEvent(Event event) { WriteRowsEventData data = event.getData(); Long tableId = data.getTableId(); List<Serializable[]> list = data.getRows(); for (Serializable[] row : list) { addRow("WRITE", tableId, row); } }
long tableNumber = write.getTableId(); BitSet includedColumns = write.getIncludedColumns(); RecordsForTable recordMaker = recordMakers.forTable(tableNumber, includedColumns, super::enqueueRecord);
public Long getTableID() { EventData data = event.getData(); switch ( event.getHeader().getEventType() ) { case EXT_WRITE_ROWS: case WRITE_ROWS: return ((WriteRowsEventData) data).getTableId(); case EXT_UPDATE_ROWS: case UPDATE_ROWS: return ((UpdateRowsEventData) data).getTableId(); case EXT_DELETE_ROWS: case DELETE_ROWS: return ((DeleteRowsEventData) data).getTableId(); case TABLE_MAP: return ((TableMapEventData) data).getTableId(); } return null; }
@Override public WriteRowsEventData deserialize(ByteArrayInputStream inputStream) throws IOException { WriteRowsEventData eventData = new WriteRowsEventData(); eventData.setTableId(inputStream.readLong(6)); inputStream.skip(2); // reserved if (mayContainExtraInformation) { int extraInfoLength = inputStream.readInteger(2); inputStream.skip(extraInfoLength - 2); } int numberOfColumns = inputStream.readPackedInteger(); eventData.setIncludedColumns(inputStream.readBitSet(numberOfColumns, true)); eventData.setRows(deserializeRows(eventData.getTableId(), eventData.getIncludedColumns(), inputStream)); return eventData; }
private void handleWriteRowsEvent(Event event, Consumer<M> eventConsumer) { logger.debug("Got binlog event {}", event); offset = ((EventHeaderV4) event.getHeader()).getPosition(); WriteRowsEventData eventData = event.getData(); if (tableMapEventByTableId.containsKey(eventData.getTableId())) { try { eventConsumer.accept(writeRowsEventDataParser.parseEventData(eventData, getCurrentBinlogFilename(), offset ) ); } catch (IOException e) { throw new RuntimeException("Event row parsing exception", e); } } }
WriteRowsEventData d = (WriteRowsEventData) eventData; if (d.getTableId() == recordTableId) { d.getRows().forEach(row -> { if (LOGGER.isInfoEnabled()) {
tableId = ((WriteRowsEventData) eventData).getTableId(); } else if (EventType.isUpdate(eventType)) { tableId = ((UpdateRowsEventData) eventData).getTableId();
offset = ((EventHeaderV4) event.getHeader()).getPosition(); WriteRowsEventData eventData = event.getData(); if (tableMapEventByTableId.containsKey(eventData.getTableId())) { try { eventConsumer.accept(writeRowsEventDataParser.parseEventData(eventData,
@Override public WriteRowsEventData deserialize(ByteArrayInputStream inputStream) throws IOException { WriteRowsEventData eventData = new WriteRowsEventData(); eventData.setTableId(inputStream.readLong(6)); inputStream.skip(2); // reserved if (mayContainExtraInformation) { int extraInfoLength = inputStream.readInteger(2); inputStream.skip(extraInfoLength - 2); } int numberOfColumns = inputStream.readPackedInteger(); eventData.setIncludedColumns(inputStream.readBitSet(numberOfColumns, true)); eventData.setRows(deserializeRows(eventData.getTableId(), eventData.getIncludedColumns(), inputStream)); return eventData; }