(RADIATOR) Issue with Duplicate Key when Adding a Session
Hugh Irvine
hugh at open.com.au
Thu Jul 24 23:56:11 CDT 2003
Hello Paul -
The error is a MySQL error which is complaining about a duplicate entry
for a unique key.
The unique key for the RADONLINE table is the combination of the
NAS-Identifier and NAS-Port which is what Radiator bases its session
database and simultaneous use checking on - the assumption being that
there are unique ports on each NAS.
The theory behind Radiator's use of the session database is that every
NAS is uniquely identified by the NAS-Identifier and every port on
every NAS is also uniquely identified by the NAS-Port attribute. When
Radiator receives an access request, it performs a delete on the
session database using the NAS-Identifier and NAS-Port combination as
preventative maintenance in case we have missed an accounting stop for
the port in question. When Radiator receives an accounting start a new
record is inserted into the session database and when an accounting
stop is received the record is removed.
Obviously if in your situation the NAS-Identifier + NAS-Port
combination is not unique, you will have a problem with the session
database (and it will be impossible to enforce simultaneous use limits).
regards
Hugh
On Friday, Jul 25, 2003, at 11:49 Australia/Melbourne, Paul wrote:
> Hi All,
>
> We are using Radiator 3.6 with latest patches but we are seeing an
> issue
> when a new session is added. We're getting Duplicate key which appears
> to be
> coming from the internal handler code rather than MySQL itself. Below
> is the
> error when it occurs. We've modified our "delete from RADONLINE" query
> to
> match the details more accurately and we don't appear to be having any
> problems with this, it's just "Adding session for %s" is where it
> seems to
> go astray.
>
> Thu Jul 24 20:57:37 2003: DEBUG: Adding session for myuser at hehe.com,
> 1.2.3.4, 6256
>
> Thu Jul 24 20:57:37 2003: DEBUG: do query is: 'delete from RADONLINE
> where
> NASIDENTIFIER='1.2.3.4' and NASPORT=6256 and ACCTSESSIONID =
> '00062398'':
>
> Thu Jul 24 20:57:37 2003: DEBUG: do query is: 'INSERT INTO RADONLINE
> (USERNAME, NASIDENTIFIER, ACCTSESSIONID, TIME_STAMP, FRAMEDIPADDRESS,
> NASPORT, NASPORTTYPE, SERVICETYPE, DNIS, PHONENO, SESSIONKEY,
> ACCTSESSIONTIME, INPUTOCTETS, OUTPUTOCTETS, POPID,targetid,
> DOWNLOADRATE,
> UPLOADRATE, ORIGUSER)
> VALUES('myuser','1.2.3.4','00062398','1059044257','5.6.7.8','6256','Asy
> nc','
> Framed-User','0312345678','03912345678', '6F419DF2',
> '2185','346903','2410144','61', '15', '45333', '26400',
> 'myuser at hehe.com')':
>
> Thu Jul 24 20:57:37 2003: ERR: do failed for 'INSERT INTO RADONLINE
> (USERNAME, NASIDENTIFIER, ACCTSESSIONID, TIME_STAMP, FRAMEDIPADDRESS,
> NASPORT, NASPORTTYPE, SERVICETYPE, DNIS, PHONENO, SESSIONKEY,
> ACCTSESSIONTIME, INPUTOCTETS, OUTPUTOCTETS, POPID, targetid,
> DOWNLOADRATE,
> UPLOADRATE, ORIGUSER)
> VALUES('myuser','1.2.3.4','00062398','1059044257','5.6.7.8','6256','Asy
> nc','
> Framed-User','0312345678','03912345678', '6F419DF2',
> '2185','346903','2410144','61', '15', '45333', '26400',
> 'myuser at hehe.com')':
> Duplicate entry '1.2.3.4-6256' for key 1
>
> If you have any ideas that'd be great. Thanks
>
> Regards,
>
> Paul Rivoli
> paul at kbs.net.au
> K B S I N T E R N E T
>
>
>
> ===
> Archive at http://www.open.com.au/archives/radiator/
> Announcements on radiator-announce at open.com.au
> To unsubscribe, email 'majordomo at open.com.au' with
> 'unsubscribe radiator' in the body of the message.
>
>
NB: have you included a copy of your configuration file (no secrets),
together with a trace 4 debug showing what is happening?
--
Radiator: the most portable, flexible and configurable RADIUS server
anywhere. Available on *NIX, *BSD, Windows 95/98/2000, NT, MacOS X.
-
Nets: internetwork inventory and management - graphical, extensible,
flexible with hardware, software, platform and database independence.
===
Archive at http://www.open.com.au/archives/radiator/
Announcements on radiator-announce at open.com.au
To unsubscribe, email 'majordomo at open.com.au' with
'unsubscribe radiator' in the body of the message.
More information about the radiator
mailing list