Out of memory error and duplicate entry error (in error log)

(root)>cat mysql-err.log
070911 14:29:12 InnoDB: Started; log sequence number 88 3327321420
/usr/sbin/mysqld: Out of memory (Needed 950109184 bytes)
/usr/sbin/mysqld: Out of memory (Needed 712581120 bytes)
/usr/sbin/mysqld: Out of memory (Needed 534435840 bytes)
/usr/sbin/mysqld: Out of memory (Needed 400825344 bytes)
/usr/sbin/mysqld: Out of memory (Needed 300616704 bytes)
/usr/sbin/mysqld: Out of memory (Needed 225460224 bytes)
ERROR: 1062 Duplicate entry ‘1’ for key 1
070911 14:29:12 [Note] /usr/sbin/mysqld: ready for connections.
Version: ‘5.0.45-community-log’ socket: ‘/var/lib/mysql/mysql.sock’ port: 3306 MySQL Community Edition (GPL)

mysql isn’t telling me where the duplicate entry is. how do i find it?

also, how can i see what is triggering the out of memory errors? i have no idea if they’re queries, my.cnf settings, or what. is there a log specifically for catching queries that failed? I’ll have to recheck the manual, but i don’t remember seeing one.

fixed the out of memory error. had my innodb buffer set above 2G on a 32bit system. still can’t find that pesky duplicate entry. any help is warmly appreciated