This commit is contained in:
Iliyan Angelov
2025-09-19 11:58:53 +03:00
parent 306b20e24a
commit 6b247e5b9f
11423 changed files with 1500615 additions and 778 deletions

View File

@@ -0,0 +1,59 @@
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
]
operations = [
migrations.CreateModel(
name='TaskResult',
fields=[
('id', models.AutoField(auto_created=True,
primary_key=True,
serialize=False,
verbose_name='ID')),
('task_id', models.CharField(
max_length=getattr(
settings,
'DJANGO_CELERY_RESULTS_TASK_ID_MAX_LENGTH',
255
),
unique=True,
verbose_name='task id'
)),
('status', models.CharField(choices=[('FAILURE', 'FAILURE'),
('PENDING', 'PENDING'),
('RECEIVED', 'RECEIVED'),
('RETRY', 'RETRY'),
('REVOKED', 'REVOKED'),
('STARTED', 'STARTED'),
('SUCCESS', 'SUCCESS')],
default='PENDING',
max_length=50,
verbose_name='state')),
('content_type', models.CharField(
max_length=128, verbose_name='content type')),
('content_encoding', models.CharField(
max_length=64, verbose_name='content encoding')),
('result', models.TextField(default=None, editable=False,
null=True)),
('date_done', models.DateTimeField(
auto_now=True, verbose_name='done at')),
('traceback', models.TextField(
blank=True, null=True, verbose_name='traceback')),
('hidden', models.BooleanField(
db_index=True, default=False, editable=False)),
('meta', models.TextField(default=None, editable=False,
null=True)),
],
options={
'verbose_name': 'task result',
'verbose_name_plural': 'task results',
},
),
]

View File

@@ -0,0 +1,30 @@
# Generated by Django 1.9.1 on 2017-10-26 16:06
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('django_celery_results', '0001_initial'),
]
operations = [
migrations.AddField(
model_name='taskresult',
name='task_args',
field=models.TextField(null=True, verbose_name='task arguments'),
),
migrations.AddField(
model_name='taskresult',
name='task_kwargs',
field=models.TextField(null=True, verbose_name='task kwargs'),
),
migrations.AddField(
model_name='taskresult',
name='task_name',
field=models.CharField(max_length=255, null=True,
verbose_name='task name'
),
),
]

View File

@@ -0,0 +1,21 @@
# Generated by Django 2.1 on 2018-11-06 11:01
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('django_celery_results', '0002_add_task_name_args_kwargs'),
]
operations = [
migrations.AlterModelOptions(
name='taskresult',
options={
'ordering': ['-date_done'],
'verbose_name': 'task result',
'verbose_name_plural': 'task results'
},
),
]

View File

@@ -0,0 +1,97 @@
# Generated by Django 1.11.20 on 2019-05-16 04:12
# this file is auto-generated so don't do flake8 on it
# flake8: noqa
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('django_celery_results', '0003_auto_20181106_1101'),
]
operations = [
migrations.AlterField(
model_name='taskresult',
name='content_encoding',
field=models.CharField(help_text='The encoding used to save the task result data', max_length=64, verbose_name='Result Encoding'),
),
migrations.AlterField(
model_name='taskresult',
name='content_type',
field=models.CharField(help_text='Content type of the result data', max_length=128, verbose_name='Result Content Type'),
),
migrations.AlterField(
model_name='taskresult',
name='date_done',
field=models.DateTimeField(auto_now=True, db_index=True, help_text='Datetime field when the task was completed in UTC', verbose_name='Completed DateTime'),
),
migrations.AlterField(
model_name='taskresult',
name='hidden',
field=models.BooleanField(db_index=True, default=False, editable=False, help_text='Soft Delete flag that can be used instead of full delete', verbose_name='Hidden'),
),
migrations.AlterField(
model_name='taskresult',
name='meta',
field=models.TextField(default=None, editable=False, help_text='JSON meta information about the task, such as information on child tasks', null=True, verbose_name='Task Meta Information'),
),
migrations.AlterField(
model_name='taskresult',
name='result',
field=models.TextField(default=None, editable=False, help_text='The data returned by the task. Use content_encoding and content_type fields to read.', null=True, verbose_name='Result Data'),
),
migrations.AlterField(
model_name='taskresult',
name='status',
field=models.CharField(choices=[('FAILURE', 'FAILURE'), ('PENDING', 'PENDING'), ('RECEIVED', 'RECEIVED'), ('RETRY', 'RETRY'), ('REVOKED', 'REVOKED'), ('STARTED', 'STARTED'), ('SUCCESS', 'SUCCESS')], db_index=True, default='PENDING', help_text='Current state of the task being run', max_length=50, verbose_name='Task State'),
),
migrations.AlterField(
model_name='taskresult',
name='task_args',
field=models.TextField(help_text='JSON representation of the positional arguments used with the task', null=True, verbose_name='Task Positional Arguments'),
),
migrations.AlterField(
model_name='taskresult',
name='task_id',
field=models.CharField(
db_index=True,
help_text='Celery ID for the Task that was run',
max_length=getattr(
settings,
'DJANGO_CELERY_RESULTS_TASK_ID_MAX_LENGTH',
255
),
unique=True,
verbose_name='Task ID'
),
),
migrations.AlterField(
model_name='taskresult',
name='task_kwargs',
field=models.TextField(help_text='JSON representation of the named arguments used with the task', null=True, verbose_name='Task Named Arguments'),
),
migrations.AlterField(
model_name='taskresult',
name='task_name',
field=models.CharField(
db_index=True,
help_text='Name of the Task which was run',
max_length=getattr(
settings,
'DJANGO_CELERY_RESULTS_TASK_ID_MAX_LENGTH',
255
),
null=True,
verbose_name='Task Name'),
),
migrations.AlterField(
model_name='taskresult',
name='traceback',
field=models.TextField(blank=True, help_text='Text of the traceback if the task generated one', null=True, verbose_name='Traceback'),
),
]

