jweiland-net / events2

With this TYPO3 extension you can organize one, multiple and recurring events.
GNU General Public License v2.0
18 stars 16 forks source link

events2:rebuild command doesn't create day records in CLI context #493

Closed einNicklas closed 1 week ago

einNicklas commented 2 months ago

After a TYPO3 upgrade from 11 to 12, the command events2:rebuild truncates the tx_events2_domain_model_day-table, but doesn't rebuild the day records. When I run the command as a scheduler task (be context), it works like a charm. Running the ReGenerateDays-task btw leads to the same result: an empty tx_events2_domain_model_day-table.

Output in CLI for ddev typo3 events2:rebuild -vvv:

Start re-building day records for each event record

I have truncated the day table

Process each event record
Process event UID: 000000001, PID: 01134, created: 0000 day records, RAM: 8750824
Process event UID: 000000002, PID: 01134, created: 0000 day records, RAM: 8755032
Process event UID: 000000003, PID: 01134, created: 0000 day records, RAM: 8755144
Process event UID: 000000004, PID: 01134, created: 0000 day records, RAM: 8756344
Process event UID: 000000005, PID: 01134, created: 0000 day records, RAM: 8767896
Process event UID: 000000006, PID: 01134, created: 0000 day records, RAM: 8764496
Process event UID: 000000007, PID: 01134, created: 0000 day records, RAM: 8779912
Process event UID: 000000008, PID: 01134, created: 0000 day records, RAM: 8763992
We have recreated the day records for 8 event records and 0 day records in total

events2 log entries:

Wed, 18 Sep 2024 08:20:30 +0200 [ERROR] request="76f003e1eed4e" component="JWeiland.Events2.Service.DayRelationService": Error while building day records for event: 1. File: /var/www/html/vendor/symfony/expression-language/Node/GetAttrNode.php. Line: 110. Error: Unable to call method "getQueryParams" of non-object "request". 
Wed, 18 Sep 2024 08:20:30 +0200 [ERROR] request="76f003e1eed4e" component="JWeiland.Events2.Service.DayRelationService": Error while building day records for event: 2. File: /var/www/html/vendor/symfony/expression-language/Node/GetAttrNode.php. Line: 110. Error: Unable to call method "getQueryParams" of non-object "request". 
Wed, 18 Sep 2024 08:20:30 +0200 [ERROR] request="76f003e1eed4e" component="JWeiland.Events2.Service.DayRelationService": Error while building day records for event: 3. File: /var/www/html/vendor/symfony/expression-language/Node/GetAttrNode.php. Line: 110. Error: Unable to call method "getQueryParams" of non-object "request". 
Wed, 18 Sep 2024 08:20:30 +0200 [ERROR] request="76f003e1eed4e" component="JWeiland.Events2.Service.DayRelationService": Error while building day records for event: 4. File: /var/www/html/vendor/symfony/expression-language/Node/GetAttrNode.php. Line: 110. Error: Unable to call method "getQueryParams" of non-object "request". 
Wed, 18 Sep 2024 08:20:30 +0200 [ERROR] request="76f003e1eed4e" component="JWeiland.Events2.Service.DayRelationService": Error while building day records for event: 5. File: /var/www/html/vendor/symfony/expression-language/Node/GetAttrNode.php. Line: 110. Error: Unable to call method "getQueryParams" of non-object "request". 
Wed, 18 Sep 2024 08:20:30 +0200 [ERROR] request="76f003e1eed4e" component="JWeiland.Events2.Service.DayRelationService": Error while building day records for event: 6. File: /var/www/html/vendor/symfony/expression-language/Node/GetAttrNode.php. Line: 110. Error: Unable to call method "getQueryParams" of non-object "request". 
Wed, 18 Sep 2024 08:20:30 +0200 [ERROR] request="76f003e1eed4e" component="JWeiland.Events2.Service.DayRelationService": Error while building day records for event: 7. File: /var/www/html/vendor/symfony/expression-language/Node/GetAttrNode.php. Line: 110. Error: Unable to call method "getQueryParams" of non-object "request". 
Wed, 18 Sep 2024 08:20:30 +0200 [ERROR] request="76f003e1eed4e" component="JWeiland.Events2.Service.DayRelationService": Error while building day records for event: 8. File: /var/www/html/vendor/symfony/expression-language/Node/GetAttrNode.php. Line: 110. Error: Unable to call method "getQueryParams" of non-object "request".
einNicklas commented 1 month ago

