This is an automated email from the ASF dual-hosted git repository. ephraimanierobi pushed a commit to branch v2-3-test in repository https://gitbox.apache.org/repos/asf/airflow.git
commit acad83ca8c49b0fbc82c3ee6fe68c41a29e12b48 Author: Gabriel Machado <gabriel....@hotmail.com> AuthorDate: Wed May 11 16:45:33 2022 +0200 Add index for event column in log table (#23625) (cherry picked from commit 5d8cda8c5be42c8daaaa904d29a1011833c0c699) --- ...0109_1de7bc13c950_add_index_for_event_in_log.py | 44 ++++++++++++++++++++++ airflow/models/log.py | 5 ++- docs/apache-airflow/migrations-ref.rst | 4 +- 3 files changed, 51 insertions(+), 2 deletions(-) diff --git a/airflow/migrations/versions/0109_1de7bc13c950_add_index_for_event_in_log.py b/airflow/migrations/versions/0109_1de7bc13c950_add_index_for_event_in_log.py new file mode 100644 index 0000000000..2023a3c294 --- /dev/null +++ b/airflow/migrations/versions/0109_1de7bc13c950_add_index_for_event_in_log.py @@ -0,0 +1,44 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +"""Add index for ``event`` column in ``log`` table. + +Revision ID: 1de7bc13c950 +Revises: b1b348e02d07 +Create Date: 2022-05-10 18:18:43.484829 + +""" + +from alembic import op + +# revision identifiers, used by Alembic. +revision = '1de7bc13c950' +down_revision = 'b1b348e02d07' +branch_labels = None +depends_on = None +airflow_version = '2.3.1' + + +def upgrade(): + """Apply Add index for ``event`` column in ``log`` table.""" + op.create_index('idx_log_event', 'log', ['event'], unique=False) + + +def downgrade(): + """Unapply Add index for ``event`` column in ``log`` table.""" + op.drop_index('idx_log_event', table_name='log') diff --git a/airflow/models/log.py b/airflow/models/log.py index 95e93752e3..b2a5639dcd 100644 --- a/airflow/models/log.py +++ b/airflow/models/log.py @@ -38,7 +38,10 @@ class Log(Base): owner = Column(String(500)) extra = Column(Text) - __table_args__ = (Index('idx_log_dag', dag_id),) + __table_args__ = ( + Index('idx_log_dag', dag_id), + Index('idx_log_event', event), + ) def __init__(self, event, task_instance=None, owner=None, extra=None, **kwargs): self.dttm = timezone.utcnow() diff --git a/docs/apache-airflow/migrations-ref.rst b/docs/apache-airflow/migrations-ref.rst index 88a1f84b6c..4b24e943cc 100644 --- a/docs/apache-airflow/migrations-ref.rst +++ b/docs/apache-airflow/migrations-ref.rst @@ -25,7 +25,9 @@ Here's the list of all the Database Migrations that are executed via when you ru .. Beginning of auto-generated table +---------------------------------+-------------------+-------------+--------------------------------------------------------------+ -| ``b1b348e02d07`` (head) | ``75d5ed6c2b43`` | ``2.3.0`` | Update dag.default_view to grid | +| ``1de7bc13c950`` (head) | ``b1b348e02d07`` | ``2.3.1`` | Add index for ``event`` column in ``log`` table. | ++---------------------------------+-------------------+-------------+--------------------------------------------------------------+ +| ``b1b348e02d07`` | ``75d5ed6c2b43`` | ``2.3.0`` | Update dag.default_view to grid | +---------------------------------+-------------------+-------------+--------------------------------------------------------------+ | ``75d5ed6c2b43`` | ``909884dea523`` | ``2.3.0`` | Add map_index to Log. | +---------------------------------+-------------------+-------------+--------------------------------------------------------------+