View File

@@ -0,0 +1,25 @@
# Generated by Django 1.11.22 on 2019-07-24 15:38
# this file is auto-generated so don't do flake8 on it
# flake8: noqa
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('django_celery_results', '0004_auto_20190516_0412'),
]
operations = [
migrations.AddField(
model_name='taskresult',
name='worker',
field=models.CharField(db_index=True, default=None,
help_text='Worker that executes the task',
max_length=100, null=True,
verbose_name='Worker'),
),
]

View File

@@ -0,0 +1,46 @@
# Generated by Django 2.2.4 on 2019-08-21 19:53
# this file is auto-generated so don't do flake8 on it
# flake8: noqa
import django.utils.timezone
from django.db import migrations, models
def copy_date_done_to_date_created(apps, schema_editor):
TaskResult = apps.get_model('django_celery_results', 'taskresult')
db_alias = schema_editor.connection.alias
TaskResult.objects.using(db_alias).all().update(
date_created=models.F('date_done')
)
def reverse_copy_date_done_to_date_created(app, schema_editor):
# the reverse of 'copy_date_done_to_date_created' is do nothing
# because the 'date_created' will be removed.
pass
class Migration(migrations.Migration):
dependencies = [
('django_celery_results', '0005_taskresult_worker'),
]
operations = [
migrations.AddField(
model_name='taskresult',
name='date_created',
field=models.DateTimeField(
auto_now_add=True,
db_index=True,
default=django.utils.timezone.now,
help_text='Datetime field when the task result was created in UTC',
verbose_name='Created DateTime'
),
preserve_default=False,
),
migrations.RunPython(copy_date_done_to_date_created,
reverse_copy_date_done_to_date_created),
]

View File

@@ -0,0 +1,21 @@
# Generated by Django 2.2.6 on 2019-10-27 11:29
# this file is auto-generated so don't do flake8 on it
# flake8: noqa
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('django_celery_results', '0006_taskresult_date_created'),
]
operations = [
migrations.RemoveField(
model_name='taskresult',
name='hidden',
),
]

View File

@@ -0,0 +1,40 @@
# Generated by Django 3.0.6 on 2020-05-12 12:05
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('django_celery_results', '0007_remove_taskresult_hidden'),
]
operations = [
migrations.CreateModel(
name='ChordCounter',
fields=[
('id', models.AutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name='ID')),
('group_id', models.CharField(
db_index=True,
help_text='Celery ID for the Chord header group',
max_length=getattr(
settings,
'DJANGO_CELERY_RESULTS_TASK_ID_MAX_LENGTH',
255
),
unique=True,
verbose_name='Group ID')),
('sub_tasks', models.TextField(
help_text='JSON serialized list of task result tuples. '
'use .group_result() to decode')),
('count', models.PositiveIntegerField(
help_text='Starts at len(chord header) '
'and decrements after each task is finished')),
],
),
]

