Skip to content

ttms and other "download time" metrics can be -1 #5491

Description

@zwoop

Under certain conditions, it seems the milestone used for e.g. ttms (and a few others) are not set properly. This seems to primarily happen for 302's, but also for some 403's. The relevant code snippets are:

LogAccess::marshal_transfer_time_ms(char *buf)
{
  if (buf) {
    marshal_int(buf, m_http_sm->milestones.difference_msec(TS_MILESTONE_SM_START, TS_MILESTONE_SM_FINISH));
  }

And, milestones.difference_msec does

    if (milestones[ms_end] == 0) {
      return -1;
    }
    return ink_hrtime_to_msec(milestones[ms_end] - milestones[ms_start]);

So, in this case, TS_MILESTONE_SM_FINISH must not have been set to a value at all, i.e. it looks like the SM never finished (which clearly can not be the case).

What's surprising is that this primarily seems to happen on parent proxies, and not on the child proxies.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions