• I'm noticing a bug that I haven't seen since before the re-write of the package. If my second WAN does down (3G wireless), and comes back up; lcdclient seems to lose the connection to LCDd. In the past I would have pages of errors in the system log. but i dont have any this time. I do want to say this started with the last changes.

    Still want to see if I can reproduce this on the fly (maybe tin cup around the 3G Wireless USB stick) but wanted to report it

    Edit: I think this may have been a fluke… my 3g went down a couple of times last night and no issues with lcdproc


  • @fmertz:

    @mdima:

    @tix:

    Hello
    I've tried the latest .92 package and my x-core will still become unresponsive at the 10 hour mark.
    I'm out of ideas on what the issue could be… :(

    Hi Tix,
      Thank you for the feedback. I am trying a new version with a lot of changes, if it passes my tests I will publish it… Cross your fingers...

    Ciao,
      Michele

    Shot in the dark: is the client reading the responses back from LCDd? The release notes mentioned something about ignoring them causing unpleasant behavior …

    Fmertz,
      what do you mean? I just read the entire changelog and the release notes but I didn't find anything about that. Can you give me some references?

    EDIT: Btw, yes, the client is reading the responses and log on pfSense if there is some error reported (messages with huh?)

    Now I am running the binary 0.5.3 and the package 0.9.2 to see what changes. With 0.5.5 it looks like there are some problems having more than one screen, like there are problems for LCDd to "switch" during the screen rotation.

    If you all set only one screen with 0.5.3 and pkg 0.9.2 do you have this problem?

    Thanks,
    Michele


  • @Cino:

    I'm noticing a bug that I haven't seen since before the re-write of the package. If my second WAN does down (3G wireless), and comes back up; lcdclient seems to lose the connection to LCDd. In the past I would have pages of errors in the system log. but i dont have any this time. I do want to say this started with the last changes.

    Still want to see if I can reproduce this on the fly (maybe tin cup around the 3G Wireless USB stick) but wanted to report it

    Edit: I think this may have been a fluke… my 3g went down a couple of times last night and no issues with lcdproc

    Hi Cino,
      well, this should have start with the last version of the package.

    Before the LCDclient was trying to connect to LCDd forever (which caused endless lists of log entries and high CPU usage), now if it fails for 3 times straight it will end. In the while if LCDd restart to respond, it connects and resets the error counter.

    I can understand that a gateway failture may cause a reset of the routes and the states, but if the client gets disconnected it starts other 2 times to reconnect (about 10 seconds between each attempt). Maybe we should increase it to 4… what do you think about it?

    Thanks,
    Michele


  • @mdima:

    @fmertz:

    Shot in the dark: is the client reading the responses back from LCDd? The release notes mentioned something about ignoring them causing unpleasant behavior …

    Fmertz,
      what do you mean? I just read the entire changelog and the release notes but I didn't find anything about that. Can you give me some references?

    EDIT: Btw, yes, the client is reading the responses and log on pfSense if there is some error reported (messages with huh?)

    https://github.com/fmertz/sdeclcd/blob/master/BUGS

    The documentation for responses is here: http://lcdproc.sourceforge.net/docs/lcdproc-0-5-5-dev.html#language-messages

    It says: LCDd can send messages back to the client. These messages can be directly related to the last command, or generated for some other reason. Because messages can be generated at any moment, the client should read from the connection at regular intervals. A very simple client could simply ignore all received messages. Not reading the messages will cause trouble !

    I read this to mean that LCDd could generate more than one response to a command, or even send text outside of typical responses to commands. Does the PHP code accommodate for this? Reading the code, there seems to be the assumption that only 1 response comes back, maybe leaving responses hanging, and slowly filling the buffer. Just a thought.


  • @fmertz:

    It says: LCDd can send messages back to the client. These messages can be directly related to the last command, or generated for some other reason. Because messages can be generated at any moment, the client should read from the connection at regular intervals. A very simple client could simply ignore all received messages. Not reading the messages will cause trouble !

    I read this to mean that LCDd could generate more than one response to a command, or even send text outside of typical responses to commands. Does the PHP code accommodate for this? Reading the code, there seems to be the assumption that only 1 response comes back, maybe leaving responses hanging, and slowly filling the buffer. Just a thought.

    well… the client polls the data from LCDd, but maybe it's not enough... I am trying to see if I can do that better... in the while THANKS for the suggestions, this looks to me as the right direction! ;)


  • If could be REALLY that… I am deeply debugging, and I found out that for each command I send to LCDd, this answer with some answer MORE... so in the end I send:

    widget_set scr_time text_wdgt 1 2 20 2 h 4 "2/7/2012 23:19"
    widget_set scr_time text_summary 1 4 "01% 56% 4529 37%"
    widget_set scr_uptime text_wdgt 1 2 20 2 h 4 "17 days 9:18"
    widget_set scr_uptime text_summary 1 4 "01% 56% 4529 37%"
    widget_set scr_system text_wdgt 1 2 20 2 h 4 "CPU 11%, Mem 56%"
    widget_set scr_system text_summary 1 4 "01% 56% 4529 37%"
    widget_set scr_load text_wdgt 1 2 20 2 h 4 "0.06, 0.04, 0.01"
    widget_set scr_load text_summary 1 4 "01% 56% 4529 37%"
    widget_set scr_states text_wdgt 1 2 20 2 h 4 "Cur/Max 4578/500000"
    widget_set scr_states text_summary 1 4 "01% 56% 4529 37%"
    widget_set scr_ipsec text_wdgt 1 2 20 2 h 4 "IPSEC Disabled"
    widget_set scr_ipsec text_summary 1 4 "01% 56% 4529 37%"
    widget_set scr_traffic title_wdgt 1 1 "IN: 45.1 Kbps"
    widget_set scr_traffic text_wdgt 1 2 "OUT: 2.1 Kbps"
    widget_set scr_traffic text_summary 1 4 "01% 56% 4529 37%"
    

    and it answers:

    success
    success
    success
    success
    success
    success
    success
    success
    success
    success
    success
    success
    success
    success
    success
    ignore scr_system
    listen scr_load
    ignore scr_load
    listen scr_states
    ignore scr_states
    listen scr_ipsec
    ignore scr_ipsec
    listen scr_traffic
    ignore scr_traffic
    listen scr_time
    ignore scr_time
    listen scr_uptime
    ignore scr_uptime
    listen scr_system
    ignore scr_system
    listen scr_load
    

    so if the ratio between write and get is 1:1, sooner or later the LCDd buffer will get full and LCDd will hang. Sorry but I found that code there and I really gave for granted that the ratio was 1:1, but the client gets too many answers from LCDd. The client must to "suck" all that answers in order to keep LCDd stable.

    I will test this and publish a new release ASAP!

    Ciao,
    Michele

  • Netgate Administrator

    Looks promising.  :)
    More excellent work.

    Steve


  • @mdima:

    If you all set only one screen with 0.5.3 and pkg 0.9.2 do you have this problem?

    Thanks,
    Michele

    I'm testing now, using only the "Interface Traffic" screen set to WAN.  It doesn't scroll left/right but obviously updates so the updating activity should tell us something I hope.

    Will post an update in about 12 hours.


  • @mdima:

    I will test this and publish a new release ASAP!

    Which also can be read the other way (negative test): if you remove the code to read the responses, does LCDd die quickly, with 100% CPU?


  • @fmertz:

    @mdima:

    I will test this and publish a new release ASAP!

    Which also can be read the other way (negative test): if you remove the code to read the responses, does LCDd die quickly, with 100% CPU?

    Hey,
        yes… before was like this:
    8 Screen enabled
    1 second as interval refresh

    LCDd was dieing after about 2h.

    With the full read of all the responses, same number of screens and refresh, it is working since 20h and it's still up and running.

    This evening I try to close a version and publish it...

    Ciao,
    Michele


  • Hi,
      I just released a new version of the package. I feel that we are at a good point.

    Here is the changelist:

    • Improved the reception of data from LCDd. Now there's a cycle that run until there's no more data do receive. Before that there was the possibility of a buffer overflow in LCDd. The timeout of the receiving socket is 25ms.
    • Optimized the number of commands sent to LCDd every cycle. Now it is sent only the half;
    • Rewritten with better code the error handling;
    • Increased to 3 the number of attempts the client performs to reconnect to LCDd in case of disconnection;
    • Simplified the startup scripts. Now lcdproc_client.sh is not generated/run anymore, since the error handling is managed by the client;
    • Changed the startup scripts to run both LCDd then the client as "nice" process;
    • Capped the wait time between each client cycle to 5 seconds. It still is calculated as the refresh frequency * the number of screen activated, but now it's capped;
    • Increased to 8000 chars the trunk of data received from LCDd;
    • Improved the "service stop" script. Now it cycle until LCDd is definitely killed and works even if LCDd is hung;
    • Added a "welcome" string on the panel at the LCDd startup;

    The new package is versioned 0.9.3, I just made a pull request in order to distribute it…

    Please give some feedback (including driver, refresh rate, enabled screens and so on)!

    Thanks,
    Michele


  • can't wait to give it test drive :-)

  • Netgate Administrator

    Woot!  ;D


  • Ops… I found out a little mistake, I cancelled the pull request, will do it tomorrow morning, I swear!

    Sorry buddies...


  • @tix:

    @mdima:

    If you all set only one screen with 0.5.3 and pkg 0.9.2 do you have this problem?

    Thanks,
    Michele

    I'm testing now, using only the "Interface Traffic" screen set to WAN.  It doesn't scroll left/right but obviously updates so the updating activity should tell us something I hope.

    Will post an update in about 12 hours.

    Well in 24 hours of running, I've had no issues running with only this screen enabled with the "standard" .92 package.


  • @tix:

    Well in 24 hours of running, I've had no issues running with only this screen enabled with the "standard" .92 package.

    Hi Tix,
      yes, everything worked with 1 screen only, because in that case there were no "extra messages" (activate/ignore/etc.) from LCDd that caused a buffer overflow after some hour.

    With the new version of the package we should not have this problem anymore…

    Can you confirm it?

    Thanks,
    Michele


  • I have downloaded the new package and enabled the following screens:
    -Uptime
    -Load
    -States
    -Mbuf
    -Interface Traffic(WAN)
    None of these scroll left/right.

    I installed the package and rebooted to have a clean start.  I noticed that load seemed a little higher than usual on startup and took a little bit longer to "calm down" but I'm not entirely sure it's related to LCDproc.

    I will post later today or tomorrow if there is anything to report as I'm hoping we have this corrected.  :)

    Thanks so much for the effort Michele!!!


  • So far so good.. i'm using the picolcd.so driver, 20x2 display

    The following is enabled:
    Time
    Uptime
    System
    Disk
    Load
    States  (Not sure if other notice, it doesn't show the correct max, always 10000)
    Interfaces (scrolls thru them)
    Mbuf
    Interface Traffic (WAN)

    one day I'll swap to a different case so I can have a 20/4

  • Netgate Administrator

    Testing now.
    One thing I have noticed that I didn't expect is:

    
    [2.0.1-RELEASE][root@pfsense.fire.box]/root(2): ps aux|grep lcd
    root    4965  0.0  0.3  3656  1520  ??  I     8:27PM   0:00.01 /bin/sh /usr/local/etc/rc.d/lcdproc.sh start
    root    6483  0.0  3.4 46428 17476  ??  SN    8:27PM   0:01.11 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
    
    

    I didn't expect to see lcdproc.sh running, not that it's a problem.

    Steve

    Edit: I also so that the version of the sdeclcd driver is that with real time process priority set. Is that deliberate? That too should be no problem.


  • Hehe!

    You're welcome Tix, let's see how much this version resists… I didn't have any problems since two days with 2 servers since almost 48h, but we need to share the data to consider it stable.

    on both machines I use as driver sureelect, 1 second refresh, 8 screens on one and just 1 screen on the other one. The other options are left as default...

    Ciao,
    Michele


  • @stephenw10:

    Testing now.
    One thing I have noticed that I didn't expect is:

    
    [2.0.1-RELEASE][root@pfsense.fire.box]/root(2): ps aux|grep lcd
    root    4965  0.0  0.3  3656  1520  ??  I     8:27PM   0:00.01 /bin/sh /usr/local/etc/rc.d/lcdproc.sh start
    root    6483  0.0  3.4 46428 17476  ??  SN    8:27PM   0:01.11 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
    
    

    I didn't expect to see lcdproc.sh running, not that it's a problem.

    Steve

    Edit: I also so that the version of the sdeclcd driver is that with real time process priority set. Is that deliberate? That too should be no problem.

    Hi Steve,
      well, I removed the "lcdproc_client.sh" script, the one that managed the error counter for the client. lcdproc.sh is the one run to start/stop/restart the package. I honestly don't know why it is still running after it's launched to start the client, but it should not do anything.

    For the sdeclcd driver, we need to ask to fmertz if he asked to update the binary driver under files.pfsense.org, I guess not if it's not the last version. Anyway, probably after this message he will ask to update it.

    Ciao,
    Michele


  • Hi Cino,

    @Cino:

    States  (Not sure if other notice, it doesn't show the correct max, always 10000)
    one day I'll swap to a different case so I can have a 20/4

    on my x86 pfSense 2.0.1 shows correctly 500000. I am afraid some char is hidden, but with a 20x2 display it should not… :S

    Looking at the code, it looks it's able to read $config['system']['maximumstates']. How much did you set?
    If you run on the the command prompt, php console, the following commands (copy/paste both), what result do you get?

    global $config;
    echo($config['system']['maximumstates']);
    

    Thanks,
    Michele


  • Not sure what went wrong but I went to add some additional screens and upon clicking save, the log shows the stopping and restarting but then stops again 1 sec later.  This happens each time I enable/disable any screen.

    Log capture:

    
    Feb 10 18:23:42 pfsense LCDd: Client on socket 11 disconnected
    Feb 10 18:23:42 pfsense LCDd: sock_send: socket write error
    Feb 10 18:23:44 pfsense LCDd: Server shutting down on SIGTERM
    Feb 10 18:23:46 pfsense LCDd: LCDd version 0.5.3 starting
    Feb 10 18:23:46 pfsense LCDd: Using Configuration File: /usr/local/etc/LCDd.conf
    Feb 10 18:23:46 pfsense LCDd: Listening for queries on 127.0.0.1:13666
    Feb 10 18:23:47 pfsense LCDd: Server shutting down on SIGTERM
    Feb 10 18:23:58 pfsense php: lcdproc: Failed to connect to LCDd process Operation timed out (60)
    Feb 10 18:24:09 pfsense php: lcdproc: Failed to connect to LCDd process Operation timed out (60)
    Feb 10 18:24:20 pfsense php: lcdproc: Failed to connect to LCDd process Operation timed out (60)
    Feb 10 18:24:31 pfsense php: lcdproc: Failed to connect to LCDd process Operation timed out (60)
    
    

    Trying to restart via the GUI does nothing (which I think is correct functionality) but running the start script from the shell seems to start the process again.

    
    [root@pfsense]/root(2): /bin/sh /usr/local/etc/rc.d/lcdproc.sh start
    [root@pfsense]/root(6): ps aux | grep lcd
            <no results="">[root@pfsense]/root(7): ps aux | grep LCD
    root   25426  0.0  0.5  3524  1280   1  S+    6:25PM   0:00.00 grep LCD
    [root@pfsense]/root(8): clog /var/log/system.log  | grep LCD
     <snip>Feb 10 18:31:25 pfsense LCDd: LCDd version 0.5.3 starting
    Feb 10 18:31:25 pfsense LCDd: Using Configuration File: /usr/local/etc/LCDd.conf
    Feb 10 18:31:25 pfsense LCDd: Listening for queries on 127.0.0.1:13666
    Feb 10 18:31:27 pfsense LCDd: Connect from host 127.0.0.1:49169 on socket 6</snip></no> 
    

    So I'm now running these screens:
    -Time
    -Uptime
    -Disk
    -Load
    -States
    -Mbuf
    -Interface Traffic (WAN)

    and these settings:
    -ComPort=/dev/lpt0
    -Display Size=2x20 display
    -Driver=Firebox SDEC
    -Refresh=5 sec
    -All other settings are "default"

    Also, the Load average is staying higher around between 0.60 and 1.4 where prior to this update it stayed less than 0.80 (even when updating RRD).  Again not sure it's related but I don't think it's anything to worry about.

    Will continue to monitor…


  • the results were blank. I dont have anything set, left it for the system to decide. The dashboard says 299000.. I'll set a value and see what happens. Its been awhile since I looked at the lcdproc code, but I'm thinking there was default 10000 if nothing is set via the gui now that i think about it a little more

  • Netgate Administrator

    @tix
    I can see from your logs that you still have 0.53 version of LCDd. So who knows what version of other files you have.
    From my experience the 'reinstall package' button in the GUI does not seem to re download everything.
    I suggest un-installing the package completely, checking for any left over files and then re-installing it.

    Steve


  • @stephenw10:

    @tix
    I can see from your logs that you still have 0.53 version of LCDd. So who knows what version of other files you have.
    From my experience the 'reinstall package' button in the GUI does not seem to re download everything.
    I suggest un-installing the package completely, checking for any left over files and then re-installing it.

    Steve

    Well aren't I the idiot?  :P  Didn't even notice that….

    Ok so I've now uninstalled the package, cleaned all the various references to LCDd, lcdproc, sdeclcd.so that the "find" command could locate.  Then I reinstalled the package except LCDd is missing...  Isn't this supplied by the lcdproc-dev package or am I being an idiot again?


  • @tix:

    @stephenw10:

    @tix
    I can see from your logs that you still have 0.53 version of LCDd. So who knows what version of other files you have.
    From my experience the 'reinstall package' button in the GUI does not seem to re download everything.
    I suggest un-installing the package completely, checking for any left over files and then re-installing it.

    Steve

    Well aren't I the idiot?  :P  Didn't even notice that….

    Ok so I've now uninstalled the package, cleaned all the various references to LCDd, lcdproc, sdeclcd.so that the "find" command could locate.  Then I reinstalled the package except LCDd is missing...  Isn't this supplied by the lcdproc-dev package or am I being an idiot again?

    Tix, LCDd is inside the package, very strange you don't have it… maybe a reboot between the uninstall and the reinstall could help..


  • @Cino:

    the results were blank. I dont have anything set, left it for the system to decide. The dashboard says 299000.. I'll set a value and see what happens. Its been awhile since I looked at the lcdproc code, but I'm thinking there was default 10000 if nothing is set via the gui now that i think about it a little more

    Ok, I've understood what happens… if there is nothing set the function just return 10000 as a constant.
    I will fix this on the new version.

    Ciao,
    Michele


  • Hi Tix
    @tix:

    Also, the Load average is staying higher around between 0.60 and 1.4 where prior to this update it stayed less than 0.80 (even when updating RRD).  Again not sure it's related but I don't think it's anything to worry about.

    Will continue to monitor…

    well… as more screens you add, as more the client and LCDd have to work. If you only enable one screen the load should fall. The variables that affect the load are: number of screens, refresh rate.

    Ciao,
    Michele


  • Hi Guys

    Is it possible to ad this Lcd to

    http://allnet.de/1577.html?&tx_mmallnetproductplugin_pi1[showUid]=421433&cHash=949c8a38a8
    ftp://212.18.29.48/ftp/pub/allnet/utility-server/fw8888/lcm_server_1.0.tar.bz2

    i,m trying this for some time but with no success, see other posts from me

    thx max


  • @easyhugo:

    Hi Guys

    Is it possible to ad this Lcd to

    http://allnet.de/1577.html?&tx_mmallnetproductplugin_pi1[showUid]=421433&cHash=949c8a38a8
    ftp://212.18.29.48/ftp/pub/allnet/utility-server/fw8888/lcm_server_1.0.tar.bz2

    i,m trying this for some time but with no success, see other posts from me

    thx max

    Hi Max (easyhugo),
    it's impossible to know for me which driver this LCD panel uses… do you know the chipset? Can it use one of the drivers already made or you need another driver?

    Ciao,
    Michele

  • Netgate Administrator

    My German is very bad!  :-[ (Only beaten by my non-existant Italian!  ::))

    However, according to [url=http://www.ipcop-forum.de/forum/viewtopic.php?f=22&t=26948#p231301]this post by IPCop ledgend Wintermute the display in the FW8888 is an LCM-162.

    This doesn't appear to be supported directly by LCDproc but this blog post seems to show it is possible. That's quite old now so support maybe better integrated.

    What drivers/versions have you tried?

    Steve

    Edit: This post confirms this.


  • @mdima:

    Tix, LCDd is inside the package, very strange you don't have it… maybe a reboot between the uninstall and the reinstall could help..

    I've tried multiple times to get LCDd to install and all fail.  I must have broken something with the various versions and/or updates.  I'll try a clean install later this weekend maybe….

    In any case, I have the updated files now.  I did a clean install to VMware Player and installed the package and then scp'd the file over to my real pfsense.

    So far so good as I've exceeded my 10 hour limit and everything is working with the screens and settings I mentioned in the previous post.


  • @tix:

    So far so good as I've exceeded my 10 hour limit and everything is working with the screens and settings I mentioned in the previous post.

    hehe! on my machines I am running it from thursday with a refresh of 1second, and it's still working great… maybe I am too much optimist, but I think we made it... ;) at least for this specific problem!

  • Netgate Administrator

    Yes I think you have definitely solved the LCDd 100% problem. 48hours+ for me on two boxes running sdeclcd driver, 1second refresh, and screens: time, uptime and load.
    Looking good.  :)

    However I think the other problem is still present.
    At boot or restarting packages when an IP change is detected the lcdproc package ends up being started and stopped multiple times. Before this could result in multiple clients running. I think this has been solved thanks to your kill loop. However today I switched on my resurected X-Core box and at the end of boot the LCDd daemon is running twice but with no client!  :-\

    
    [2.0.1-RELEASE][root@x-core.localdomain]/root(2): ps aux | grep lcd
    root   17691  0.0  0.6  3656  1356  ??  IN    4:21PM   0:00.01 /bin/sh /usr/local/etc/rc.d/lcdproc.sh start
    [2.0.1-RELEASE][root@x-core.localdomain]/root(3): ps aux | grep LCD
    root   24707  0.0  0.5  3352  1148  ??  IN    4:21PM   0:00.01 /usr/local/sbin/LCDd -c /usr/local/etc/LCDd.conf
    nobody 24902  0.0  0.6  3368  1408  ??  SNs   4:21PM   0:00.21 /usr/local/sbin/LCDd -c /usr/local/etc/LCDd.conf
    
    

    Here is the relavent section of the boot log:

    
    Feb 12 16:22:33 	apinger: Error while feeding rrdtool: Broken pipe
    Feb 12 16:21:52 	LCDd: Listening for queries on 127.0.0.1:13666
    Feb 12 16:21:52 	LCDd: Using Configuration File: /usr/local/etc/LCDd.conf
    Feb 12 16:21:52 	LCDd: LCDd version 0.5.5 starting
    Feb 12 16:21:49 	LCDd: Server shutting down on SIGTERM
    Feb 12 16:21:49 	LCDd: Listening for queries on 127.0.0.1:13666
    Feb 12 16:21:49 	LCDd: Using Configuration File: /usr/local/etc/LCDd.conf
    Feb 12 16:21:49 	LCDd: LCDd version 0.5.5 starting
    Feb 12 16:21:47 	php: lcdproc: Sync: End package sync
    Feb 12 16:21:47 	php: lcdproc: Sync: Begin package sync
    Feb 12 16:21:47 	LCDd: Server shutting down on SIGTERM
    Feb 12 16:21:47 	php: lcdproc: Sync: End package sync
    Feb 12 16:21:45 	LCDd: sock_send: socket write error
    Feb 12 16:21:45 	LCDd: sock_send: socket write error
    Feb 12 16:21:45 	LCDd: sock_send: socket write error
    Feb 12 16:21:45 	LCDd: Client on socket 11 disconnected
    Feb 12 16:21:45 	php: lcdproc: Sync: Restarting the service
    Feb 12 16:21:45 	php: lcdproc: Sync: Begin package sync
    Feb 12 16:21:45 	php: : Restarting/Starting all packages.
    Feb 12 16:21:42 	check_reload_status: Reloading filter
    Feb 12 16:21:42 	LCDd: Connect from host 127.0.0.1:11554 on socket 11
    Feb 12 16:21:42 	sshlockout[51329]: sshlockout/webConfigurator v3.0 starting up
    Feb 12 16:21:42 	login: login on console as root
    Feb 12 16:21:41 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 16:21:40 	php: : IPSEC: One or more IPsec tunnel endpoints has changed its IP. Refreshing.
    Feb 12 16:21:40 	LCDd: Listening for queries on 127.0.0.1:13666
    Feb 12 16:21:40 	LCDd: Using Configuration File: /usr/local/etc/LCDd.conf
    Feb 12 16:21:40 	LCDd: LCDd version 0.5.5 starting
    Feb 12 16:21:39 	check_reload_status: Starting packages
    Feb 12 16:21:39 	php: : pfSense package system has detected an ip change 0.0.0.0 -> ... Restarting packages.
    Feb 12 16:21:39 	php: : OpenNTPD is starting up.
    Feb 12 16:21:39 	dnsmasq[44759]: ignoring nameserver 127.0.0.1 - local interface
    Feb 12 16:21:39 	dnsmasq[44759]: ignoring nameserver 127.0.0.1 - local interface
    Feb 12 16:21:39 	dnsmasq[44759]: using nameserver 192.168.1.1#53
    Feb 12 16:21:39 	dnsmasq[44759]: reading /etc/resolv.conf
    Feb 12 16:21:39 	php: : The command '/usr/bin/killall 'ntpd'' returned exit code '1', the output was 'killall: warning: kill -TERM 51784: No such process'
    Feb 12 16:21:38 	php: : Creating rrd update script
    Feb 12 16:21:38 	php: : Resyncing OpenVPN instances for interface WAN.
    Feb 12 16:21:38 	php: lcdproc: Sync: End package sync
    Feb 12 16:21:38 	php: lcdproc: Sync: Begin package sync
    Feb 12 16:21:38 	php: lcdproc: Sync: End package sync
    Feb 12 16:21:38 	php: lcdproc: Sync: Begin package sync
    Feb 12 16:21:38 	php: : Restarting/Starting all packages.
    
    

    It ends up starting and stopping 3 times.

    Restarting the service again manually brings it back to normal.

    Steve


  • I'm not quite to 48 hours yet, 44 so far! :)  and I agree, I think we might have it mostly beat.

    Steve - I don't have the multiple process running on my x700 and everything seems fine on mine.  Perhaps you have some leftover cruft like I did?


  • Reinstalled the latest dev package on my Firebox X Core.

    LCDProc will not start I guess, the LCD just sits with "Thanks for using pfSense," and its random whether Services reports LCDProc as still running or stopped. Sometimes the server screen stays on and it says "Clients: 0 Server: 0"

    Any idea what's my problem?

    Feb 12 22:36:23 	LCDd: LCDd version 0.5.5 starting
    Feb 12 22:36:23 	LCDd: Using Configuration File: /usr/local/etc/LCDd.conf
    Feb 12 22:36:23 	LCDd: Listening for queries on 127.0.0.1:13666
    Feb 12 22:36:23 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 22:36:24 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 22:36:24 	LCDd: Server shutting down on SIGTERM
    Feb 12 22:36:26 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 22:36:28 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 22:36:30 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 22:36:32 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 22:36:34 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 22:36:36 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 22:36:38 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 22:36:40 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 22:36:42 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 22:36:44 	php: lcdproc: Start client procedure. Error counter: (0)
    Feb 12 22:36:46 	php: lcdproc: Start client procedure. Error counter: (0)
    
  • Netgate Administrator

    Brak, is that just after boot?
    I think it's likely that the various delays in the script are causing a problem when the package is started and stopped in quick succession. This is especially true now that the kill loop will stop all running copies of either the client or the server.
    In my case simply restarting the package from gui was enough to sort everything out. Given only one stop and start with no time limit it works fine.

    Possibilities for some experimenting are:
    The start script first kills the client and server then starts it. When sent a restart it effectively does stop-stop-start. Might be better to only have one stop routine?
    Reduce or remove the delays in the script.

    Steve


  • Hi,
      yes, there's a problem when the package is resynced in quick succession. Now I am ill at home, and I will be home recovering for the next few days, after that I will investigate and fix the problem (Steve, your suggestions are a very good starting point).

    For the moment the package should be started manually when this occurs.

    Ciao,
    Michele


  • @stephenw10:

    Brak, is that just after boot?

    Actually, it's both. Even using the Services GUI to start or restart the service will lead to this failure. :(