View File

@@ -0,0 +1,222 @@
# Generated by Django 3.2 on 2021-04-19 14:55
from django.conf import settings
from django.db import migrations, models
class FakeAddIndex(migrations.AddIndex):
"""Fake AddIndex to correct for duplicate index
added in the original 0009 migration
"""
def database_forwards(self, *args, **kwargs):
"""Don't do anything"""
def database_backwards(self, *args, **kwargs):
"""Also don't do anything on reverting this migration
The duplicate index will be cleaned up when migrating from the
original 0009 to the cleanup 0010
"""
class Migration(migrations.Migration):
dependencies = [
('django_celery_results', '0008_chordcounter'),
]
operations = [
migrations.CreateModel(
name='GroupResult',
fields=[
('id', models.AutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name='ID')),
('group_id', models.CharField(
help_text='Celery ID for the Group that was run',
max_length=getattr(
settings,
'DJANGO_CELERY_RESULTS_TASK_ID_MAX_LENGTH',
255
),
unique=True,
verbose_name='Group ID')),
('date_created', models.DateTimeField(
auto_now_add=True,
help_text='Datetime field when the group result '
'was created in UTC',
verbose_name='Created DateTime')),
('date_done', models.DateTimeField(
auto_now=True,
help_text='Datetime field when the group was '
'completed in UTC',
verbose_name='Completed DateTime')),
('content_type', models.CharField(
help_text='Content type of the result data',
max_length=128,
verbose_name='Result Content Type')),
('content_encoding', models.CharField(
help_text='The encoding used to save the task '
'result data',
max_length=64,
verbose_name='Result Encoding')),
('result', models.TextField(
default=None,
editable=False,
help_text='The data returned by the task. Use '
'content_encoding and content_type '
'fields to read.',
null=True,
verbose_name='Result Data')),
],
options={
'verbose_name': 'group result',
'verbose_name_plural': 'group results',
'ordering': ['-date_done'],
},
),
migrations.AlterField(
model_name='chordcounter',
name='group_id',
field=models.CharField(
help_text='Celery ID for the Chord header group',
max_length=getattr(
settings,
'DJANGO_CELERY_RESULTS_TASK_ID_MAX_LENGTH',
255
),
unique=True,
verbose_name='Group ID'),
),
migrations.AlterField(
model_name='taskresult',
name='date_created',
field=models.DateTimeField(
auto_now_add=True,
help_text='Datetime field when the task result '
'was created in UTC',
verbose_name='Created DateTime'),
),
migrations.AlterField(
model_name='taskresult',
name='date_done',
field=models.DateTimeField(
auto_now=True,
help_text='Datetime field when the task was completed in UTC',
verbose_name='Completed DateTime'),
),
migrations.AlterField(
model_name='taskresult',
name='status',
field=models.CharField(
choices=[
('FAILURE', 'FAILURE'),
('PENDING', 'PENDING'),
('RECEIVED', 'RECEIVED'),
('RETRY', 'RETRY'),
('REVOKED', 'REVOKED'),
('STARTED', 'STARTED'),
('SUCCESS', 'SUCCESS')],
default='PENDING',
help_text='Current state of the task being run',
max_length=50,
verbose_name='Task State'),
),
migrations.AlterField(
model_name='taskresult',
name='task_id',
field=models.CharField(
help_text='Celery ID for the Task that was run',
max_length=getattr(
settings,
'DJANGO_CELERY_RESULTS_TASK_ID_MAX_LENGTH',
255
),
unique=True,
verbose_name='Task ID'),
),
migrations.AlterField(
model_name='taskresult',
name='task_name',
field=models.CharField(
help_text='Name of the Task which was run',
max_length=getattr(
settings,
'DJANGO_CELERY_RESULTS_TASK_ID_MAX_LENGTH',
255
),
null=True,
verbose_name='Task Name'),
),
migrations.AlterField(
model_name='taskresult',
name='worker',
field=models.CharField(
default=None,
help_text='Worker that executes the task',
max_length=100,
null=True,
verbose_name='Worker'),
),
FakeAddIndex(
model_name='chordcounter',
index=models.Index(
fields=['group_id'],
name='django_cele_group_i_299b0d_idx'),
),
FakeAddIndex(
model_name='taskresult',
index=models.Index(
fields=['task_id'],
name='django_cele_task_id_7f8fca_idx'),
),
migrations.AddIndex(
model_name='taskresult',
index=models.Index(
fields=['task_name'],
name='django_cele_task_na_08aec9_idx'),
),
migrations.AddIndex(
model_name='taskresult',
index=models.Index(
fields=['status'],
name='django_cele_status_9b6201_idx'),
),
migrations.AddIndex(
model_name='taskresult',
index=models.Index(
fields=['worker'],
name='django_cele_worker_d54dd8_idx'),
),
migrations.AddIndex(
model_name='taskresult',
index=models.Index(
fields=['date_created'],
name='django_cele_date_cr_f04a50_idx'),
),
migrations.AddIndex(
model_name='taskresult',
index=models.Index(
fields=['date_done'],
name='django_cele_date_do_f59aad_idx'),
),
FakeAddIndex(
model_name='groupresult',
index=models.Index(
fields=['group_id'],
name='django_cele_group_i_3cddec_idx'),
),
migrations.AddIndex(
model_name='groupresult',
index=models.Index(
fields=['date_created'],
name='django_cele_date_cr_bd6c1d_idx'),
),
migrations.AddIndex(
model_name='groupresult',
index=models.Index(
fields=['date_done'],
name='django_cele_date_do_caae0e_idx'),
),
]