Hi @jweiland,

I hope you're doing well. I wanted to follow up on the issue I reported three weeks ago, as I have not yet received a response.

We are currently using this TYPO3 extension in a production environment for one of our larger clients. Given the severity of the issue, we would greatly appreciate any updates or guidance on resolving it as soon as possible.

Please let us know if there’s any additional information we can provide to help expedite the process.

Looking forward to your response.

Best regards, Nicklas

mixedpixels commented 1 month ago

Hello NIcklas,

we have assigned the task to a developer and you can expect a fix in 1-2 weeks.

Regards Jochen

Am Mo., 7. Okt. 2024 um 10:00 Uhr schrieb Nicklas @.***

:

Hi @jweiland https://github.com/jweiland,

I hope you're doing well. I wanted to follow up on the issue I reported three weeks ago, as I have not yet received a response.

We are currently using this TYPO3 extension in a production environment for one of our larger clients. Given the severity of the issue, we would greatly appreciate any updates or guidance on resolving it as soon as possible.

Please let us know if there’s any additional information we can provide to help expedite the process.

Looking forward to your response.

Best regards, Nicklas

— Reply to this email directly, view it on GitHub https://github.com/jweiland-net/events2/issues/493#issuecomment-2396195968, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA7SGMDRBCDGQSIPH243IVLZ2I5SPAVCNFSM6AAAAABONAB5C6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOJWGE4TKOJWHA . You are receiving this because you are subscribed to this thread.Message ID: @.***>

--

TYPO3 Association Platinum Member https://typo3.org/project/association/members/platinum

Official TYPO3 Technology Partner https://typo3.com/partners/technology-partners

Sicherheits-Updates für TYPO3 Version 9.5 und 10.4: TYPO3 aktuell halten mit dem ELTS Service - für nur 23,80 Euro im Monat Alle Infos unter https://jweiland.net/elts https://jweiland.net/elts

Schon gewusst?  54,2% aller deutschen Universitäten setzen auf TYPO3. Quelle: https://cmscensus.eu/de/germany/education-culture-sport/universities https://cmscensus.eu/de/germany/education-culture-sport/universities

Ihr Partner für Hosting und TYPO3 Webseiten

Info + Support: 0800 - 8976326 (0800 - TYPO3CM) oder (+49) 0711 - 9 49 69 60 

jweiland.net https://jweiland.net - Jochen Weiland Echterdinger Str. 57 70794 Filderstadt USt-ID: DE226345594

einNicklas commented 3 weeks ago

Hi @mixedpixels,

A month has now passed. Unfortunately, the problem does not seem to have been resolved yet. Has there been any progress?

Best regards, Nicklas

einNicklas commented 2 weeks ago

Hi @mixedpixels,

A month has now passed. Unfortunately, the problem does not seem to have been resolved yet. Has there been any progress?

Best regards, Nicklas

@jweiland ?

sfroemkenjw commented 1 week ago

Hello @einNicklas

I created the command events2:rebuild to debug the rebuild process. It's still there, but that command should not be used for a daily usage. While day table is truncated no detail view may work until all day records are rebuild again. This may also generate curious SEO results. For a customer with over 40.000 events that command will need over two hours. 2 hours where events may not be visible on webpage.

Events2 comes with a special scheduler task Re-Create day records which is not programmed as a CLI command. Please use that task to re-create just the few day records for the next day. That task will not do a truncate on day table. Perfect for daily usage and production context.

I have created a lot of events2, with a lot of relational records and I can not reproduce your issue.

In all cases my log files are complete empty (0 Bytes)

I have no clue why process should go into symfony expressions?! Sure, in CLI context there is no request object, but currently I can not find any references calling the symfony expressions. Do you have any additional modifications? Have you added some further columns to events2? Are you using any kind of EventListener?

Have a nice start into the new week

Stefan

einNicklas commented 1 week ago

Hi Stefan,

Thank you for your helpful insights! We also run the ReGenerateDays-task daily. I mentioned the Symfony command primarily because it represents the more modern and recommended approach for scheduler tasks, and the problem occurred with both tasks.

To investigate further, I set up a fresh TYPO3 system in a comparable environment and confirmed that the scenario works as expected there. This clearly indicates that the issue originates from another source.

I apologize for any unnecessary effort or confusion this may have caused. 🙈 I hope your week has started off well, and thank you again for your support!

Best regards, Nicklas