I got the solution for my problem. I had to overwrite the rules function under Model_auth_user in Model_user
following is my MOdel_user
<?php defined('SYSPATH') or die('No direct script access.');
class Model_User extends Model_Auth_User {
public function rules()
{
return array(
'username' => array(
array('not_empty'),
array('max_length', array(':value', 32)),
array(array($this, 'unique'), array('username', ':value')),
),
'password' => array(
array('not_empty'),
),
'email' => array(
array('email'),
array(array($this, 'unique'), array('email', ':value')),
),
);
}
}