Hi, I had a fully working setup on v1.14 until today. The server crashed and after rebooting it I can't open the preview (detail) of new tickets. I still can open older tickets which were there before the crash, but not any of the new ones and also I don't get any email notification about a new ticket fetched from the mailbox.

What I have tried so far:

  • Tried rebooting again
  • Upgrade to v1.14.1
  • Backing up the db, deleting and recreating
  • Switching to PHP 7.2 from 7.1
  • Deleting all sessions
  • Deleting upload folder
  • Checking errors with ini_set('display_errors')
  • Setting osTicket to log debug - no info
  • Checking PHP error log file - no info
  • Checking Apache log file where I keep getting:
    Got error 'PHP message: PHP Fatal error: Maximum exec
    ution time of 30 seconds exceeded in /var/www/hosts/osticket/include/class.orm.php on line 417\n', referer: http://helpdesk.example.com/scp/login.php
    [Wed Dec 11 15:36:16.046041 2019] [proxy_fcgi:error] [pid 24936] [client 192.168.55.254:55714] AH01071: Got error 'PHP message: PHP Fatal error: Maximum exec
    ution time of 30 seconds exceeded in /var/www/hosts/osticket/include/class.format.php on line 581\n', referer: http://helpdesk.example.com/scp/index.p
    hp

If I try to open the ticket detail it just keeps loading before timeout, the sometimes returns back to the queue, sometimes it just displays the header of the ticket, but no threads. What's puzzling me is that the old tickets still work, it looks like something is messed up in the DB, but I compared few ticket and thread entries with old ones and they are all the same.

Here is the installation info:

This PHP message: PHP Fatal error: Maximum execution time of 30 seconds exceeded
means that the script executed and exceeded the max run time you have configured in your PHP.ini.
You can try increasing it and restarting the webserver service (apache). It's directive in the PHP.ini file is max_execution_time.

Why did it take longer to run than 30s? No idea. Maybe your database is huge, maybe you dont have enough resources for it, or maybe MySQL is being really slow, or maybe the server has an issue (since it crashed and all).

    ntozier thanks for the response. I understand the error and I would agree that server problem might be the case, or slow database, but I don't believe that is the problem, since all other tickets received before this crash can be opened just fine, without any delay and 30s time limit is enough, they work exactly like they used to. Just these new tickets (either created manually or received) don't get any new ticket email notification and can't be previewed, otherwise everything is ok. I can read from the DB, store to DB, entries look the same and I just can't figure out why particularly these new tickets make the problem. As I said I even tried to delete the whole DB (in case it was corrupt) and recreate it to a newly created DB. I even tried checking the scripts from the timeout log to see if they get stuck on a particular method, but no, it seems to be random.

    ntozier Ok, I went through the MySQL query logs, and noticed it seems to hang on ost_schedule table, just to test it out I deleted all of the entries in ost_schedule and ost_schedule_entry tables and now it all works fine again, I can open those tickets, no more hangs. I just can't figure out why it was hanging.

    EDIT: Those hangs come from the ost_schedule_entry table, there doesn't seem to be a problem with any particular entry, but I noticed when there is more than 18 entries in the table, it doesn't work, I used to have 28 entries. When I deleted any random entries to get to 18 entries, it just starts working, when I add one more, it hangs..

    Write a Reply...