protected function getCacheHash($id)
    {
        if (is_array($id)) {
            $id = Util::filterScalarValues($id);
            $id = array_map(
                function ($child) {
                    return (string)$child; //Converts ids from integer to string => Parameters for transform and reverse functions must be identicals
                },
                $id
            );
            sort($id);
        } else {
            $id = (string) $id;
        }

        return md5(
            json_encode(
                array(
                    spl_object_hash($this->queryBuilder),
                    $this->identifier,
                    $id,
                )
            )
        );
    }