2013/3/25 Alan DeKok <al...@deployingradius.com>: > Бен Томпсон wrote: >> The SQL statement "START TRANSACTION" looks to be hard coded into >> rlm_sqlippool.c but I don't know enough about Oracle etiher to say why >> it is flagged as an error. > > It's a configuration item. You can change it by editing the queries, > and adding: > > allocate-begin = "..." > allocate-commit = "..." > allocate-rollback = "..."
Thanks again for the info. I have figured it out now, and after looking at the queries.conf for for the standard sqlippool module added this to my queries.conf : # Commit anything outstanding before beginning a new batch of transactions allocate-begin = "COMMIT" start-begin = "COMMIT" alive-begin = "COMMIT" stop-begin = "COMMIT" on-begin = "COMMIT" off-begin = "COMMIT" I also tried pulled the latest git commit this morning and now I have a new couple of new errors :- (0) dhcp_sqlippool : expand: 'SELECT framedipaddress FROM radippool WHERE pool_name = '%{control:Pool-Name}' AND expiry_time < CURRENT_TIMESTAMP AND ROWNUM <= 1 ORDER BY CASE WHEN username = '%{User-Name}' THEN 0 ELSE 1 END, CASE WHEN callingstationid = '%{Calling-Station-Id}' THEN 0 ELSE 1 END, expiry_time FOR UPDATE' -> 'SELECT framedipaddress FROM radippool WHERE pool_name = 'test_ip_pool' AND expiry_time < CURRENT_TIMESTAMP AND ROWNUM <= 1 ORDER BY CASE WHEN username = 'DHCP-00:0c:29:a6:a0:e7' THEN 0 ELSE 1 END, CASE WHEN callingstationid = '00:0c:29:a6:a0:e7' THEN 0 ELSE 1 END, expiry_time FOR UPDATE' rlm_sql (sql): Executing query: 'SELECT framedipaddress FROM radippool WHERE pool_name = 'test_ip_pool' AND expiry_time < CURRENT_TIMESTAMP AND ROWNUM <= 1 ORDER BY CASE WHEN username = 'DHCP-00:0c:29:a6:a0:e7' THEN 0 ELSE 1 END, CASE WHEN callingstationid = '00:0c:29:a6:a0:e7' THEN 0 ELSE 1 END, expiry_time FOR UPDATE' rlm_sql_oracle: OCIDefineByPos() failed in sql_select_query: ORA-24424: Invalid attempt to define at position 0 rlm_sql (sql): Database query error 'ORA-24424: Invalid attempt to define at position 0 ' sqlippool_query1: database query error (0) dhcp_sqlippool : expand: 'COMMIT' -> 'COMMIT' rlm_sql (sql): Executing query: 'COMMIT' (0) dhcp_sqlippool : escape: 'test_ip_pool' -> 'test_ip_pool' (0) dhcp_sqlippool : expand: 'SELECT id FROM (SELECT id FROM radippool WHERE pool_name = '%{control:Pool-Name}') WHERE ROWNUM = 1' -> 'SELECT id FROM (SELECT id FROM radippool WHERE pool_name = 'test_ip_pool') WHERE ROWNUM = 1' rlm_sql (sql): Executing query: 'SELECT id FROM (SELECT id FROM radippool WHERE pool_name = 'test_ip_pool') WHERE ROWNUM = 1' rlm_sql_oracle: OCIDefineByPos() failed in sql_select_query: ORA-24424: Invalid attempt to define at position 0 rlm_sql (sql): Database query error 'ORA-24424: Invalid attempt to define at position 0 ' sqlippool_query1: database query error I am not sure what is happening here so I will have to do some reading. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html