View File

@@ -0,0 +1,53 @@
"""
Migration to amend the 0009 migration released on django_celery_results 2.1.0
That migration introduced duplicate indexes breaking Oracle support.
This migration will remove those indexes (on non-Oracle db's)
while in-place changing migration 0009
to not add the duplicates for new installs
"""
from django.db import DatabaseError, migrations
class TryRemoveIndex(migrations.RemoveIndex):
"""Operation to remove the Index
without reintroducing it on reverting the migration
"""
def database_forwards(self, *args, **kwargs):
"""Remove the index on the database if it exists"""
try:
super().database_forwards(*args, **kwargs)
except DatabaseError:
pass
except Exception:
# Not all DB engines throw DatabaseError when the
# index does not exist.
pass
def database_backwards(self, *args, **kwargs):
"""Don't re-add the index when reverting this migration"""
pass
class Migration(migrations.Migration):
dependencies = [
('django_celery_results', '0009_groupresult'),
]
operations = [
TryRemoveIndex(
model_name='chordcounter',
name='django_cele_group_i_299b0d_idx',
),
TryRemoveIndex(
model_name='groupresult',
name='django_cele_group_i_3cddec_idx',
),
TryRemoveIndex(
model_name='taskresult',
name='django_cele_task_id_7f8fca_idx',
),
]

View File

@@ -0,0 +1,22 @@
# Generated by Django 3.2.8 on 2021-11-10 08:05
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('django_celery_results', '0010_remove_duplicate_indices'),
]
operations = [
migrations.AddField(
model_name='taskresult',
name='periodic_task_name',
field=models.CharField(
help_text='Name of the Periodic Task which was run',
max_length=255,
null=True,
verbose_name='Periodic Task Name'),
),
]

View File

@@ -0,0 +1,23 @@
# Generated by Django 4.2.13 on 2024-06-02 07:56
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('django_celery_results', '0011_taskresult_periodic_task_name'),
]
operations = [
migrations.AddField(
model_name='taskresult',
name='date_started',
field=models.DateTimeField(
default=None,
help_text='Datetime field when the task was started in UTC',
null=True,
verbose_name='Started DateTime',
),
),
]

View File

@@ -0,0 +1,20 @@
# Generated by Django 5.1.3 on 2024-11-05 13:17
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('django_celery_results', '0012_taskresult_date_started'),
]
operations = [
migrations.AddIndex(
model_name='taskresult',
index=models.Index(
fields=['periodic_task_name'],
name='django_cele_periodi_1993cf_idx'
),
),
]

View File

@@ -0,0 +1,26 @@
# Generated by Django 5.1.7 on 2025-03-08 06:18
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
(
"django_celery_results",
"0013_taskresult_django_cele_periodi_1993cf_idx"
),
]
operations = [
migrations.AlterField(
model_name="taskresult",
name="status",
field=models.CharField(
default="PENDING",
help_text="Current state of the task being run",
max_length=50,
verbose_name="Task State",
),
),
]