cakePHPの$model->saveにおけるUpdateとInsert

cakePHPの$mode->saveで1時間以上ハマってしまった。

$model->saveは挿入データのidがnullならInsert,そうでなければUpdateする仕様になってる。
なので以下のようなコードを書けばレコードが2つInsertされると思って実行してみると。。

 <?php
  $this->Model->save($this->data);     //1つめのレコードInsert
  unset($this->data['Model']['id']);   //unsetでid削除
  $this->Model->save($this->data);   //2つめのレコードInsert
  ?>

レコードが1つしか登録されない。
実行されたSQLデバッグモードONにしてみてみると、1つめのレコードはInsertされているが
2つのめレコードはInsertされず、1つめのレコードをUpdateしているだけになっていた。
id削除してるのになぜ?


ちなみにunsetの仕様は以下のようになっているのでidはNULLになっているはず。
PHPマニュアル NULL

 特別な NULL 値は、ある変数が値を持たないことを表します。NULL  は、NULL 型の唯一の値です。
 変数は、以下の場合に NULL とみなされます。
 ・定数 NULL が代入されている場合。
 ・まだ値が何も代入されていない場合
 ・unset() されている場合。 



悩んだ挙句,コードを以下のように変更すると2つのレコードを無事Insertできた。

 <?php
  $this->Model->save($this->data);     //1つめのレコードInsert
  //unset($this->data['Model']['id']);
  $this->data['Model']['id'] = NULL ;  //unset使わず、NULLを代入
  $this->Model->save($this->data);   //2つめのレコードInsert
  ?>



なぜこれだと通るのかまだ原因特定はまだできてない。。。

環境
PHP 4.3.9
cakephp 1.1.17.5612