User tests: Successful: Unsuccessful:
Fixing issue described in bug #33324, related to session storage classes JSessionStorageMemcache and JSessionStorageMemcached (libraries/joomla/session/storage/memcache(d).php)
There are presently three problems within this class.
Within the constructor an object variable is referenced that hasn't been initialised thus causing en error to be thrown trying to reference an uninitialised variable. So, $_servers is now a private object variable.
Within the constructor the parent class' constructor is called before the object variable $_servers was actually initialised.
The parent class' constructor's job is to call
$this->register($options)
This method is overridden by this class. Within the method the object variable $_servers is referenced for session.save_path population. Without the patch the call for $_servers ends up with no data. With the patch applied, the call receives the populated object variable containing all registered servers.
Description | <p>In __construct() moved the parent class construct call below initilation of $<em>servers.<br> In register() fixed the missing consideration of $</em>servers being an array of arrays.</p> | ⇒ | <p>There are presently three problems within this class.</p> <ol> <li><p>Within the constructor the parent class' constructor is called before the required object variable $_servers was actually initialised.</p></li> <li><p>The parent class' constructor's job is to call</p></li> </ol><pre><code>$this->register($options) </code></pre> <p>This method is overridden by this class. Within the method the object variable $<em>servers is referenced for session.save</em>path population. Without the patch the call for $_servers ends up with no data. With the patch applied, the call receives the populated object variable containing all registered servers.</p> <ol> <li>As it is obviously intended to register more than one server the variable $_servers is an array of arrays. Thus, in register it must be evaluated how many servers are registered and which one to select. I guess this will involve priority flags at some day. Currently there is only one server registered. So we have to reference this entry first before we can read its host:port for assignment. With this patch applied, this session handler is properly loaded and working.</li> </ol><p>Find the assiciated tracker item at <a href="http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=33324">joomlacode.org</a></p> |
Title |
|
||||||
Description | <p>There are presently three problems within this class.</p> <ol> <li><p>Within the constructor the parent class' constructor is called before the required object variable $_servers was actually initialised.</p></li> <li><p>The parent class' constructor's job is to call</p></li> </ol><pre><code>$this->register($options) </code></pre> <p>This method is overridden by this class. Within the method the object variable $<em>servers is referenced for session.save</em>path population. Without the patch the call for $_servers ends up with no data. With the patch applied, the call receives the populated object variable containing all registered servers.</p> <ol> <li>As it is obviously intended to register more than one server the variable $_servers is an array of arrays. Thus, in register it must be evaluated how many servers are registered and which one to select. I guess this will involve priority flags at some day. Currently there is only one server registered. So we have to reference this entry first before we can read its host:port for assignment. With this patch applied, this session handler is properly loaded and working.</li> </ol><p>Find the assiciated tracker item at <a href="http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=33324">joomlacode.org</a></p> | ⇒ | <p>There are presently three problems within this class.</p> <ol> <li><p>Within the constructor an object variable is referenced that hasn't been initialised thus causing en error to be thrown trying to reference an uninitialised variable. So, $_servers is now a private object variable.</p></li> <li><p>Within the constructor the parent class' constructor is called before the object variable $_servers was actually initialised.</p></li> <li><p>The parent class' constructor's job is to call</p></li> </ol><pre><code>$this->register($options) </code></pre> <p>This method is overridden by this class. Within the method the object variable $<em>servers is referenced for session.save</em>path population. Without the patch the call for $_servers ends up with no data. With the patch applied, the call receives the populated object variable containing all registered servers.</p> <ol> <li>As it is obviously intended to register more than one server the variable $_servers is an array of arrays. Thus, in register it must be evaluated how many servers are registered and which one to select. I guess this will involve priority flags at some day. Currently there is only one server registered. So we have to reference this entry first before we can read its host:port for assignment. With this patch applied, this session handler is properly loaded and working.</li> </ol><p>Find the assiciated tracker item at <a href="http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=33324">joomlacode.org</a></p> |
Description | <p>Fixing issue described in <a href="http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=33324">bug #33324</a>, related to session storage classes JSessionStorageMemcache and JSessionStorageMemcached (libraries/joomla/session/storage/memcache(d).php)</p> <p>There are presently three problems within this class.</p> <ol> <li><p>Within the constructor an object variable is referenced that hasn't been initialised thus causing en error to be thrown trying to reference an uninitialised variable. So, $_servers is now a private object variable.</p></li> <li><p>Within the constructor the parent class' constructor is called before the object variable $_servers was actually initialised.</p></li> <li><p>The parent class' constructor's job is to call</p></li> </ol><pre><code>$this->register($options) </code></pre> <p>This method is overridden by this class. Within the method the object variable $<em>servers is referenced for session.save</em>path population. Without the patch the call for $_servers ends up with no data. With the patch applied, the call receives the populated object variable containing all registered servers.</p> <ol> <li>As it is obviously intended to register more than one server the variable $_servers is an array of arrays. Thus, in register it must be evaluated how many servers are registered and which one to select. I guess this will involve priority flags at some day. Currently there is only one server registered. So we have to reference this entry first before we can read its host:port for assignment. With this patch applied, this session handler is properly loaded and working.</li> </ol> | ⇒ | <p>Fixing issue described in <a href="http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=33324">bug #33324</a>, related to session storage classes JSessionStorageMemcache and JSessionStorageMemcached (libraries/joomla/session/storage/memcache(d).php)</p> <p>There are presently three problems within this class.</p> <ol class="task-list"> <li><p>Within the constructor an object variable is referenced that hasn't been initialised thus causing en error to be thrown trying to reference an uninitialised variable. So, $_servers is now a private object variable.</p></li> <li><p>Within the constructor the parent class' constructor is called before the object variable $_servers was actually initialised.</p></li> <li><p>The parent class' constructor's job is to call</p></li> </ol><pre><code>$this->register($options) </code></pre> <p>This method is overridden by this class. Within the method the object variable $_servers is referenced for session.save_path population. Without the patch the call for $_servers ends up with no data. With the patch applied, the call receives the populated object variable containing all registered servers.</p> <ol class="task-list"> <li>As it is obviously intended to register more than one server the variable $_servers is an array of arrays. Thus, in register it must be evaluated how many servers are registered and which one to select. I guess this will involve priority flags at some day. Currently there is only one server registered. So we have to reference this entry first before we can read its host:port for assignment. With this patch applied, this session handler is properly loaded and working.</li> </ol> |
Status | New | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2014-08-08 14:24:55 |
Closed as per the comment on the tracker