table('users'); $this->addTimestampColumn($table, 'disabled_at', ['null' => true, 'after' => 'is_local']); $table->update(); // Partial index speeds up the "list disabled users" admin page; the // active-user lookup path doesn't need it (PK lookup already). if ($this->isMysql()) { $this->execute('CREATE INDEX idx_users_disabled_at ON users (disabled_at)'); } else { $this->execute('CREATE INDEX idx_users_disabled_at ON users (disabled_at) WHERE disabled_at IS NOT NULL'); } } public function down(): void { if ($this->isMysql()) { $this->execute('DROP INDEX idx_users_disabled_at ON users'); } else { $this->execute('DROP INDEX IF EXISTS idx_users_disabled_at'); } $this->table('users') ->removeColumn('disabled_at') ->update(); } }