Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Не получается сделать более 3700 инсертов подряд / 15 сообщений из 15, страница 1 из 1
25.02.2008, 00:48
    #35152904
жува4ка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
Здрассти... наверняка нарушаю какойто базовый концепт... но в FAQ все тихо по этому поводу )

С разными серверами, на разных платформах, в разных программах при попытке сделать мнооожество инсертов подряд получаю ERROR [08001] Could not connect to the server;
Could not connect to remote socket. после всего навсего 3700-4000 инсерта. Сервер не падает... просто надо еще раз стартовать программу.

postgre юзаю недавно... яву тоже ) Потому, изначально получив ошибку в связке едваустановленныйпостгре + ява ... я не удивился - решил что чтото не настроил в постгре либо неправильно конекшны разруливаю в яве. Пробовал экспериментировать с задержками - в какихто случаях помогало...

В итоге попробовал савсем другой софт на вполне знакомом дотнете и наполнял савсем другую базу и получил тоже самое... остался только вариант "не настроил сервер"... т.к. в дотнете открываю и закрываю коннект вроде при каждом запросе. Вроде что я могу еще сделать... но всерно 3700-4000 инсертов.

НО вот когдаа я это все попробовал на дотнет хостинге и получил ТЕЖЕ САМЫЕ 3700-4000 инсертов подряд и дулю... я уже савсем потерялся )

чего я не так делать то могу?) какую инфу можт еще предоставить для уточнения ?
...
Рейтинг: 0 / 0
25.02.2008, 01:46
    #35152923
VoDA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
Привет.

Странно все это))) Я буквально на днях написал программу по генерации данных в БД.
У меня идет постоянно по 1000 инсертов в один коммит. И всего ~ 1М инсертов (точнее 1 000 000 + 1000 + 10)

Влезает в лет. Что в PG, что в MySQL.

Давай с начала: версия PosgtreSQL, версия JDK, версия JDBC, и пример того, как в программе работаешь с сессией и транзакциями.

PS сам имел много любви с криво написанными транзакциями. Выпрямил руки - все заработало )))
PPS савсем пишется по русски " совсем ", или па падонкаффски " сафсем ". Пишите правильно ))))
...
Рейтинг: 0 / 0
25.02.2008, 01:51
    #35152924
жува4ка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
попробовал для чистоты эксперимента паузы поюзать... всерно мистика какаято.

Задержки даже огромные взял...

Если приостанавливаться после 500 инсертов на 30 секунд... 10000 инсертов проходят.

Но если приостанавливаться после 3000 инсертов на 30 секунд ... всерно вылетаю на 3940 инсерте ))

Причем постгре начинает курить бамбук мгновенно после того, как начинается задержка... т.е. нагрузка пропадает и вроде ждет новых команд сразу.

Конекшн тоже один используется, потом грохается... не плодятся... вижу в админке...
...
Рейтинг: 0 / 0
25.02.2008, 02:08
    #35152933
жува4ка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
VoDA

постгре 8.2 работает на убунту. настройки фактически стоковые - не баловался - не было на то необходимости.

по поводу JDK и JDBC наверно и не актуально... все последние тесты на дотнете. и локально и на хостинге. Но для порядку уж: драйвер postgresql-8.2-507.jdbc4.jar, JRE 1.6.0_03

в дотнете работаю вроде просто ) на каждый инсерт такая схема:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
try
{
connectionODBC.Open();
...
commandODBC.ExecuteNonQuery();
}
finally
{
connectionODBC.Close();
}

З.Ы. относительно ачипяток извиняюсь, но привычка... сознательная ) тема это отдельная )) на этом форуме это конечно никчему - стараюсь поминимуму ))
...
Рейтинг: 0 / 0
25.02.2008, 10:57
    #35153096
VoDA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
Не могу проверить эти версии, сам на Java 5 сижу.

Посмотри, что пришет PG в свои логи, может станет понятнее )))
...
Рейтинг: 0 / 0
25.02.2008, 15:57
    #35153525
жува4ка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
это какие именно логи? нашел в его папке файл log... там вроде ничего особенного.

