src/java/org/apache/cassandra/service/MigrationManager.java
/** 
     * will either push or pull an updating depending on who is behind.
     * fat clients should never push their schemas (since they have no local storage).
     */
will either push or pull an updating depending on who is behind.
fat clients should never push their schemas (since they have no local storage).
will either push or pull an updating depending on who is behind . fat clients should never push their schemas ( since they have no local storage ) .
public static void rectify(UUID theirVersion, InetAddress endpoint)
    {
        updateHighestKnown(theirVersion);
        UUID myVersion = Schema.instance.getVersion();
        if (theirVersion.timestamp() < myVersion.timestamp()
            && !StorageService.instance.isClientMode())
        {
            if (lastPushed.get(endpoint) == null || theirVersion.timestamp() >= lastPushed.get(endpoint).timestamp())
            {
                logger.debug("Schema on {} is old. Sending updates since {}", endpoint, theirVersion);
                Collection<IColumn> migrations = Migration.getLocalMigrations(theirVersion, myVersion);
                pushMigrations(endpoint, migrations);
                lastPushed.put(endpoint, TimeUUIDType.instance.compose(Iterables.getLast(migrations).name()));
            }
            else
            {
                logger.debug("Waiting for {} to process migrations up to {} before sending more",
                             endpoint, lastPushed.get(endpoint));
            }
        }
    }
public static void rectify ( UUID theirVersion , InetAddress endpoint ) { updateHighestKnown ( theirVersion ) ; UUID myVersion = Schema . instance . getVersion ( ) ; if ( theirVersion . timestamp ( ) < myVersion . timestamp ( ) && ! StorageService . instance . isClientMode ( ) ) { if ( lastPushed . get ( endpoint ) == null || theirVersion . timestamp ( ) >= lastPushed . get ( endpoint ) . timestamp ( ) ) { logger . debug ( "Schema on {} is old. Sending updates since {}" , endpoint , theirVersion ) ; Collection < IColumn > migrations = Migration . getLocalMigrations ( theirVersion , myVersion ) ; pushMigrations ( endpoint , migrations ) ; lastPushed . put ( endpoint , TimeUUIDType . instance . compose ( Iterables . getLast ( migrations ) . name ( ) ) ) ; } else { logger . debug ( "Waiting for {} to process migrations up to {} before sending more" , endpoint , lastPushed . get ( endpoint ) ) ; } } }
will either push or pull an updating depending on who is behind.
will either push or pull an updating depending on who is behind .