Fail with float values aggregating

php
aggregation

#1

Hi, I tried to aggregate bins, which contain integer values and got correct result, but if one bin from set is filled with float value - I’m getting an empty array as a result It seems that the data is lost somewhere in PHP extension.

 $ff = [["filter" =>[[ "field"=> 'device_brand', "value"=> [ 'Sony'], "type"=> 'equal' ]],
                      "groupBy"=> ['device_brand','os']]
                  ];
            $records = [];
            $status = $db->aggregate("nginad", "detailedReporting", $where, "sample", "my_query",$ff,$records);

When group integer values the result is

Array(
   [0] => Array(
            [Sony] => Array(
                    [Android] => Array(
                            [a] => 148
                            [b] => 0
                            [c] => 3561
                            [d] => 147
                   )
            )
    )
)

So i tried group float values the result is

Array(
     [0] => Array(
            [Sony] => Array(
                    [Android] => Array
                        (
                        )
                )
        )
)

Expecting result is

Array(
   [0] => Array(
            [Sony] => Array(
                    [Android] => Array(
                            [a] => 148
                            [b] => 0
                            [c] => 3561
                            [d] => 147
                            [e] => 15.285
                   )
            )
    )
)

How can i solve or workaround this issue?


#2

What happens when you call this function from AQL with AGGREGATE?


#3

Note that the node.js client with the same lua script response with

{Sony: 
     { Android: 
            { a: 148,
              b: 0,
              c: 3561,
              d: 147,
            e:15.285
          }
    }
}

#4

That confirms it. Linking to issue 122 of the PHP client.