EX4 Firmware Release 1.02.36

Taking the plunge and happily updating!

Will comment back with the results

Updated and done! Things went pretty smooth. Install was super quick and the longest part was the reboot, and spin up of the disk. 

MyCloud app for iPhone on LTE  & Desktop app for mac seems a bit faster with pulling up shares and files! Is it just me or is that a result of the fix? 

While I am happy to see an update and dont want to be a negative Nancy so to speak but a tad surprised WD didn’t use this update as a chance to introduce a few new features. But either way at least they finally fixed some of the major problems

Heheh… Can’t have it both ways. Bug fixes AND new features …quickly? :slight_smile:

EX4 Firmware update AND Ubuntu 14.04 release in same month? SOOOO EXCITING. only concern here is I don’t see the “shutdown problem fix” anywhere in that post.

on the Mac using SMB2 enabled on the NAS and JUMBO frames enabled in nas and on switch ports ( just to aggravate Tony :slight_smile: using BlackMagic Design DiskSpeedTest seeing approx 90MB/s read…write seems stuck where it was previously ( RAID 5 parity generation? ) 

feels more responsive in finder. 

Better, let’s see some mix & match sized drives expandable RAID USB 3 backup improvements, amazon Glacier cloud support, 3rd party apps “PLEX !” 

Yeah I agree it does feel a bit snappier in finder. It loaded the shares 1,2,3 instead of standing their spinning around waiting for them to load. I also think they need to implement more features into the server such as the ones you listed.

Well, if EX4 got update yesterday, hopefully EX2 users will get an update this week also (?)

I would like to think so. I know that there was a fix to the heartbleed problem that WD is having so I would expect them to push a fix to the other units ASAP

Can’t say I’m impressed with the new firmware.

since installing I’ve found the following

  1. Web UI is extremly slow

  2. for some reason it keeps turning off the toggle for Cloud Access in General Settings (**bleep**??)

  3. If you click on “Cloud Access” on the top menu, it says its connected

  4. Cloud access is REALLY slow now.

I’m tempted to back this update out, I was getting the 500 errors, but at least the the performance was ok on the UI/Cloud

Added:

After the upgrade the CPU is maxed out all the time with the process " php-fpm: pool www" taking up all 4 CPUs

ckc123 wrote:

After the upgrade the CPU is maxed out all the time with the process " php-fpm: pool www" taking up all 4 CPUs 

Are you in the right forum?    The EX4 isn’t even a dual core, let alone 4 core processor…

But come to think of it, I don’t know of any WD NAS that has 4 CPUs…

Even when I’m interacting with the EX4’s UI, the CPU load is only about 15% on mine (with php-fpm being the highest at about 10-12%) … so I’m not sure what you’re seeing.

Yeah I am in the rigth forum…

I was thinking it was a quad since there was 4 processes each taking a max of 17-25 %  each (and not going above 25%).  I’ve seem the same pattern in a quad cpu system where each cpu is 100% individually, but divided by 4 since there are 4 on a machine…

what I see if this:

  1. UI is extremly slow (Login, clicking on Setup, and chooseing items on left menu take 10 mins to refresh)

Logging in with SSH I see

Load average: 7.76 7.92 5.99 7/186 9233
  PID  PPID USER     STAT   VSZ %VSZ CPU %CPU COMMAND
 4383  3928 root     R    37336  7.3   0 21.3 php-fpm: pool www
 5051  3928 root     R    37332  7.3   0 21.3 php-fpm: pool www
 5188  3928 root     R    37332  7.3   0 21.3 php-fpm: pool www
 3929  3928 root     R    37524  7.3   0 14.2 php-fpm: pool www
 5258  3928 root     R    37332  7.3   0 14.2 php-fpm: pool www

(always between 17% - 25% for each, and all using up 90%-100% of the CPU)

this happens from a fresh reboot, without even hitting the webserver…(it’s a little less without hitting the server, but as soon as you try to login it gets extremly slow…)

ckc123 - This simply shows that you have FIVE (not four) child processes running and NOT that there are 4 cores. AndTonyPh12345 is right, EX4’s (and EX2’s) have single core CPU…not dual or quad cores :slight_smile:

Why you have 5 child processes is because there are certain settings stored in /etc/php//php-fpm.conf - pasting the pertinent ones from my EX2. Yes, mine’s EX2 but I am confident you have the same settings on the EX4, if not the same exact vaues for these settings. Please note that even if you edit this file, any changes will be wiped out on reboot.

Of importance is the last setting - the duration before these processes are auto-killed…it appears that this setting is not set but is commented out, hence these idle child-processes are not auto-killed even after it’s been idle for sometime.

Minutes ago I tried to access the dashboard from both my laptop and simultaneously from my iPad and now I have 3 processes. So it’s not unusual under the default settings above for an EX2/EX4 to have up to 5 lingering idle child processes…but I am not sure if that is good or not.

Finally, based on the below settings I am doubtful that you get 5 of these child processes on reboot. There should only be one child process after reboot. Unless EX4 has different default value for that settings than EX2.

------------------------snippet start---------------------------

; Choose how the process manager will control the number of child processes.
; Possible Values:
;     static - a fixed number (pm.max_children) of child processes;
;     dynamic - the number of child processes are set dynamically based on the
;                        following directives. With this process management, there will be
;                        always at least 1 children.
;                        pm.max_children - the maximum number of children that can
;                                                           be alive at the same time.
;                        pm.start_servers - the number of children created on startup.
;                        pm.min_spare_servers - the minimum number of children in ‘idle’
;                                                                      state (waiting to process). If the number
;                                                                      of ‘idle’ processes is less than this
;                                                                      number then some children will be created.
;                        pm.max_spare_servers - the maximum number of children in ‘idle’
;                                                                       state (waiting to process). If the number
;                                                                       of ‘idle’ processes is greater than this
;                                                                       number then some children will be killed.
;    ondemand - no children are created at startup. Children will be forked when
;                           new requests will connect. The following parameter are used:
;                           pm.max_children - the maximum number of children that
;                                                              can be alive at the same time.
;                           pm.process_idle_timeout - The number of seconds after which
;                                                                              an idle process will be killed.
;  Note: This value is mandatory.
pm = dynamic

; The number of child processes to be created when pm is set to ‘static’ and the
; maximum number of child processes when pm is set to ‘dynamic’ or ‘ondemand’.
; This value sets the limit on the number of simultaneous requests that will be
; served. Equivalent to the ApacheMaxClients directive with mpm_prefork.
; Equivalent to the PHP_FCGI_CHILDREN environment variable in the original PHP
; CGI. The below defaults are based on a server without much resources. Don’t
; forget to tweak pm.* to fit your needs.
; Note: Used when pm is set to ‘static’, ‘dynamic’ or ‘ondemand’
; Note: This value is mandatory.
pm.max_children = 5

; The number of child processes created on startup.
; Note: Used only when pm is set to ‘dynamic’
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2
pm.start_servers = 1

; The desired minimum number of idle server processes.
; Note: Used only when pm is set to ‘dynamic’
; Note: Mandatory when pm is set to ‘dynamic’
pm.min_spare_servers = 1

; The desired maximum number of idle server processes.
; Note: Used only when pm is set to ‘dynamic’
; Note: Mandatory when pm is set to ‘dynamic’
pm.max_spare_servers = 2

; The number of seconds after which an idle process will be killed.
; Note: Used only when pm is set to ‘ondemand’
; Default Value: 10s
;pm.process_idle_timeout = 10s;

----------------------snippet end-------------------------