• Resolved Brian Hogg

    (@brianhogg)


    In the latest version, running a query like this:

    tribe_events()->by( 'id', $post->ID )->first()->venues

    results in a fatal error:

    TypeError: call_user_func(): Argument #1 ($callback) must be a valid callback, no array or string given
    #0 /wp-content/plugins/the-events-calendar/common/src/Tribe/Utils/Lazy_Collection.php(86): call_user_func
    #1 /wp-content/plugins/the-events-calendar/common/src/Tribe/Utils/Lazy_Collection.php(86): Tribe\Utils\Lazy_Collection::resolve
    #2 /wp-content/plugins/the-events-calendar/common/src/Tribe/Utils/Lazy_Collection.php(71): Tribe\Utils\Lazy_Collection::all
    #3 /wp-content/plugins/the-events-calendar/common/src/Tribe/Utils/Collection_Trait.php(125): Tribe\Utils\Lazy_Collection::valid

    Disabling object caching resolves it. The workaround is to fetch venue and organizer IDs using tec_get_venue_ids, tec_get_venue_id or directly via get_post_meta( $post_id, '_EventVenueID' ); but ideally using the ORM as before wouldn’t cause a fatal error.

    If any other details are needed, let me know. Thanks!

    The page I need help with: [log in to see the link]

Viewing 8 replies - 1 through 8 (of 8 total)
  • Plugin Author Dimitris Pantazis

    (@dpantazis)

    Hey @brianhogg ,

    Thanks for reaching out with your issue. Your report seems quite detailed, we will take a look to try and reproduce it.

    If we can, we will fix it. If not, we will reach out to you for more details.

    Thank you for using The Events Calendar.

    I can confirm what appears to be the same issue on a production site.

    Versions:

    • The Events Calendar 6.17.3.1
    • Event Tickets 5.29.3.1
    • Redis Object Cache 2.8.0
    • PHP 8.2.33
    • WordPress running under Plesk/AlmaLinux

    The site began intermittently producing critical errors after the recent TEC/Event Tickets updates.

    The PHP fatal is:

    PHP Fatal error: Uncaught TypeError: call_user_func(): Argument #1 ($callback) must be a valid callback, no array or string given in /wp-content/plugins/event-tickets/common/src/Tribe/Utils/Lazy_Collection.php:86

    Stack trace includes:

    Tribe\Utils\Lazy_Collection->resolve()
    Tribe\Utils\Lazy_Collection->all()
    Tribe\Utils\Lazy_Collection->__serialize()
    serialize()
    WP_Object_Cache

    I confirmed that The Events Calendar and Event Tickets contain identical copies of Lazy_Collection.php.

    We use Redis Object Cache with a site-specific cache key salt. I identified approximately 2,186 keys in the tribe-eventsRedis cache group.

    As a test, I removed only this site’s tribe-events Redis keys. The cache immediately began rebuilding and the same Lazy_Collection.php:86 fatal returned within seconds. Therefore, simply clearing the object cache does not resolve the problem.

    I then disabled Redis Object Cache for this WordPress installation. The object-cache.php drop-in was removed and the fatal errors immediately stopped.

    After approximately 10 minutes of additional site traffic, no new Lazy_Collection.php:86 errors were logged. The site is currently operating normally with persistent object caching disabled.

    I also tested PHP 8.2 and PHP 8.3 during troubleshooting. The problem occurs under PHP 8.2 as well, so this does not appear to be specific to PHP 8.3.

    I have left Redis Object Cache disabled on this site as a temporary workaround.

    Please let me know if additional logs, Redis key examples, or system information would help reproduce this.

    Plugin Author Dimitris Pantazis

    (@dpantazis)

    Thank you @ajeffcoat and @brianhogg ! We were able to reproduce the issue and we already have implemented a fix. We are aiming to include it in our next release. I will let you know when its out.

    Once again thank you for the report!

    guillaumejoubert

    (@guillaumejoubert)

    Bonjour j’ai un message d’erreur sur cette page : https://culturemarche.com/agenda-marche-2026/

    cela fait deux jours et malgré les renseignements de wordpress, aucun dépannage… comment faire pour que cette page soit de nouveaux accessibles ?

    guillaumejoubert

    (@guillaumejoubert)

    Lorsque vous les contacterez, veuillez inclure l’erreur fatale PHP que nous avons partagée précédemment, en particulier cette partie :

    Call to a member function count() on null in .../the-events-calendar/src/views/v2/list/event/[venue.php](https://venue.php/):23 (traduit par IA)

    NumanZahid

    (@numanzahid)

    Hi @dpantazis,

    Thanks for confirming you were able to reproduce this and that a fix is planned for the next release.

    We are seeing the same issue on a production site (The Events Calendar 6.17.3.1, Event Tickets 5.29.3.1, with Redis object caching on Cloudways Autonomous). The site was down intermittently with the same Lazy_Collection.php:86 fatal error.

    Could you share an estimated timeline for when the fix will be released? We need to plan next steps with our client, since disabling object cache is not an option on our hosting setup.

    Thanks.

    Plugin Author Dimitris Pantazis

    (@dpantazis)

    Hey once again to all of you! Version 6.17.4 is out and it should be fixing that issue. Please test it out by updating safely – we always recommend testing the updates in a staging site and taking a backup of a production site before you apply them, but it should be smooth sailing – and let me know!

    Thank you

    Plugin Author Dimitris Pantazis

    (@dpantazis)

    Hey since I haven’t heard back from you for a while, im going to go ahead and assume that the issue is resolved for you and mark as such this ticket. If by any chance you are still facing this issue, please open a new ticket.

    Thank you!

Viewing 8 replies - 1 through 8 (of 8 total)

You must be logged in to reply to this topic.