models
django_spire.contrib.sync.django.models
__all__ = ['SyncCheckpoint', 'SyncNodeLock', 'SyncSession', 'SyncTombstone']
module-attribute
SyncCheckpoint
Bases: Model
after_keys = models.JSONField(default=dict, blank=True)
class-attribute
instance-attribute
node_id = models.CharField(max_length=255, unique=True)
class-attribute
instance-attribute
timestamp = models.BigIntegerField(default=0)
class-attribute
instance-attribute
updated_at = models.DateTimeField(auto_now=True)
class-attribute
instance-attribute
Meta
app_label = 'sync'
class-attribute
instance-attribute
db_table = 'django_spire_sync_checkpoint'
class-attribute
instance-attribute
SyncNodeLock
Bases: Model
node_id = models.CharField(max_length=255, primary_key=True)
class-attribute
instance-attribute
updated_at = models.DateTimeField(auto_now=True)
class-attribute
instance-attribute
Meta
app_label = 'sync'
class-attribute
instance-attribute
db_table = 'django_spire_sync_node_lock'
class-attribute
instance-attribute
SyncSession
Bases: Model
id = models.UUIDField(primary_key=True, default=(uuid.uuid4), editable=False)
class-attribute
instance-attribute
node_id = models.CharField(max_length=255)
class-attribute
instance-attribute
phase = models.CharField(max_length=20, default='collecting')
class-attribute
instance-attribute
started_at = models.DateTimeField(auto_now_add=True)
class-attribute
instance-attribute
completed_at = models.DateTimeField(null=True, blank=True)
class-attribute
instance-attribute
duration_ms = models.PositiveIntegerField(null=True, blank=True)
class-attribute
instance-attribute
status = models.CharField(max_length=20, default='pending')
class-attribute
instance-attribute
records_pushed = models.PositiveIntegerField(default=0)
class-attribute
instance-attribute
records_applied = models.PositiveIntegerField(default=0)
class-attribute
instance-attribute
records_created = models.PositiveIntegerField(default=0)
class-attribute
instance-attribute
records_deleted = models.PositiveIntegerField(default=0)
class-attribute
instance-attribute
conflicts = models.PositiveIntegerField(default=0)
class-attribute
instance-attribute
errors = models.PositiveIntegerField(default=0)
class-attribute
instance-attribute
details = models.JSONField(default=dict, blank=True)
class-attribute
instance-attribute
Meta
app_label = 'sync'
class-attribute
instance-attribute
db_table = 'django_spire_sync_session'
class-attribute
instance-attribute
indexes = [models.Index(fields=['node_id', 'status'], name='sync_session_node_status_idx')]
class-attribute
instance-attribute
ordering = ['-started_at']
class-attribute
instance-attribute
SyncTombstone
Bases: Model