|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
Уважаемые коллеги, доброго дня. Меня мучает вопрос и прошу помощи. Есть удаленный сервер. Он по расписанию формирует файл DSV для/под SQL LOADER (внешнюю таблицу). В заголовке файла есть строка содержащая число записей в этом файле. Далее с помощью Robocopy забираем этот файл тоже по расписанию уже на локальный сервер где и обрабатываем. Внимание вопрос. В заголовке файла сказано что он содержит 100 записей. ! Делаем select count(*) from table. Получаем 90 записей. Вопрос куда делось 10 записей ?? Работаем так всегда. Проблем не возникало. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2022, 07:08 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
juratorneo В заголовке файла сказано что он содержит 100 записей. juratorneo Вопрос куда делось 10 записей ?? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2022, 08:10 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
Elic juratorneo В заголовке файла сказано что он содержит 100 записей. juratorneo Вопрос куда делось 10 записей ?? Так посчитали ж. Я и говорю по факту 90, а в badFile информация о 100. BadFile сформирован по причине того, что в заголовке есть запись. Это я сделал специально чтобы потом сравнивать фактическое с ожидаемым. И вот тебе разница 10 строк. Куда делись 10 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2022, 17:23 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
juratorneo, select * from внешняя таблица сравниваем с содержимым файла, пробуем понять(догадаться) .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2022, 17:32 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
juratorneo В заголовке файла сказано что он содержит 100 записей. ! На заборе написано "XYZ", на самом деле под надписью на земле дрова лежат. juratorneo Делаем select count(*) from table. Получаем 90 записей. Вопрос куда делось 10 записей ?? COUNT(*) посчитал только те записи, которые удалось "загрузить" во внешнюю таблицу. Пригласите ещё 9 коллег и пересчитайте "на пальцах" сколько записей имеется в том самом файле , который используется для таблицы. Именно в файле, а не в таблице! Не перепутайте! juratorneo Работаем так всегда. Проблем не возникало. Так всегда и бывает: работает, работает, работает, но в какой-то момент возникают проблемы. Мужайтесь, ищите решение. Вздыхаю вместе с вами и похлопываю вас по плечу. Если вам ещё не полегчало могу надеть впитывающую влагу жилетку для приёма слёз. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2022, 18:17 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
SQL*Plus juratorneo В заголовке файла сказано что он содержит 100 записей. ! На заборе написано "XYZ", на самом деле под надписью на земле дрова лежат. juratorneo Делаем select count(*) from table. Получаем 90 записей. Вопрос куда делось 10 записей ?? COUNT(*) посчитал только те записи, которые удалось "загрузить" во внешнюю таблицу.... Типично - не загрузились из-за уникального индекса. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2022, 20:03 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
Ну и кроме *.bad файла есть же ещё *.discard, суть то что не загрузилось по условию LOAD WHEN. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2022, 21:00 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
Stax juratorneo, пробуем понять(догадаться) .... stax Отличная идея. Считай что уже пытаюсь понять ) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 18:37 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
SQL*Plus juratorneo В заголовке файла сказано что он содержит 100 записей. ! На заборе написано "XYZ", на самом деле под надписью на земле дрова лежат. juratorneo Делаем select count(*) from table. Получаем 90 записей. Вопрос куда делось 10 записей ?? COUNT(*) посчитал только те записи, которые удалось "загрузить" во внешнюю таблицу. Пригласите ещё 9 коллег и пересчитайте "на пальцах" сколько записей имеется в том самом файле , который используется для таблицы. Именно в файле, а не в таблице! Не перепутайте! juratorneo Работаем так всегда. Проблем не возникало. Так всегда и бывает: работает, работает, работает, но в какой-то момент возникают проблемы. Мужайтесь, ищите решение. Вздыхаю вместе с вами и похлопываю вас по плечу. Если вам ещё не полегчало могу надеть впитывающую влагу жилетку для приёма слёз. :-) Читал несколько раз так и не понял что ты имел ввиду. Естественно count посчитал вто попало. Капитан очевидность. А где остальное что не попало в файл ?? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 18:39 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
Siemargl SQL*Plus пропущено... На заборе написано "XYZ", на самом деле под надписью на земле дрова лежат. пропущено... COUNT(*) посчитал только те записи, которые удалось "загрузить" во внешнюю таблицу.... Типично - не загрузились из-за уникального индекса. Индексов нет. Файл с bad пуст. Там нет этих записей. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 18:39 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
shane54 Ну и кроме *.bad файла есть же ещё *.discard, суть то что не загрузилось по условию LOAD WHEN. Load when. Не активировал. Не используем ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 18:40 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
В общем подозрение на то, что эти 10 записей так и остались на сервере. Ведь count это отдельная инструкция, потому как у меня потом идет union который формирует тело dsv ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 18:42 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
juratorneo SQL*Plus пропущено... На заборе написано "XYZ", на самом деле под надписью на земле дрова лежат. пропущено... COUNT(*) посчитал только те записи, которые удалось "загрузить" во внешнюю таблицу. Пригласите ещё 9 коллег и пересчитайте "на пальцах" сколько записей имеется в том самом файле , который используется для таблицы. Именно в файле, а не в таблице! Не перепутайте! пропущено... Так всегда и бывает: работает, работает, работает, но в какой-то момент возникают проблемы. Мужайтесь, ищите решение. Вздыхаю вместе с вами и похлопываю вас по плечу. Если вам ещё не полегчало могу надеть впитывающую влагу жилетку для приёма слёз. :-) Читал несколько раз так и не понял что ты имел ввиду. Естественно count посчитал вто попало. Капитан очевидность. А где остальное что не попало в файл ?? 9 коллег сумел найти? Строки в файле пересчитали? Сколько насчитали? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 20:09 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
juratorneo В общем подозрение на то, что эти 10 записей так и остались на сервере. Ведь count это отдельная инструкция, потому как у меня потом идет union который формирует тело dsv Читал несколько раз, так и не понял, что ты имел в виду. Разговариваешь с внутренними голосами? :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 20:12 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
[quot SQL*Plus#22423878] juratorneo пропущено... Строки в файле пересчитали? Бро, считали, поэтому темя и создана. Их там 90. Я тебя так и не понимаю. К чему эти вопросы. Я по Русски написал что 90. А ожидаем 100. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 21:18 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
[quot SQL*Plus#22423878] juratorneo пропущено... Сколько насчитали? 90. А жду 100. Да что с вами не то ?? Если нет логических умозаключений, лучше молчать пади. Зачем стебаться. Ибо возьми и задвинь тему чтобы я озадачился, ибо поможешь мне. Мля как мастер Йода заговорил ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 21:20 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
Давайте так. Типа еще разок. На удаленном сервере передёргивается Bat файл со скриптом в определенное время. В нем по сути две инструкции. Сформировать файл dsv: ИТАК 1. В заголовок с помощью первой инструкции (select count (*) from a ) вставить строку с числом ожидаемых записей. Я называю это фэйковой записью или аномальной. Пофиг. Она уйдёт намеренно в bad потом. 2. Это сами данные. Основной скрипт. Оба 1 и 2 между ними UNION. Формируется файл как надо. Далее перебрасываем этот файл с помощью Robocopy уже на наш сервер. Начинаем считать реальный , фактический count - там 90 записей. А в bad - которая фэйковая первая строчка говорит что должно быть 100. Та , что count инструкция была. Вопрос где 10 строк. Конечно во внимание надо принять саму работу robocopy. Он не копирует файл. Он перезаливает строки. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 21:32 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
juratorneo, 1. Тут каждый второй с "удивительными" и "неразрешимыми" вопросами. 2. Чудес не бывает. 3. Между count(*) и выгрузкой delete? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 22:09 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
juratorneo, Может, файл на момент "считывания" ещё не закрыт внешним процессом, т.е. могут быть просто не сброшенные на диск системные буфера записи? А может, условия в Count и в UNION как-то разнятся? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 22:11 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
juratorneo juratorneoСколько насчитали? 90. А жду 100. Да что с вами не то ?? Если нет логических умозаключений, лучше молчать пади. Зачем стебаться. Ибо возьми и задвинь тему чтобы я озадачился, ибо поможешь мне. Мля как мастер Йода заговорилЧудак, ты действительно настолько альтернативно одарённый, что не понимаешь элементарного, что если в файле 90 строк, то на Oracle пенять нечего? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 22:13 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
juratorneo 2. Это сами данные. Основной скрипт. Оба 1 и 2 между ними UNION. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2022, 22:17 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
Asmodeus juratorneo 2. Это сами данные. Основной скрипт. Оба 1 и 2 между ними UNION. Пардон не уточнил union all. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2022, 06:59 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
Правильный Вася juratorneo, Может, файл на момент "считывания" ещё не закрыт внешним процессом, т.е. могут быть просто не сброшенные на диск системные буфера записи? Данный момент я тоже пытался посмотреть. Нет файл залит. Робокопи отчитался и файл имеет аттрибут Архивный. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2022, 07:01 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
Elic juratorneo пропущено... 90. А жду 100. Да что с вами не то ?? Если нет логических умозаключений, лучше молчать пади. Зачем стебаться. Ибо возьми и задвинь тему чтобы я озадачился, ибо поможешь мне. Мля как мастер Йода заговорил Опа. Нука отожги. А то пока лирическое вступление. Уж извени. Где я на Оракл пеняю. Я задаю вопрос. В нем что угодно может. Это я и хочу понять с вашей помощью. Ибо это не системно, а разово. Проблем не было. Все работало. Если б такое постоянно вылезало б, то было б проще. А тут пукнуло не пойми откуда) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2022, 07:03 |
|
Куда делась часть данных ??
|
|||
---|---|---|---|
#18+
oragraf juratorneo, 1. Тут каждый второй с "удивительными" и "неразрешимыми" вопросами. 2. Чудес не бывает. 3. Между count(*) и выгрузкой delete? Нет Бро delete нет в инструкциях. У меня вообще подозрение что они не попали в файл на момент формирования на удаленном сервере, но count посчитал что в запросе с union all будет 100 строк ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2022, 07:06 |
|
|
start [/forum/topic.php?desktop=1&fid=52&tid=1879592]: |
0ms |
get settings: |
18ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
38ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
415ms |
get tp. blocked users: |
1ms |
others: | 5ms |
total: | 488ms |
0 / 0 |