wtf prosper error

BigWill

A Living Legend.
Oct 14, 2007
4,019
107
0
In Hotels
When logging in I get this error


Duplicate entry '#######' for key 1

INSERT INTO 202_ips SET ip_address='SERVERIP', location_id='0'




###### is a number and serverip is my servers ip



It all worked fine until this morning, all my 5 other installs are fine on my server. I get this right after trying to login. Anyone know what this is?
 


Sounds like you may have sent so much traffic you wrapped whatever variable type they use for the key. So you broke the limit, not sure what it is but must be some sort of unsigned int. I'd expect if you converted to a larger variable type it may fix it. I don't know them off the top of my head you'll have to look up MYSQL variable types.
 
Hmm.. that could def be right. It was taking about 45min to run a daily report on that install

Anyone know how to fix this?
 
I would login to something like phpMyAdmin or Navicat for MySQL if you have it and just change the variable from MEDIUMINT (which I assume it is) to an INT.

I believe this would be the correct syntax to edit via phpMyAdmin:

"ALTER table table_name
MODIFY ip_address INT;"
 
The error looks like you are trying to write a record to the database with a value that must be unique (primary key) and the value already exists in another row. No two primary keys can be the same value.

The column ip_id is huge "bigint(20)" and is set to auto increment so this does seem weird. I believe it should be recording your IP - not your server's IP though.
 
Does your host have any sort of limitations in terms of the amount of records in a table/db? Can you delete any of the old records?
 
even stranger it worked from another ip but there's no data in it wtfffffffff

Delete the duplicate entry and you can set the auto_increment higher. +10 after the last entry.
DELETE FROM '202_ips' WHERE '202_ip'.'ip_id' = #######;
 
this still sounds like a mySQL error to me, even though you upgrades. you may want to back up (if you can), reinstall on a new DB. when prosper installs it flags for a previous SQL version I believe
 
not really a fix, but a workaround:

open the file functions-tracking202.php under the 202-config folder and comment lines 1780, 1781 and 1782

this will stop the script from updating the ip tables every time you log in to prosper202; therefore it won't break and you'll be able to login

however, as i said, it's just an workaround - in the semantics that the script will no longer record each IP that logs into your prosper account (not sure if you need this for something - maybe just tracking to see if someone hacks into your account, dunno)

use at your own risk ^_^