Hi, On Fri, Apr 8, 2016 at 12:29 PM, Yasuo Ohgaki <yohg...@ohgaki.net> wrote:
> Hi Andrey, > > On Fri, Apr 8, 2016 at 6:20 PM, Andrey Andreev <n...@devilix.net> wrote: > > On Fri, Apr 8, 2016 at 11:33 AM, Yasuo Ohgaki <yohg...@ohgaki.net> > wrote: > >> > >> Hi Andrey, > >> > >> On Fri, Apr 8, 2016 at 4:57 PM, Andrey Andreev <n...@devilix.net> > wrote: > >> >> > >> >> PS(gc_maxlifetime) is needed, so I fixed the last commit. > >> >> > >> > > >> > It is necessary for probability-triggered GC because you don't have > >> > another > >> > way of giving a TTL value then, but that's not the case for a direct > >> > session_gc() call. > >> > >> PS(gc_maxlifetime) is not related directly to probability based GC, > >> but it's about which session should be deleted. > >> > >> Save handlers are supposed to delete inactive sessions exceeds > >> PS(gc_maxlifetime) when GC is issued. Save handlers are not suppose to > >> use PS(vars) directly and should use passed TTL parameter. Therefore, > >> the parameter is passed. > >> > > > > It is not directly related to gc_probability it is very obviously the > result > > gc_probability-based design. > > > > Still, even if we agree to disagree on that, it's not a blocker for > > maxlifetime being overridable via a parameter. > > We need TTL value and the TTL is gc_maxlifetime. > How would you specify session data to be removed? > > TTL value is mandatory. > I wrote this pseudo-code in my very first reply to this thread ... function session_gc($ttl = ini_get('session.gc_maxlifetime')) {} If that's unclear, here's a more verbose way to put it: function session_gc($ttl = null) { if (empty($ttl)) { $ttl = ini_get('session.gc_maxlifetime'); } // ... } It just gives the ability to override the INI value for those who don't want or need it. Cheers, Andrey.