Skip to content

seed

django_spire.contrib.sync.django.seed

logger = logging.getLogger(__name__) module-attribute

seed_clock

Source code in django_spire/contrib/sync/django/seed.py
def seed_clock(
    clock: HybridLogicalClock,
    models: list[type[SyncableMixin]],
) -> None:
    high_water = 0

    for model in models:
        result = model.objects.aggregate(max_ts=Max('sync_field_last_modified'))
        timestamp = result['max_ts'] or 0

        high_water = max(high_water, timestamp)

    if high_water:
        clock.receive(high_water)
        logger.info('Seeded HLC from database: %d', high_water)