Uploaded image for project: 'Blesta Core'
  1. Blesta Core
  2. CORE-4370

Invoice cache sometimes does not include a JSON file

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 5.1.0
    • Fix Version/s: 5.1.1
    • Component/s: Staff Interface
    • Labels:
      None

      Description

      When the cron (both automatically and by clicking the Run Cron Now button) generates an invoice for email delivery for the first time, an invoice PDF is written to cache but not a JSON file. A JSON file & PDF are written when clicking the "View" link to generate an invoice for the first time in the admin UI.

      Invoice cache settings are set to JSON + PDF.

      When the cron generates the invoice, the following is written to the log:

      [2021-07-06T20:05:03.720141+00:00] general.NOTICE: E_NOTICE: Undefined index: temp_dir

      {"code":8,"message":"Undefined index: temp_dir","file":"/home/user/public_html/510/components/invoice_delivery/invoice_delivery.php","line":90}

        Activity

        Hide
        admin Paul Phillips added a comment -

        Both the JSON and PDF files are written, but now for the first time I get this error when running the cron manually:

        Unable to deliver 1 invoice to client #1500 via Email due to error: At least one of the attachments provided does not exist on the file system.

        And the invoice is not marked as sent.

        And the following was written to the general-warning-cron log:

        [2021-07-09T22:36:08.373491+00:00] general.WARNING: E_WARNING: file_put_contents(/tmpinv-1-9949f4f34d7ef6675853): failed to open stream: Permission denied

        {"code":2,"message":"file_put_contents(/tmpinv-1-9949f4f34d7ef6675853): failed to open stream: Permission denied","file":"/home/user/public_html/511/components/invoice_delivery/invoice_delivery.php","line":132}

        [2021-07-09T22:36:08.417856+00:00] general.WARNING: E_WARNING: unlink(/tmpinv-1-9949f4f34d7ef6675853): No such file or directory

        {"code":2,"message":"unlink(/tmpinv-1-9949f4f34d7ef6675853): No such file or directory","file":"/home/user/public_html/511/components/invoice_delivery/invoice_delivery.php","line":240}
        Show
        admin Paul Phillips added a comment - Both the JSON and PDF files are written, but now for the first time I get this error when running the cron manually: Unable to deliver 1 invoice to client #1500 via Email due to error: At least one of the attachments provided does not exist on the file system. And the invoice is not marked as sent. And the following was written to the general-warning-cron log: [2021-07-09T22:36:08.373491+00:00] general.WARNING: E_WARNING: file_put_contents(/tmpinv-1-9949f4f34d7ef6675853): failed to open stream: Permission denied {"code":2,"message":"file_put_contents(/tmpinv-1-9949f4f34d7ef6675853): failed to open stream: Permission denied","file":"/home/user/public_html/511/components/invoice_delivery/invoice_delivery.php","line":132} [2021-07-09T22:36:08.417856+00:00] general.WARNING: E_WARNING: unlink(/tmpinv-1-9949f4f34d7ef6675853): No such file or directory {"code":2,"message":"unlink(/tmpinv-1-9949f4f34d7ef6675853): No such file or directory","file":"/home/user/public_html/511/components/invoice_delivery/invoice_delivery.php","line":240}
        Hide
        admin Paul Phillips added a comment -

        If it's not obvious in my previous comment, I think there is suppose to be a "/" between the /tmp directory and the temporary invoice name. The Temp directory in the settings is the default "/tmp/" so I'm not sure why it's not present.

        Show
        admin Paul Phillips added a comment - If it's not obvious in my previous comment, I think there is suppose to be a "/" between the /tmp directory and the temporary invoice name. The Temp directory in the settings is the default "/tmp/" so I'm not sure why it's not present.

          People

          • Assignee:
            abdy Abdy Franco
            Reporter:
            admin Paul Phillips
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:
              Fix Release Date:
              11/Jul/21

              Time Tracking

              Estimated:
              Original Estimate - Not Specified
              Not Specified
              Remaining:
              Remaining Estimate - 0 minutes
              0m
              Logged:
              Time Spent - 6 hours, 48 minutes
              6h 48m

                Agile