diff --git a/sql/rpl_rli.cc b/sql/rpl_rli.cc
index c79a6440e84e8942de37eb83fb3222e05dc66b24..6229f3e1faf6797e640584b1ae4d7bd7c81f0428 100644
--- a/sql/rpl_rli.cc
+++ b/sql/rpl_rli.cc
@@ -1537,11 +1537,9 @@ scan_one_gtid_slave_pos_table(THD *thd, HASH *hash, DYNAMIC_ARRAY *array,
     goto end;
 
   bitmap_set_all(table->read_set);
-  if ((err= table->file->ha_rnd_init_with_error(1)))
-  {
-    table->file->print_error(err, MYF(0));
+  if (unlikely(err= table->file->ha_rnd_init_with_error(1)))
     goto end;
-  }
+
   table_scanned= true;
   for (;;)
   {
diff --git a/sql/sql_acl.cc b/sql/sql_acl.cc
index ec195f820694eac1a257a0f07b066509fc1ea334..ffc109d7d26bbb3201d3395c05d77950c006523a 100644
--- a/sql/sql_acl.cc
+++ b/sql/sql_acl.cc
@@ -9286,11 +9286,8 @@ static int handle_roles_mappings_table(TABLE *table, bool drop,
   DBUG_PRINT("info", ("Rewriting entry in roles_mapping table: %s@%s",
                       user_from->user.str, user_from->host.str));
   table->use_all_columns();
-  if ((error= table->file->ha_rnd_init(1)))
-  {
-    table->file->print_error(error, MYF(0));
+  if (unlikely(error= table->file->ha_rnd_init_with_error(1)))
     result= -1;
-  }
   else
   {
     while((error= table->file->ha_rnd_next(table->record[0])) !=
@@ -9451,11 +9448,8 @@ static int handle_grant_table(THD *thd, const Grant_table_base& grant_table,
       And their host- and user fields are not consecutive.
       Thus, we need to do a table scan to find all matching records.
     */
-    if ((error= table->file->ha_rnd_init(1)))
-    {
-      table->file->print_error(error, MYF(0));
+    if (unlikely(error= table->file->ha_rnd_init_with_error(1)))
       result= -1;
-    }
     else
     {
 #ifdef EXTRA_DEBUG
diff --git a/sql/sql_partition.cc b/sql/sql_partition.cc
index 09c59c862ad78a2c934dda24dde542874ae5c8a0..94e90e1fc5e32005c17d17b92a1e3c9c154f60a4 100644
--- a/sql/sql_partition.cc
+++ b/sql/sql_partition.cc
@@ -4107,11 +4107,8 @@ bool verify_data_with_partition(TABLE *table, TABLE *part_table,
   old_rec= part_table->record[0];
   part_table->record[0]= table->record[0];
   part_info->table->move_fields(part_info->full_part_field_array, table->record[0], old_rec);
-  if ((error= file->ha_rnd_init(TRUE)))
-  {
-    file->print_error(error, MYF(0));
+  if (unlikely(error= file->ha_rnd_init_with_error(TRUE)))
     goto err;
-  }
 
   do
   {