Skip to content

entity:save path_alias causes AssertionError: assert($entity instanceof RevisionLogInterface) #6343

@alberto56

Description

@alberto56

Describe the bug

drush entity:save path_alias causes undefined method Drupal\path_alias\Entity\PathAlias::setRevisionLogMessage.

A clear and concise description of what the bug is.

To Reproduce

Make sure you have at least one entity of type path_alias, then:

# drush status|grep version
Drupal version   : 11.2.3
PHP version      : 8.4.3
Drush version    : 13.6.2.0

# drush entity:save path_alias
[error]  Error: Call to undefined method Drupal\path_alias\Entity\PathAlias::setRevisionLogMessage() in Drush\Commands\core\EntityCommands->doSave() (line 225 of /var/www/html/bonjourquebec/vendor/drush/drush/src/Commands/core/EntityCommands.php) #0 /var/www/html/bonjourquebec/vendor/drush/drush/includes/drush.inc(62): Drush\Commands\core\EntityCommands->doSave()
#1 /var/www/html/bonjourquebec/vendor/drush/drush/includes/drush.inc(53): drush_call_user_func_array()
#2 /var/www/html/bonjourquebec/vendor/drush/drush/src/Commands/core/EntityCommands.php(164): drush_op()
#3 [internal function]: Drush\Commands\core\EntityCommands->loadSave()
#4 /var/www/html/bonjourquebec/vendor/consolidation/annotated-command/src/CommandProcessor.php(276): call_user_func_array()
#5 /var/www/html/bonjourquebec/vendor/consolidation/annotated-command/src/CommandProcessor.php(212): Consolidation\AnnotatedCommand\CommandProcessor->runCommandCallback()
#6 /var/www/html/bonjourquebec/vendor/consolidation/annotated-command/src/CommandProcessor.php(175): Consolidation\AnnotatedCommand\CommandProcessor->validateRunAndAlter()
#7 /var/www/html/bonjourquebec/vendor/consolidation/annotated-command/src/AnnotatedCommand.php(387): Consolidation\AnnotatedCommand\CommandProcessor->process()
#8 /var/www/html/bonjourquebec/vendor/symfony/console/Command/Command.php(318): Consolidation\AnnotatedCommand\AnnotatedCommand->execute()
#9 /var/www/html/bonjourquebec/vendor/symfony/console/Application.php(1092): Symfony\Component\Console\Command\Command->run()
#10 /var/www/html/bonjourquebec/vendor/symfony/console/Application.php(341): Symfony\Component\Console\Application->doRunCommand()
#11 /var/www/html/bonjourquebec/vendor/symfony/console/Application.php(192): Symfony\Component\Console\Application->doRun()
#12 /var/www/html/bonjourquebec/vendor/drush/drush/src/Runtime/Runtime.php(110): Symfony\Component\Console\Application->run()
#13 /var/www/html/bonjourquebec/vendor/drush/drush/src/Runtime/Runtime.php(40): Drush\Runtime\Runtime->doRun()
#14 /var/www/html/bonjourquebec/vendor/drush/drush/drush.php(140): Drush\Runtime\Runtime->run()
#15 {main}.
Error: Call to undefined method Drupal\path_alias\Entity\PathAlias::setRevisionLogMessage() in /var/www/html/bonjourquebec/vendor/drush/drush/src/Commands/core/EntityCommands.php on line 225 #0 /var/www/html/bonjourquebec/vendor/drush/drush/includes/drush.inc(62): Drush\Commands\core\EntityCommands->doSave()
#1 /var/www/html/bonjourquebec/vendor/drush/drush/includes/drush.inc(53): drush_call_user_func_array()
#2 /var/www/html/bonjourquebec/vendor/drush/drush/src/Commands/core/EntityCommands.php(164): drush_op()
#3 [internal function]: Drush\Commands\core\EntityCommands->loadSave()
#4 /var/www/html/bonjourquebec/vendor/consolidation/annotated-command/src/CommandProcessor.php(276): call_user_func_array()
#5 /var/www/html/bonjourquebec/vendor/consolidation/annotated-command/src/CommandProcessor.php(212): Consolidation\AnnotatedCommand\CommandProcessor->runCommandCallback()
#6 /var/www/html/bonjourquebec/vendor/consolidation/annotated-command/src/CommandProcessor.php(175): Consolidation\AnnotatedCommand\CommandProcessor->validateRunAndAlter()
#7 /var/www/html/bonjourquebec/vendor/consolidation/annotated-command/src/AnnotatedCommand.php(387): Consolidation\AnnotatedCommand\CommandProcessor->process()
#8 /var/www/html/bonjourquebec/vendor/symfony/console/Command/Command.php(318): Consolidation\AnnotatedCommand\AnnotatedCommand->execute()
#9 /var/www/html/bonjourquebec/vendor/symfony/console/Application.php(1092): Symfony\Component\Console\Command\Command->run()
#10 /var/www/html/bonjourquebec/vendor/symfony/console/Application.php(341): Symfony\Component\Console\Application->doRunCommand()
#11 /var/www/html/bonjourquebec/vendor/symfony/console/Application.php(192): Symfony\Component\Console\Application->doRun()
#12 /var/www/html/bonjourquebec/vendor/drush/drush/src/Runtime/Runtime.php(110): Symfony\Component\Console\Application->run()
#13 /var/www/html/bonjourquebec/vendor/drush/drush/src/Runtime/Runtime.php(40): Drush\Runtime\Runtime->doRun()
#14 /var/www/html/bonjourquebec/vendor/drush/drush/drush.php(140): Drush\Runtime\Runtime->run()
#15 {main}
Error: Call to undefined method Drupal\path_alias\Entity\PathAlias::setRevisionLogMessage() in Drush\Commands\core\EntityCommands->doSave() (line 225 of /var/www/html/bonjourquebec/vendor/drush/drush/src/Commands/core/EntityCommands.php).
[warning] Drush command terminated abnormally.

Expected behavior

I'm expecting this to save all entities of type path_alias.

Actual behavior

Call to undefined method Drupal\path_alias\Entity\PathAlias::setRevisionLogMessage

Workaround

Drupal's administrative GUI can be used to save path aliases.

If you know the alias's ids you want to resave, you can run something like this:

drush ev "\Drupal::entityTypeManager()->getStorage('path_alias')->load(111)->save();"

System Configuration

Q A
Drush version? 13.6.2.0
Drupal version? 11.2.3
PHP version 8.4.3
OS? CentOS

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions