Profile of lib/PONAPI/DAO/Request/Role/HasSort.pm

← Index
NYTProf Performance Profile «line view»
For script/ponapi
Run on Wed Feb 10 15:51:26 2016
Reported on Thu Feb 11 09:43:11 2016

Filename | /home/mickey/git_tree/PONAPI/Server/lib/PONAPI/DAO/Request/Role/HasSort.pm
Statements | Executed 325315 statements in 1.12s

Subroutines
Calls | P | F | Exclusive Time | Inclusive Time | Subroutine
--- | --- | --- | --- | --- | ---
100001 | 1 | 1 | 466ms | 556ms | PONAPI::DAO::Request::Role::HasSort::::_validate_sortPONAPI::DAO::Request::Role::HasSort::_validate_sort
74695 | 2 | 1 | 211ms | 211ms | PONAPI::DAO::Request::Role::HasSort::::__ANON__[lib/PONAPI/DAO/Request/Role/HasSort.pm:10]PONAPI::DAO::Request::Role::HasSort::__ANON__[lib/PONAPI/DAO/Request/Role/HasSort.pm:10]
1 | 1 | 1 | 17µs | 7.53ms | PONAPI::DAO::Request::Role::HasSort::::BEGIN@4PONAPI::DAO::Request::Role::HasSort::BEGIN@4
1 | 1 | 1 | 8µs | 84µs | PONAPI::DAO::Request::Role::HasSort::::BEGIN@27PONAPI::DAO::Request::Role::HasSort::BEGIN@27

Call graph for these subroutines as a Graphviz dot language file.

Line | State ments | Time on line | Calls | Time in subs | Code
--- | --- | --- | --- | --- | ---
1 |  |  |  |  | # ABSTRACT: DAO request role - `sort`
2 |  |  |  |  | package PONAPI::DAO::Request::Role::HasSort;
3 |  |  |  |  |
4 | 2 | 170µs | 2 | 15.1ms | # spent 7.53ms (17µs+7.52) within PONAPI::DAO::Request::Role::HasSort::BEGIN@4 which was called: # once (17µs+7.52ms) by Module::Runtime::require_module at line 4 use Moose::Role; # spent 7.53ms making 1 call to PONAPI::DAO::Request::Role::HasSort::BEGIN@4 # spent 7.52ms making 1 call to Moose::Role::import
5 |  |  |  |  |
6 |  |  |  |  | has sort => (
7 |  |  |  |  | traits => [ 'Array' ],
8 |  |  |  |  | is => 'ro',
9 |  |  |  |  | isa => 'ArrayRef',
10 | 74695 | 494ms |  |  | # spent 211ms within PONAPI::DAO::Request::Role::HasSort::__ANON__[lib/PONAPI/DAO/Request/Role/HasSort.pm:10] which was called 74695 times, avg 3µs/call: # 49756 times (140ms+0s) by PONAPI::DAO::Request::Retrieve::new at line 145 of (eval 45)[Eval/Closure.pm:144], avg 3µs/call # 24939 times (70.1ms+0s) by PONAPI::DAO::Request::RetrieveAll::new at line 138 of (eval 45)[Eval/Closure.pm:144], avg 3µs/call default => sub { +[] },
11 | 1 | 13µs | 1 | 129µs | handles => { # spent 129µs making 1 call to Moose::Role::has
12 |  |  |  |  | "has_sort" => 'count',
13 |  |  |  |  | },
14 |  |  |  |  | );
15 |  |  |  |  |
16 |  |  |  |  | # spent 556ms (466+90.1) within PONAPI::DAO::Request::Role::HasSort::_validate_sort which was called 100001 times, avg 6µs/call: # 100001 times (466ms+90.1ms) by PONAPI::DAO::Request::BUILD at line 119 of lib/PONAPI/DAO/Request.pm, avg 6µs/call sub _validate_sort {
17 | 100001 | 45.9ms |  |  | my ( $self, $args ) = @_;
18 |  |  |  |  |
19 | 100001 | 358ms |  |  | return unless defined $args->{sort};
20 |  |  |  |  |
21 | 25306 | 65.7ms | 25306 | 90.1ms | $self->has_sort # spent 90.1ms making 25306 calls to PONAPI::DAO::Request::RetrieveAll::has_sort, avg 4µs/call
22 |  |  |  |  | or $self->_bad_request( "`sort` is missing values" );
23 |  |  |  |  |
24 | 25306 | 157ms |  |  | return;
25 |  |  |  |  | }
26 |  |  |  |  |
27 | 3 | 35µs | 2 | 161µs | # spent 84µs (8+76) within PONAPI::DAO::Request::Role::HasSort::BEGIN@27 which was called: # once (8µs+76µs) by Module::Runtime::require_module at line 27 no Moose::Role; 1; # spent 84µs making 1 call to PONAPI::DAO::Request::Role::HasSort::BEGIN@27 # spent 76µs making 1 call to Moose::Role::unimport
28 |  |  |  |  |
29 |  |  |  |  | __END__