Hi Guillaume,

What controller or switches are you using? 


This is what the FreeRADIUS documentation says about accounting sessions:

Many  NAS  vendors  have  their equipment  supply  an  Acct-Session-Id
       attribute which is not unique over reboots.  This makes accounting dif-
       ficult,  as there will be many independent sessions with the same Acct-
       Session-Id attribute. 


You will probably have to rely on the “accuniqueid” column in radacct.
Can you check if you have values for that column ?

mysql> select count(acctuniqueid) from radacct where acctuniqueid is NULL; 


Also, check if you have the “acct_unique” module in the pre-acct session of 
conf/radiusd/packetfence:

    preacct {
        preprocess
        acct_unique
        suffix
        files
    }



If you do, then it should be possible to replace the reference to acctsessionid 
is the stored procedure with one to acctuniqueid.
I am working on a patch to do just that.




--
Louis Munro
[email protected]  ::  www.inverse.ca 
+1.514.447.4918 x125  :: +1 (866) 353-6153 x125
Inverse inc. :: Leaders behind SOGo (www.sogo.nu) and PacketFence 
(www.packetfence.org)

> On Jan 26, 2016, at 9:51 , Guillaume Promonet <[email protected]> wrote:
> 
> Hi All,
> 
> I have an other question today, always in the same context:
> I upgraded from packet fence 5.5 to the latest 5.6.0 and today in 5.6.1.
> 
> I note the following errors with PacketFence 5.6.0 and 5.6.1 in radius.log 
> when I disconnect a node:
> 
> 
> Wed Jan 20 12:04:43 2016 : Error: [sql] Couldn't update SQL accounting STOP 
> record - Result consisted of more than one row
> 
> 
> In the source code, there is a difference in the mysql procedure "acct_stop". 
> With packetfence 5.5, the query use 'SUM' and return only 1 row :
>  
>  SELECT SUM(acctinputoctets), SUM(acctoutputoctets), SUM(acctsessiontime)
>     INTO Previous_Input_Octets, Previous_Output_Octets, Previous_Session_Time
>     FROM radacct_log
>     WHERE acctsessionid = p_acctsessionid
>     AND username = p_username
>     AND nasipaddress = p_nasipaddress;
> 
> 
> 
> But with packetfence 5.6.X the query is modified and can return several rows 
> ( and generate the error log in radius.log )  :
> 
> SELECT acctinputoctets, acctoutputoctets, acctsessiontime
>     INTO Previous_Input_Octets, Previous_Output_Octets, Previous_Session_Time
>     FROM radacct
>     WHERE acctsessionid = p_acctsessionid
>     AND username = p_username
>     AND nasipaddress = p_nasipaddress;
> 
> 
> An idea ?
> 
> Thanks in advance,
> 
> --
> Guillaume PROMONET
> Neptune Internet Services 
> 
> ------------------------------------------------------------------------------
> Site24x7 APM Insight: Get Deep Visibility into Application Performance
> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
> Monitor end-to-end web transactions and take corrective actions now
> Troubleshoot faster and improve end-user experience. Signup Now!
> http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140_______________________________________________
>  
> <http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140_______________________________________________>
> PacketFence-users mailing list
> [email protected] 
> <mailto:[email protected]>
> https://lists.sourceforge.net/lists/listinfo/packetfence-users 
> <https://lists.sourceforge.net/lists/listinfo/packetfence-users>
------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140
_______________________________________________
PacketFence-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/packetfence-users

Reply via email to