From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: vic ismakaev Organization: esoo To: sisyphus@altlinux.ru Subject: Re: [sisyphus] FreeRADIUS: sql_get_socket Date: Tue, 18 Feb 2003 11:21:33 +0500 User-Agent: KMail/1.5 References: <20030216114743.1e863b20.peet@eltel.net> In-Reply-To: <20030216114743.1e863b20.peet@eltel.net> MIME-Version: 1.0 Content-Type: text/plain; charset="koi8-r" Content-Transfer-Encoding: 8bit Content-Disposition: inline Message-Id: <200302181121.33835.viclists@mail.esoo.ru> Sender: sisyphus-admin@altlinux.ru Errors-To: sisyphus-admin@altlinux.ru X-BeenThere: sisyphus@altlinux.ru X-Mailman-Version: 2.0.9 Precedence: bulk Reply-To: sisyphus@altlinux.ru X-Reply-To: viclists@mail.esoo.ru List-Unsubscribe: , List-Id: List-Post: List-Help: List-Subscribe: , List-Archive: Archived-At: List-Archive: 16 Февраль 2003 13:47, Peter V. Saveliev написал: > ... > > Error: rlm_sql (sql): All sockets are being used! Please increase the > maximum number of sockets! > > Вот такая строчка вылезает после некоторого времени работы радиуса. > > Поискал в гугле: > > http://lists.cistron.nl/pipermail/freeradius-devel/2002-December/004149.htm >l > > В связи с этим вопрос: не будет ли с моей стороны большой наглостью :) > попросить у Виктора взглянуть на код sql.c и присоветовать что-нибудь > дельное? К сожалению, ничего дельного присоветовать не могу.Вчера поковырялся в исходниках, но ничего путного в голову не пришло.Такая проблема проявилась почти год назад и была пофикшена в версии 0.6, но похоже не до конца. Или это oracle-specific bug. > Пока что я намереваюсь поступить соответственно письму по > ссылке. Попробуйте.Хотя не уверен, что это правильный путь. > И еще: дело в том, что при использовании радиуса для учета VoIP, время > сессии, равное нулю, встречается не то чтобы часто, но примерно в 50%: > то занято, то не туда попал, то номера нет, то еще что... К сожалению, > это не учтено в SQL-схеме (по крайней мере, для Oracle), где > ACCTSESSIONTIME не может быть равным нулю. Почему не учтено? rlm_sql/drivers/rlm_sql_oracle/db_oracle.sql CREATE TABLE radacct ( radacctid INT PRIMARY KEY, ......... acctsessiontime NUMERIC(12), .......... ) По идее ACCTSESSIONTIME может иметь значение '0' в БД. >А логгировать эти записи все > равно надо: они нужны для учета как раз таких сбойных звонков, это очень > важно. > > Также rlm_sql ругается: Stop packet with zero session length. Правда, > INSERT все равно делает. > > Я это к чему... к тому, что пофиксить бы... А еще спустя k таких ошибок > обращения к базе: > 1) в логи сыпется ошибка, приведенная в начале; > 2) работа с БД прекращается; > 3) хуже того, радиус перестает работать с другими модулями. > То есть, он не только перестает класть аккаунтинг в Oracle, но даже > пускать на кошачий EXEC (Login-User'ы у меня авторизуются в LDAP), что > обидно. У Вас эта проблема возникает при работе с Ораклом? Или с MySQL/PgSQL тоже пробовали? > Заранее спасибо за совет и внимание. Было бы за что :( -- С уважением Виктор В Исмакаев