Ran a 1.23.1 update on a local site... after running update.php got this Error alone on screen: 

Error: Call to undefined function file_needs_type_classification() in file_requirements() (line 278 of /PATH_TO/core/modules/file/file.install).

After not finding anything searching BD site, hit back button and find site updated with no error or obvious problem (except 1 log) + nothing showing me what file needs anything. Repeat running update.php returns clear.  

Accepted answer

ok thanks for the details. There was a change in the way Bd handles file classifications in the 1.23.1. So, the site is functional now? 

The function file_needs_type_classification() is new to 1.23.1. The strange thing about your error is that it happened in file.install. The call to that function should not have failed, since that call is also new in 1.23.1. When your site downloaded the update, it downloaded all the code, including the new function.

My guess is that there is some sort of php server cache like opcache that stored the old file.module functions in memory during the update, and then failed to reload file.module during the update process. But if everything seems normal now, I wouldn't worry too much about this. 

Comments

Hmmm that's a strange error. I'll create an issue in the issue queue, just in case someone else runs into this. Was this site an upgrade form D7? 

If you go to admin/reports/status do you see anything that says that files need to be reclassified? 

https://github.com/backdrop/backdrop-issues/issues/5881

Also, how did you update your site? Did you do it through the UI or with drush/bee?

Thanks for responding + creating an issue. Nothing in reports/status (among the first place I look), updated through the UI, site had been a D7 upgrade, but have been updating BD on it for quite a few versions without this ever coming up.

ok thanks for the details. There was a change in the way Bd handles file classifications in the 1.23.1. So, the site is functional now? 

The function file_needs_type_classification() is new to 1.23.1. The strange thing about your error is that it happened in file.install. The call to that function should not have failed, since that call is also new in 1.23.1. When your site downloaded the update, it downloaded all the code, including the new function.

My guess is that there is some sort of php server cache like opcache that stored the old file.module functions in memory during the update, and then failed to reload file.module during the update process. But if everything seems normal now, I wouldn't worry too much about this. 

Now I've updated another local site, and both of these sites' live instances, + they updated with no problem :-) and the original update with the error is problem free. 

This certainly is rare, nothing at all found searching both drupal + beyond! Thanks for pondering... I'm considering this irrelevant.