FreePBX 16 upgrade - Asterisk fails to load due to extconfig module initialization failure

I was trying out the FreePBX 16 on my development VM, and somehow things got into a state where Asterisk is failing to load. Here’s the relevant portion of my asterisk log:

88895[2021-11-11 15:45:23] Asterisk 18.6.0 built by mockbuild @ jenkins7 on a x86_64 running Linux on 2021-08-23 13:48:51 UTC
88896[2021-11-11 15:45:23] VERBOSE[16627] message.c: Message handler 'dialplan' registered.
88897[2021-11-11 15:45:23] VERBOSE[16627] pbx_functions.c: Registered custom function 'MESSAGE'
88898[2021-11-11 15:45:23] VERBOSE[16627] pbx_functions.c: Registered custom function 'MESSAGE_DATA'
88899[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'MessageSend'
88900[2021-11-11 15:45:23] VERBOSE[16627] manager.c: Manager registered action MessageSend
88901[2021-11-11 15:45:23] VERBOSE[16627] channel.c: Registered channel type 'Surrogate' (Surrogate channel used to pull channel from an application)
88902[2021-11-11 15:45:23] VERBOSE[16627] manager.c: Manager registered action BridgeTechnologyList
88903[2021-11-11 15:45:23] VERBOSE[16627] manager.c: Manager registered action BridgeTechnologySuspend
88904[2021-11-11 15:45:23] VERBOSE[16627] manager.c: Manager registered action BridgeTechnologyUnsuspend
88905[2021-11-11 15:45:23] VERBOSE[16627] dns_core.c: Registered DNS resolver 'system' with priority '2147483647'
88906[2021-11-11 15:45:23] VERBOSE[16627] pbx.c: Asterisk PBX Core Initializing
88907[2021-11-11 15:45:23] VERBOSE[16627] pbx.c: Registering builtin functions:
88908[2021-11-11 15:45:23] VERBOSE[16627] pbx_functions.c: Registered custom function 'EXCEPTION'
88909[2021-11-11 15:45:23] VERBOSE[16627] pbx_functions.c: Registered custom function 'TESTTIME'
88910[2021-11-11 15:45:23] VERBOSE[16627] manager.c: Manager registered action ShowDialPlan
88911[2021-11-11 15:45:23] VERBOSE[16627] manager.c: Manager registered action ExtensionStateList
88912[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'Answer'
88913[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'BackGround'
88914[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'Busy'
88915[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'Congestion'
88916[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'ExecIfTime'
88917[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'Goto'
88918[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'GotoIf'
88919[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'GotoIfTime'
88920[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'ImportVar'
88921[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'Hangup'
88922[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'Incomplete'
88923[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'NoOp'
88924[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'Proceeding'
88925[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'Progress'
88926[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'RaiseException'
88927[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'Ringing'
88928[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'SayAlpha'
88929[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'SayAlphaCase'
88930[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'SayDigits'
88931[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'SayNumber'
88932[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'SayPhonetic'
88933[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'SetAMAFlags'
88934[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'Wait'
88935[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'WaitDigit'
88936[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'WaitExten'
88937[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'Set'
88938[2021-11-11 15:45:23] VERBOSE[16627] pbx_app.c: Registered application 'MSet'
88939[2021-11-11 15:45:23] VERBOSE[16627] channel.c: Registered channel type 'Local' (Local Proxy Channel Driver)
88940[2021-11-11 15:45:23] VERBOSE[16627] manager.c: Manager registered action LocalOptimizeAway
88941[2021-11-11 15:45:23] VERBOSE[16627] loader.c: Asterisk Dynamic Loader Starting:
88942[2021-11-11 15:45:23] NOTICE[16627] loader.c: 350 modules will be loaded.
88943[2021-11-11 15:45:24] VERBOSE[16627] loader.c: Loading res_odbc_transaction.so.
88944[2021-11-11 15:45:24] VERBOSE[16627] pbx_app.c: Registered application 'ODBC_Commit'
88945[2021-11-11 15:45:24] VERBOSE[16627] pbx_app.c: Registered application 'ODBC_Rollback'
88946[2021-11-11 15:45:24] VERBOSE[16627] pbx_functions.c: Registered custom function 'ODBC'
88947[2021-11-11 15:45:24] VERBOSE[16627] loader.c: res_odbc_transaction.so => (ODBC transaction resource)
88948[2021-11-11 15:45:24] VERBOSE[16627] loader.c: Loading res_odbc.so.
88949[2021-11-11 15:45:24] NOTICE[16627] res_odbc.c: Registered ODBC class 'asteriskcdrdb' dsn->[MySQL-asteriskcdrdb]
88950[2021-11-11 15:45:24] VERBOSE[16627] loader.c: res_odbc.so => (ODBC resource)
88951[2021-11-11 15:45:24] VERBOSE[16627] loader.c: Loading extconfig.
88952[2021-11-11 15:45:24] VERBOSE[16627] config.c: [ Initializing Custom Configuration Options ]
88953[2021-11-11 15:45:24] ERROR[16627] config.c: The file 'extconfig_custom.conf' was listed as a #include but it does not exist.
88954[2021-11-11 15:45:24] ERROR[16627] loader.c: Error loading module 'chan_local.so': /usr/lib64/asterisk/modules/chan_local.so: cannot open shared object file: No such file or directory
88955[2021-11-11 15:45:24] ERROR[16627] loader.c: Error loading module 'res_pjsip_phoneprov_provider.so', missing dependency: res_phoneprov
88956[2021-11-11 15:45:24] ERROR[16627] loader.c: *** Failed to load module extconfig
88957[2021-11-11 15:45:24] ERROR[16627] loader.c: Failed to load extconfig.
88958[2021-11-11 15:45:24] ERROR[16627] asterisk.c: Module initialization failed. ASTERISK EXITING!
88959
88960[2021-11-11 15:45:24] VERBOSE[16627] manager.c: Manager unregistered action DBGet
88961[2021-11-11 15:45:24] VERBOSE[16627] manager.c: Manager unregistered action DBPut
88962[2021-11-11 15:45:24] VERBOSE[16627] manager.c: Manager unregistered action DBDel
88963[2021-11-11 15:45:24] VERBOSE[16627] manager.c: Manager unregistered action DBDelTree

Any ideas on what I need to fix on my asterisk configuration files to fix this? How do I disable the extconfig module, since I don’t think it’s doing anything useful for me anyway?

I have been able to get asterisk loading by changing extconfig.conf to comment out the #include extconfig_custom.conf. After that, fwconsole restart got Asterisk running and working again. Even though FreePBX has subsequently regenerated that file with the commented line included again, it is working fine through reloads and restarts. Not sure how a one-time commenting out of that line fixed Asterisk, but leaving this here in case anyone else ends up with a broken Asterisk with this extconfig error after the 15 -> 16 upgrade.

This is the second report of this issue. I don’t know how to repro it, but we should be able to check for this condition with the upgrade script.