public String getClient() { return header.getClient(); }
private long writeDatabaseVersionHeaderInternal(Connection connection, DatabaseVersionHeader databaseVersionHeader) throws SQLException { try (PreparedStatement preparedStatement = connection.prepareStatement( DatabaseConnectionFactory.getStatement("databaseversion.insert.all.writeDatabaseVersion.sql"), Statement.RETURN_GENERATED_KEYS)) { preparedStatement.setString(1, DatabaseVersionStatus.MASTER.toString()); preparedStatement.setTimestamp(2, new Timestamp(databaseVersionHeader.getDate().getTime())); preparedStatement.setString(3, databaseVersionHeader.getClient()); preparedStatement.setString(4, databaseVersionHeader.getVectorClock().toString()); int affectedRows = preparedStatement.executeUpdate(); if (affectedRows == 0) { throw new SQLException("Cannot add database version header. Affected rows is zero."); } try (ResultSet resultSet = preparedStatement.getGeneratedKeys()) { if (resultSet.next()) { return resultSet.getLong(1); } else { throw new SQLException("Cannot get new database version ID"); } } } }
public void writeMuddyMultiChunks(Map<DatabaseVersionHeader, Collection<MultiChunkEntry>> muddyMultiChunksPerDatabaseVersion) throws SQLException { PreparedStatement preparedStatement = getStatement("multichunk_muddy.insert.muddy.writeMuddyMultiChunks.sql"); for (DatabaseVersionHeader muddyDatabaseVersionHeader : muddyMultiChunksPerDatabaseVersion.keySet()) { Collection<MultiChunkEntry> muddyMultiChunks = muddyMultiChunksPerDatabaseVersion.get(muddyDatabaseVersionHeader); for (MultiChunkEntry muddyMultiChunk : muddyMultiChunks) { String multiChunkIdStr = muddyMultiChunk.getId().toString(); String clientName = muddyDatabaseVersionHeader.getClient(); Long clientVersion = muddyDatabaseVersionHeader.getVectorClock().getClock(clientName); preparedStatement.setString(1, multiChunkIdStr); preparedStatement.setString(2, clientName); preparedStatement.setLong(3, clientVersion); preparedStatement.addBatch(); } } preparedStatement.executeBatch(); preparedStatement.close(); }
rangeClientName = currentDatabaseVersionHeader.getClient(); rangeVersionFrom = currentDatabaseVersionHeader.getVectorClock(); rangeVersionTo = currentDatabaseVersionHeader.getVectorClock();
localDatabase.markDatabaseVersionDirty(databaseVersionHeader.getVectorClock()); boolean isOwnDatabaseVersionHeader = config.getMachineName().equals(databaseVersionHeader.getClient());
lightweightDatabaseVersion.setClient(databaseVersion.getHeader().getClient()); lightweightDatabaseVersion.setDate(databaseVersion.getHeader().getDate()); lightweightDatabaseVersion.setChangeSet(changedFiles);