particionamiento mysql con unix_timestamp desde la variable

Dado este :

delimiter //
create procedure setup()
begin
  declare d datetime;
  set d = rounddate(now());

  create table s_time (req_id int not null,
                       ser_id int not null,
                       hel_id int not null,
                       posted int unsigned not null,
                       completed int unsigned not null default 0
                      )
  partition by range (completed) (partition p0 values less than ( unix_timestamp(d) ),
                                  partition p1 values less than ( unix_timestamp(d + interval 1 day) )
                                 );
end//

Yo obtengo :

ERROR 1064 (42000) : Constant, random, or timezone-dependent expression in (sub)partitioning function are not allowed

¿Hay alguna forma de hacer que esto funcione, o tengo que usar una cadena codificada para la entrada? es decir, utilizar:unix_timestamp('2012-07-07 00:00:00')

Respuestas a la pregunta(2)

Su respuesta a la pregunta