172 похожих чатов

То есть допустим у меня приложение на java отправляет insert

в результат ответ сколько вставлено,
в случае с insert по частям как получать ответы?

18 ответов

29 просмотров

Скажите, а что у вас за задача? Просто изначально я решил, что у вас есть файл на 100 млн строк, который вы хотите в таблицу записать. Потом я понял, что вы, видимо, из одной таблицы в другую хотите записать. Если второе, то при чём тут java? Этот перенос данных - не разовая операция, а будет делаться на регулярной основе - и нужно видеть прогресс?

Можно замутить LISTEN/NOTIFY. Читайте официальную документацию.

Геннадий- Автор вопроса
Dmitriy Sviridov
Скажите, а что у вас за задача? Просто изначально ...

разовая, но на проде ждать час и не видеть результат не айс insert вызывается из приложения - можно добавить offset + limit + order by но думал можно как-то из функции или процедуры получать результаты

Геннадий
спасибо, почитаю

https://www.postgresql.org/docs/current/sql-listen.html

Геннадий
разовая, но на проде ждать час и не видеть результ...

Если это разовая операция, то почему она вызывается из приложения? Т.е. вы для разовой операции в БД выпустите отдельный релиз приложения?

Геннадий- Автор вопроса
Dmitriy Sviridov
Если это разовая операция, то почему она вызываетс...

один раз загрузка массовая поэтому записей 100млн, обычно несколько тысяч

Vitaly Ustinov
Можно замутить LISTEN/NOTIFY. Читайте официальную ...

Они в роде тоже работают по итогу транзакции, а не в ходе её исполнения.

Petr
Они в роде тоже работают по итогу транзакции, а не...

Whenever the command NOTIFY channel is invoked, either by this session or another one connected to the same database, all the sessions currently listening on that notification channel are notified, and each will in turn notify its connected client application.

Vitaly Ustinov
Whenever the command NOTIFY channel is invoked, ei...

Мда... проще процедуру написать по копирования и в ней писать в табличку для логов ход и процент выполнения.

Геннадий- Автор вопроса
Petr
Мда... проще процедуру написать по копирования и в...

ну да я за это и спросил не писал кто-нибудь что-то подобного, только как лог в вызывающее приложение отправить?

Petr
Мда... проще процедуру написать по копирования и в...

Вы серьёзно? Тут вообще код писать не нужно, это же одна команда sql 🙂 Открыл вторую сессию в psql запустил там LISTEN и вуаля

Konstantin Zaitsev
Он ничего не получит до commit

А там будет коммит в конце каждого чанка.

Vitaly Ustinov
Вы серьёзно? Тут вообще код писать не нужно, это ж...

Подсказываю народную мудрость, подсмотренную у ораклистов: perform set_config('application_name', my migration: ' || chunks_done || ' / ' || chunks_expected); Не надо никаких коммитов, всё доступно сразу через мониторинг сессий, можно выставлять в функции.

Radist
Подсказываю народную мудрость, подсмотренную у ора...

Хорошая идея, спасибо что напомнили. А в оракле ещё есть вьюха v$session_longops для отслеживания прогресса.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта