• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login
Netgate Discussion Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login

PHP Fatal Error

Scheduled Pinned Locked Moved General pfSense Questions
49 Posts 11 Posters 19.6k Views
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J
    jimp Rebel Alliance Developer Netgate
    last edited by Mar 8, 2023, 1:22 PM

    For the error to happen there, an fopen function has to fail to open a file for writing in /tmp/.

    It's not clear why, though, since it could be one of several things, including (but not limited to):

    • /tmp is full
    • If /tmp is a RAM disk, there may not be sufficient RAM to create a new file in the FS
    • If /tmp is on an SSD/MMC/HDD, the filesystem holding /tmp has a problem (e.g. UFS and needs fsck run several times, or ZFS and needs a scrub)
    • If /tmp is on an SSD/MMC/HDD, the disk or controller may have stopped responding to commands (disk or controller physical issue, maybe controller driver issue, etc.)

    The problem here is that if it is a disk issue the logs may not be helpful unless you pipe syslog to a remote network host. If there is a problem with the disk it can't log that to the disk when a problem occurs. It might print a message to the console, though, but it depends on what happened.

    I've tried a few different ways to see if multiple processes competing to write the same file all at once could trigger this kind of error but so far I haven't had any luck drawing it out.

    Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

    Need help fast? Netgate Global Support!

    Do not Chat/PM for help!

    A 1 Reply Last reply Mar 9, 2023, 3:22 PM Reply Quote 1
    • A
      asv345h @jimp
      last edited by Mar 9, 2023, 3:22 PM

      @jimp
      My hardware is a ng-6100 with pfsense pre-installed. Looks like plenty of space at the moment.

      I stream syslog to a remote server and have the logs. I searched for "/tmp" but got no hits. A search for "mmc" only found this: kernel: mmc0: <MMC/SD bus> on sdhci_pci0, but that was 4 days after the exception. Is there another search term I should try?

      -rick

      Screenshot 2023-03-09 at 9.46.19 AM.png

      1 Reply Last reply Reply Quote 0
      • S
        stephenw10 Netgate Administrator
        last edited by Mar 9, 2023, 4:22 PM

        Mmm, nothing obviously wrong there. Seems like it's unable to write the file for some other reason.

        1 Reply Last reply Reply Quote 0
        • W
          wralb
          last edited by Mar 14, 2023, 4:34 PM

          I'm seeing the exact same error from time to time as @asv345h since upgrading to 23.01 . I'm also running an ng-6100 running 23.01 (for info, I have a APC UPS plugged in to a USB port). Everything was fine for a year before the upgrade.

          Here is an example:

          FreeBSD 14.0-CURRENT #0 plus-RELENG_23_01-n256037-6e914874a5e: Fri Feb 10 20:30:29 UTC 2023     root@freebsd:/var/jenkins/workspace/pfSense-Plus-snapshots-23_01-main/obj/amd64/VDZvZksF/var/jenkins/workspace/pfSense-Plus-snapshots-23_01-main/sources/FreeBS
          
          Crash report details:
          
          PHP Errors:
          [07-Mar-2023 11:26:53 Europe/London] PHP Fatal error:  Uncaught TypeError: fwrite(): Argument #1 ($stream) must be of type resource, bool given in /etc/inc/config.lib.inc:172
          Stack trace:
          #0 /etc/inc/config.lib.inc(172): fwrite(false, 'a:44:{s:7:"vers...')
          #1 /etc/inc/config.lib.inc(147): generate_config_cache(Array)
          #2 /etc/inc/config.inc(141): parse_config()
          #3 /etc/inc/gwlb.inc(25): require_once('/etc/inc/config...')
          #4 /etc/inc/functions.inc(35): require_once('/etc/inc/gwlb.i...')
          #5 /etc/inc/notices.inc(26): require_once('/etc/inc/functi...')
          #6 /usr/local/bin/notify_monitor.php(24): include_once('/etc/inc/notice...')
          #7 {main}
            thrown in /etc/inc/config.lib.inc on line 172
          [07-Mar-2023 11:26:53 Europe/London] PHP Fatal error:  Uncaught ValueError: Path cannot be empty in /etc/inc/notices.inc:101
          Stack trace:
          #0 /etc/inc/notices.inc(101): fopen('', 'w')
          #1 /etc/inc/config.lib.inc(1162): file_notice('phperror', 'PHP ERROR: Type...', 'PHP errors')
          #2 [internal function]: pfSense_clear_globals()
          #3 {main}
            thrown in /etc/inc/notices.inc on line 101
          

          The timing of the error correlates closely with a gateway event:

          Mar  7 11:26:36 pfsense dpinger[88905]: exiting on signal 15
          Mar  7 11:26:36 pfsense dpinger[90399]: send_interval 500ms  loss_interval 2000ms  time_period 60000ms  report_interval 0ms  data_len 1  alert_interval 1000ms  latency_alarm 1000ms  loss_alarm 50%  dest_addr 86.25.176.1  bind_addr 86.25.183.166  identifier "WAN_DHCP "
          Mar  7 11:26:39 pfsense dpinger[90399]: exiting on signal 15
          Mar  7 11:26:39 pfsense dpinger[16144]: send_interval 500ms  loss_interval 2000ms  time_period 60000ms  report_interval 0ms  data_len 1  alert_interval 1000ms  latency_alarm 1000ms  loss_alarm 50%  dest_addr 86.25.176.1  bind_addr 86.25.183.166  identifier "WAN_DHCP "
          Mar  7 11:26:46 pfsense dpinger[16144]: exiting on signal 15
          Mar  7 11:26:46 pfsense dpinger[57987]: send_interval 500ms  loss_interval 2000ms  time_period 60000ms  report_interval 0ms  data_len 1  alert_interval 1000ms  latency_alarm 1000ms  loss_alarm 50%  dest_addr 86.25.176.1  bind_addr 86.25.183.166  identifier "WAN_DHCP "
          

          File system is ZFS with plenty of space and /tmp showing 480KB of 6.5GB used.

          O 1 Reply Last reply Mar 23, 2023, 2:07 PM Reply Quote 0
          • O
            Overlord @wralb
            last edited by Mar 23, 2023, 2:07 PM

            I have the same issue on all of my pfSense boxes - after the Upgrade to 23.01

            1 Reply Last reply Reply Quote 1
            • S
              stephenw10 Netgate Administrator
              last edited by Mar 23, 2023, 2:13 PM

              The exact same pair of php errors?

              This? https://redmine.pfsense.org/issues/14061

              Is there some common config all your installs share?

              1 Reply Last reply Reply Quote 1
              • A
                akghetto
                last edited by akghetto Apr 24, 2023, 1:14 AM Apr 24, 2023, 1:11 AM

                Any update on this error? I started getting it tonight.

                My main drive is defintely not full...

                [23.01-RELEASE][admin@host.domain]/root: df -h
                Filesystem                     Size    Used   Avail Capacity  Mounted on
                /dev/ufsid/59b7f3af0adccc14    100G    2.6G     89G     3%    /
                devfs                          1.0K    1.0K      0B   100%    /dev
                tmpfs                          4.0M    196K    3.8M     5%    /var/run
                devfs                          1.0K    1.0K      0B   100%    /var/dhcpd/dev
                

                //edit: nevermind... found patch c5faa351c1ef6d4555478a7f50b3a16ece7e0b2a on redmine. Sorry for the thread bump.

                1 Reply Last reply Reply Quote 1
                • J
                  jacksnack2
                  last edited by jacksnack2 Jul 6, 2023, 1:44 AM Jul 6, 2023, 12:55 AM

                  Same issue here. Seen this error twice after upgrading to 2.7.0 on July 1st.

                  I also see references to Nut Package (which is installed).

                  I applied the patch as referenced above, I'll report back with results.

                  1 Reply Last reply Reply Quote 0
                  • J
                    jacksnack2
                    last edited by Aug 6, 2023, 2:11 PM

                    I just received this error again this morning. Patch has been applied at last posting date.

                    1 Reply Last reply Reply Quote 0
                    • S
                      stephenw10 Netgate Administrator
                      last edited by Aug 6, 2023, 2:13 PM

                      What error exactly?

                      J 1 Reply Last reply Aug 6, 2023, 2:15 PM Reply Quote 0
                      • J
                        jacksnack2 @stephenw10
                        last edited by Aug 6, 2023, 2:15 PM

                        @stephenw10

                        Please see the error listed at the top of the post.

                        America/New_York] PHP Fatal error:  Uncaught TypeError: fwrite(): Argument #1 ($stream) must be of type resource, bool given in /etc/inc/config.lib.inc:172
                        
                        1 Reply Last reply Reply Quote 0
                        • S
                          stephenw10 Netgate Administrator
                          last edited by Aug 6, 2023, 2:17 PM

                          But not the error in /etc/inc/notices.inc:101 ?

                          J 1 Reply Last reply Aug 6, 2023, 2:19 PM Reply Quote 0
                          • J
                            jacksnack2 @stephenw10
                            last edited by Aug 6, 2023, 2:19 PM

                            @stephenw10 This is the error:

                            [06-Aug-2023 10:05:02 America/New_York] PHP Fatal error:  Uncaught TypeError: fwrite(): Argument #1 ($stream) must be of type resource, bool given in /etc/inc/config.lib.inc:172
                            Stack trace:
                            #0 /etc/inc/config.lib.inc(172): fwrite(false, 'a:40:{s:7:"vers...')
                            #1 /etc/inc/config.lib.inc(147): generate_config_cache(Array)
                            #2 /etc/inc/config.inc(141): parse_config()
                            #3 /etc/inc/gwlb.inc(25): require_once('/etc/inc/config...')
                            #4 /etc/inc/functions.inc(35): require_once('/etc/inc/gwlb.i...')
                            #5 /etc/inc/notices.inc(26): require_once('/etc/inc/functi...')
                            #6 /usr/local/pkg/nut/nut_email.php(24): require_once('/etc/inc/notice...')
                            #7 {main}
                              thrown in /etc/inc/config.lib.inc on line 172
                            [06-Aug-2023 10:05:02 America/New_York] PHP Fatal error:  Uncaught ValueError: Path cannot be empty in /etc/inc/notices.inc:101
                            Stack trace:
                            #0 /etc/inc/notices.inc(101): fopen('', 'w')
                            #1 /etc/inc/config.lib.inc(1148): file_notice('phperror', 'PHP ERROR: Type...', 'PHP errors')
                            #2 [internal function]: pfSense_clear_globals()
                            #3 {main}
                              thrown in /etc/inc/notices.inc on line 101
                            
                            
                            O 1 Reply Last reply Sep 5, 2023, 8:26 AM Reply Quote 1
                            • O
                              Overlord @jacksnack2
                              last edited by Sep 5, 2023, 8:26 AM

                              I installed all patches and get still this error:

                              PHP ERROR: Type: 1, File: /etc/inc/config.lib.inc, Line: 172, Message: Uncaught TypeError: fwrite(): Argument #1 ($stream) must be of type resource, bool given in /etc/inc/config.lib.inc:172
                              Stack trace:
                              #0 /etc/inc/config.lib.inc(172): fwrite(false, 'a:44:{s:7:"vers...')
                              #1 /etc/inc/config.lib.inc(147): generate_config_cache(Array)
                              #2 /etc/inc/config.inc(141): parse_config()
                              #3 /etc/inc/gwlb.inc(25): require_once('/etc/inc/config...')
                              #4 /etc/inc/functions.inc(35): require_once('/etc/inc/gwlb.i...')
                              #5 /usr/local/sbin/pfSsh.php(29): require_once('/etc/inc/functi...')
                              #6 {main}
                              thrown @ 2023-09-05 06:00:03

                              GertjanG 1 Reply Last reply Sep 5, 2023, 8:46 AM Reply Quote 0
                              • GertjanG
                                Gertjan @Overlord
                                last edited by Sep 5, 2023, 8:46 AM

                                @Overlord

                                Doesn't this look like PHP error after reboot ?

                                No "help me" PM's please. Use the forum, the community will thank you.
                                Edit : and where are the logs ??

                                1 Reply Last reply Reply Quote 0
                                • J
                                  jimp Rebel Alliance Developer Netgate
                                  last edited by Sep 5, 2023, 12:30 PM

                                  There is another change I committed a couple weeks ago that might help with that, 596a88fa42f0ac77bd2fc2be87b54457df11f64b but I'm not sure if it applies cleanly on a patched or unpatched release. You can try, though.

                                  But the problem is still someone trying to do a function as a non-privileged user that should be performed by root.

                                  Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                                  Need help fast? Netgate Global Support!

                                  Do not Chat/PM for help!

                                  W 1 Reply Last reply Sep 6, 2023, 4:31 PM Reply Quote 2
                                  • W
                                    wralb @jimp
                                    last edited by Sep 6, 2023, 4:31 PM

                                    Thanks @jimp

                                    As mentioned previously, I saw this on my 6100 (with the NUT package and an APC UPS) many times when running 23.01. FYI, I never saw it with 23.05 over several months, but saw it again with 23.05.1 (coinidence?).

                                    Anyway, I just installed all recommended patches plus commit 596a88fa42f0ac77bd2fc2be87b54457df11f64b and will report back if I experience this issue again.

                                    1 Reply Last reply Reply Quote 1
                                    • J
                                      jacksnack2
                                      last edited by Oct 1, 2023, 3:43 PM

                                      I am still having issues as well. Watching the thread closely.

                                      1 Reply Last reply Reply Quote 0
                                      • D
                                        dersch
                                        last edited by dersch Oct 17, 2023, 8:14 AM Oct 17, 2023, 8:11 AM

                                        I'm here with a simliar error. Found after ACME reissued a new Cert

                                        /etc/rc.restart_webgui
                                        Restarting webConfigurator...Error: cannot open certificate file in system_webgui_start().
                                        
                                        Fatal error: Uncaught TypeError: fwrite(): Argument #1 ($stream) must be of type resource, bool given in /etc/inc/rrd.inc:1027
                                        Stack trace:
                                        #0 /etc/inc/rrd.inc(1027): fwrite(false, '#!/bin/sh\n\nexpo...')
                                        #1 /etc/rc.restart_webgui(44): enable_rrd_graphing()
                                        #2 {main}
                                          thrown in /etc/inc/rrd.inc on line 1027
                                        PHP ERROR: Type: 1, File: /etc/inc/rrd.inc, Line: 1027, Message: Uncaught TypeError: fwrite(): Argument #1 ($stream) must be of type resource, bool given in
                                        /etc/inc/rrd.inc:1027
                                        Stack trace:
                                        #0 /etc/inc/rrd.inc(1027): fwrite(false, '#!/bin/sh\n\nexpo...')
                                        #1 /etc/rc.restart_webgui(44): enable_rrd_graphing()
                                        #2 {main}
                                          thrown
                                        

                                        Running on Proxmox - PfSense+ 23.05.1 with ZFS

                                        43ec47f2-3779-4e0f-9375-4bd603a8f0d0-image.png

                                        GertjanG 1 Reply Last reply Oct 18, 2023, 7:25 AM Reply Quote 0
                                        • S
                                          stephenw10 Netgate Administrator
                                          last edited by Oct 17, 2023, 11:23 AM

                                          Have you only seen that one time? If you remove the error does it return? Can you trigger it repeatably?

                                          D 1 Reply Last reply Oct 17, 2023, 12:02 PM Reply Quote 0
                                          • First post
                                            Last post
                                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.
                                            This community forum collects and processes your personal information.
                                            consent.not_received