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.

Reply via email to