Users runs in BWC in v14 upgrade, but not always, and EPAM error problems

When I upgraded to v12 Enterprise the Users module was still in BWC

When I upgraded my DEV environment to v14 it remained BWC from the menu but when I change the URL it works fine in Sidecar.

When I upgraded my TST environment to v14 it converted to Sidecar but the record view gives an odd 500 error with the following in the PHP log:

[15-Jan-2025 12:15:16 US/Central] PHP Fatal error:  Uncaught Error: Call to a member function setEAPM() on null in /var/www/html/sugarcrm/include/externalAPI/Base/ExternalAPIBase.php:182
Stack trace:
#0 /var/www/html/sugarcrm/include/externalAPI/Base/ExternalAPIBase.php(212): ExternalAPIBase->getConnector()
#1 /var/www/html/sugarcrm/include/externalAPI/Dnb/ExtAPIDnb.php(92): ExternalAPIBase->getConnectorParam()
#2 /var/www/html/sugarcrm/include/externalAPI/Dnb/ExtAPIDnb.php(87): ExtAPIDnb->loadConnectionCredentials()
#3 /var/www/html/sugarcrm/include/externalAPI/ExternalAPIFactory.php(114): ExtAPIDnb->__construct()
#4 /var/www/html/sugarcrm/include/externalAPI/ExternalAPIFactory.php(177): ExternalAPIFactory::loadFullAPIList()
#5 /var/www/html/sugarcrm/modules/EAPM/clients/base/api/AuthApi.php(94): ExternalAPIFactory::loadAPI()
#6 /var/www/html/sugarcrm/modules/EAPM/clients/base/api/AuthApi.php(58): AuthApi->getExternalApi()
#7 /var/www/html/sugarcrm/include/api/RestService.php(320): AuthApi->getAuthInfo()
#8 /var/www/html/sugarcrm/clients/base/api/BulkApi.php(68): RestService->execute()
#9 /var/www/html/sugarcrm/include/api/RestService.php(320): BulkApi->bulkCall()
#10 /var/www/html/sugarcrm/api/rest.php(26): RestService->execute()
#11 {main}
  thrown in /var/www/html/sugarcrm/include/externalAPI/Base/ExternalAPIBase.php on line 182
[15-Jan-2025 12:15:16 US/Central] PHP Fatal error:  Uncaught Error: Call to a member function setEAPM() on null in /var/www/html/sugarcrm/include/externalAPI/Base/ExternalAPIBase.php:182
Stack trace:
#0 /var/www/html/sugarcrm/include/externalAPI/Base/ExternalAPIBase.php(212): ExternalAPIBase->getConnector()
#1 /var/www/html/sugarcrm/include/externalAPI/Dnb/ExtAPIDnb.php(92): ExternalAPIBase->getConnectorParam()
#2 /var/www/html/sugarcrm/include/externalAPI/Dnb/ExtAPIDnb.php(87): ExtAPIDnb->loadConnectionCredentials()
#3 /var/www/html/sugarcrm/include/externalAPI/ExternalAPIFactory.php(114): ExtAPIDnb->__construct()
#4 /var/www/html/sugarcrm/include/externalAPI/ExternalAPIFactory.php(177): ExternalAPIFactory::loadFullAPIList()
#5 /var/www/html/sugarcrm/modules/EAPM/clients/base/api/AuthApi.php(94): ExternalAPIFactory::loadAPI()
#6 /var/www/html/sugarcrm/modules/EAPM/clients/base/api/AuthApi.php(58): AuthApi->getExternalApi()
#7 /var/www/html/sugarcrm/include/api/RestService.php(320): AuthApi->getAuthInfo()
#8 /var/www/html/sugarcrm/clients/base/api/BulkApi.php(68): RestService->execute()
#9 /var/www/html/sugarcrm/include/api/RestService.php(320): BulkApi->bulkCall()
#10 /var/www/html/sugarcrm/api/rest.php(26): RestService->execute()
#11 {main}
  thrown in /var/www/html/sugarcrm/include/externalAPI/Base/ExternalAPIBase.php on line 182

Any thoughts on what is happening?

When I force my DEV to non-BWC it works just fine.

Why the inconsistent behavior between two upgrades of what are essentially identical clones of my PRD environment?

I do have a couple of custom fields in the Users module but that should not be a problem.

Thanks,

FrancescaS

Parents
  • Hello  , 

    This is a rather unusual error, to be honest.

    To investigate and attempt to reproduce the behavior, I set up a similar environment.

    Since the issue appears to be related to EAPM , here’s what I did:

    1. Initial Setup: I started with a clean 12.0.4 instance and added a custom EAPM by creating a custom file
    custom/include/externalAPI/TestService/ExtAPITestService.php

    2. EAPM Table Entry: I manually added an entry for my admin user in the eapm table to simulate the conditions I believe you have on your instance. 

    3. Upgrade Path: I followed the recommended upgrade path using the silent upgrader:

    12.0.4 > 12.0.5 > 13.0.3 > 13.0.4 > 14.0.1

    All the upgrades ran smoothly, and the Users module renders correctly in Sidecar without any errors like the one you described.


    With that, it's hard to know what is causing the error on your side. 


    After this, I went and searched if we had older reports of the error: 

    [15-Jan-2025 12:15:16 US/Central] PHP Fatal error: Uncaught Error: Call to a member function setEAPM() on null in /var/www/html/sugarcrm/include/externalAPI/Base/ExternalAPIBase.php:182

    I did encounter a similar issue once, where a customer was missing the default modules/Connectors folder from their instance.

    Since you mentioned that this error only occurs in the TST environment, while the filesystem should be identical to DEV, it makes me wonder if this could be a permissions mismatch issue. It’s possible that Sugar is unable to properly access the modules/Connectors folder due to incorrect permissions, or perhaps something in the permission setup was disrupted during the upgrade?

    This is a long shot, but at this stage, it’s the only explanation that comes to my mind.

    Let me know if you’ve checked folder permissions or if there are other differences between TST and DEV (perhaps on the users table?) that might be worth investigating.

    I hope this helps and keep us posted. 

    Cheers, 

    André 



  • Thank you for looking into this Andre,


    I don't have any custom EPAM, we use LDAP if that makes a difference.

    in TST and DEV the file system permissions to modules/Connectors are set the same.

    I also checked the custom/modules/Connectors and permissions are the same in DEV and TST.

    I am doing a complete diff of the two system's files... I'll let you know what I find.

    Thanks,
    Francesca

Reply Children
No Data