El resultado de una consulta se guarda en una variable de tipo "recurso" (es una referencia a un recurso externo). Este tipo de variables no pueden ser guardadas en variables de sesion. Por lo que tengo entendido, php almacena los datos de las variables de sesion en un archivo utilizando una representacion como la que devuelve la funcion
serialize(). Esta función trabaja bien con todo los tipos excepto con el tipo "resource".
Saludos.