развечто при каждой операции происходит:
2008-02-25 01:47:09 MSK ERROR: неверное значение для параметра "client_encoding": ""
2008-02-25 01:47:09 MSK КОМАНДА: SET client_encoding to ''

но ничего особенного в момент когда запросы обрабатываться перестают - не вижу. просто перестают поступать вышеуказанные ошибки
...
Рейтинг: 0 / 0
25.02.2008, 19:34
    #35153920
VoDA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
жува4каэто какие именно логи? нашел в его папке файл log... там вроде ничего особенного.

развечто при каждой операции происходит:
2008-02-25 01:47:09 MSK ERROR: неверное значение для параметра "client_encoding": ""
2008-02-25 01:47:09 MSK КОМАНДА: SET client_encoding to ''

но ничего особенного в момент когда запросы обрабатываться перестают - не вижу. просто перестают поступать вышеуказанные ошибкиПопробуй тогда другую версию СУБД например 8.1
А также проставь encoding если ему так это не нравится.
...
Рейтинг: 0 / 0
25.02.2008, 19:50
    #35153952
landy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
На компе сколько ОЗУ, какой размер swap? Да и операционка какая, надеюсь не винды?
...
Рейтинг: 0 / 0
25.02.2008, 21:57
    #35154064
жува4ка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
landyНа компе сколько ОЗУ, какой размер swap? Да и операционка какая, надеюсь не винды?

гиг оперы. по поводу ОС уже писал - УБУНТУ последняя, апдейтам неделя. какой swap интересует? ОС? раздел swap пара гигов.
Если постгре - незнаю точно, тамж много всяких буферов - дефолтные значения все.

К слову об использовании свопа... во время процесса наблюдается 50% нагрузка на проц, 80% нагрузка на сеть... но использование памяти вообще не колышится... так, 100кб сожрет и отпустит... сожрет и отпустит... вопщим не утекает память.

VoDAПопробуй тогда другую версию СУБД например 8.1
вот этого бы не хотелось... всеже прикол то еще в том, что и на хостинге вроде вполне себе пиндусячем - теже грабли.
...
Рейтинг: 0 / 0
25.02.2008, 22:32
    #35154092
жува4ка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
выставил энкодинг - в лог щас вообще ничего не пишется )
кроме того еще выставил CONNECT_TIMEOUT=30

ничего не изменилось )
...
Рейтинг: 0 / 0
25.02.2008, 22:44
    #35154096
жува4ка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
стоп!

а не на сетевом ли уровне все падает?)))

щас попробовал пулять 5 инсертов один запросом ... 10000 инсертов отработали за 5 секунд. Нагрузка на сеть заметно ниже. тест на 100к инсертов отвалился уже лишь на 40к-записи...

Все предыдущие тесты работали минуты две до момента обвала на 4000 записи. + сеть по полной работала...
...
Рейтинг: 0 / 0
27.02.2008, 11:03
    #35157289
Hordi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
А мож в твоей программе проблема?
...
Рейтинг: 0 / 0
28.02.2008, 16:21
    #35161110
зануд
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
VoDAВлезает в лет . Что в PG, что в MySQL. VoDAПишите правильно ))))
...
Рейтинг: 0 / 0
28.02.2008, 22:29
    #35161883
жува4ка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
HordiА мож в твоей программе проблема?
да нет же.. софт разный да на разных платформах ))

всеже проблема в том, что некто "свыше" БД отказывает в соединении... стоит мне делать относительно большие пачки запросов, т.е. естесственным путем организовывать небольшие паузы между запросами... и все... влет инсертятся хоть сотни тысяч.
...
Рейтинг: 0 / 0
28.02.2008, 23:00
    #35161917
VoDA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается сделать более 3700 инсертов подряд
жува4када нет же.. софт разный да на разных платформах ))

всеже проблема в том, что некто "свыше" БД отказывает в соединении... стоит мне делать относительно большие пачки запросов, т.е. естесственным путем организовывать небольшие паузы между запросами... и все... влет инсертятся хоть сотни тысяч.Может это противо DOS защита срабатывает на большое количество пакетов...

Нужно копать ;)
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Не получается сделать более 3700 инсертов подряд / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]