|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
[quot Константин Сергеевич Дерерк]qwwqпропущено... т.е. это второе число из скобочек? Просто первое точно около 500 есть. мальтчик, ты дуяк ? пейвое чисьо -- это номей бьока, он, номер, могабыть очень бальшоой втайое -- это номей запейси в блоке блок обычно 8кб запись не менее .... (спросить у максима, оверхед немного от версии пж плавает) т.е. запейсей на блоке не более .... ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 17:19 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
qwwqпропущено... мальтчик, ты дуяк ? пейвое чисьо -- это номей бьока, он, номер, могабыть очень бальшоой втайое -- это номей запейси в блоке блок обычно 8кб запись не менее .... (спросить у максима, оверхед немного от версии пж плавает) т.е. запейсей на блоке не более .... Правельно ли понял что максимальная может быть (8000,292) ? чет запутался ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 17:29 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
qwwq ,на счет кода, там в цикле выполняются эти действия: [quot Константин Сергеевич Дерерк] INSERT INTO kdv_repaired_table SELECT * FROM corrupted_table cl WHERE cl.ctid=tid_var; EXCEPTION --WHEN undefined_column THEN WHEN OTHERS THEN RAISE NOTICE ''SQLSTATE: %'', SQLSTATE; END; [/src] ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 17:31 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
Константин Сергеевич Дереркqwwq ,на счет кода, там в цикле выполняются эти действия: Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
блок не читается целиком, думается. зачем вам 292 нотиса на блок выдавать ? т.ч. покажите весь код. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 17:37 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
qwwqКонстантин Сергеевич Дереркqwwq ,на счет кода, там в цикле выполняются эти действия: Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
блок не читается целиком, думается. зачем вам 292 нотиса на блок выдавать ? т.ч. покажите весь код. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 17:40 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
>зачем вам 292 нотиса на блок выдавать ? а сколько лучше сделать максимально? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 17:42 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
Константин Сергеевич Дерерк, А еще очень интересно прикинуть сколько там в транзакции savepoints получается (там будет со временем сильно нелинейное замедление от количества savepoints). И подумать почему такие вещи не делают в транзакции или хранимке а вызывают запросы внешним приложением. -- Maxim Boguk dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 17:42 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
Maxim BogukКонстантин Сергеевич Дерерк, А еще очень интересно прикинуть сколько там в транзакции savepoints получается (там будет со временем сильно нелинейное замедление от количества savepoints). И подумать почему такие вещи не делают в транзакции или хранимке а вызывают запросы внешним приложением. -- Maxim Boguk dataegret.ru можно ли там commit впихнуть после каждого инсерта и ускорит ли это процедуру? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 17:45 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
Константин Сергеевич ДереркMaxim BogukКонстантин Сергеевич Дерерк, А еще очень интересно прикинуть сколько там в транзакции savepoints получается (там будет со временем сильно нелинейное замедление от количества savepoints). И подумать почему такие вещи не делают в транзакции или хранимке а вызывают запросы внешним приложением. -- Maxim Boguk dataegret.ru можно ли там commit впихнуть после каждого инсерта и ускорит ли это процедуру? Нельзя... транзакции внутри pl/pgsql (да и прочих pl/*) - не поддерживаются. Я не зря про внешнее приложение написал :). -- Maxim Boguk dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 17:52 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
Maxim BogukКонстантин Сергеевич Дереркпропущено... можно ли там commit впихнуть после каждого инсерта и ускорит ли это процедуру? Нельзя... транзакции внутри pl/pgsql (да и прочих pl/*) - не поддерживаются. Я не зря про внешнее приложение написал :). -- Maxim Boguk dataegret.ru а как вызвать внешнее приложение из кода? о_О ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 17:57 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
Maxim BogukКонстантин Сергеевич Дереркпропущено... можно ли там commit впихнуть после каждого инсерта и ускорит ли это процедуру? Нельзя... транзакции внутри pl/pgsql (да и прочих pl/*) - не поддерживаются. Я не зря про внешнее приложение написал :). -- Maxim Boguk dataegret.ru use dblink ,Luke ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 17:57 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
Константин Сергеевич Дерерк а как вызвать внешнее приложение из кода? о_О CREATE EXTENSION dblink; ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 17:58 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
qwwqКонстантин Сергеевич Дерерка как вызвать внешнее приложение из кода? о_О CREATE EXTENSION dblink; он установлен, просто там куча разных вызовов. dblink_build_sql_insert например. но описание там мутное какое-то Как лучше вызвать инсерт в данном случае? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 18:01 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
Константин Сергеевич Дереркqwwqпропущено... CREATE EXTENSION dblink; он установлен, просто там куча разных вызовов. dblink_build_sql_insert например. но описание там мутное какое-то Как лучше вызвать инсерт в данном случае? как напишешь, так и лучше я бы dblink_exec дергал, думается. а чтобы не обрабатывать ошибки в головной -- fail_on_error:=true , и вперед ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 18:06 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
qwwqКонстантин Сергеевич Дереркпропущено... он установлен, просто там куча разных вызовов. dblink_build_sql_insert например. но описание там мутное какое-то Как лучше вызвать инсерт в данном случае? как напишешь, так и лучше я бы dblink_exec дергал, думается. а чтобы не обрабатывать ошибки в головной -- fail_on_error:=true , и вперед вот тако вылезло Код: sql 1.
как закрывать грамотно соединения, чтобы коннекты не висели? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 18:44 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
Константин Сергеевич Дерерк, а незачем их открывать бессчётно. открыли одно, именное. и в него ходитя ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2017, 19:46 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
qwwqКонстантин Сергеевич Дерерк, а незачем их открывать бессчётно. открыли одно, именное. и в него ходитя ERROR: duplicate connection name ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2017, 10:29 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
Константин Сергеевич ДереркqwwqКонстантин Сергеевич Дерерк, а незачем их открывать бессчётно. открыли одно, именное. и в него ходитя ERROR: duplicate connection name example dblink--connection Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2017, 11:28 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
qwwqКонстантин Сергеевич Дереркпропущено... ERROR: duplicate connection name example dblink--connection Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
Благодарю. Получилось реализовать через дблинки, но работает еще медленнее чем инсерт напрямую. судя по сообщениям о невозможности считать строку. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2017, 16:15 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
вообще жаль что в постгресс нет стандартного механизма востановления таблички при повреждении ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2017, 16:36 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
Константин Сергеевич Дерерк<> Получилось реализовать через дблинки, но работает еще медленнее чем инсерт напрямую. судя по сообщениям о невозможности считать строку. код всё такой же ? позаписный ? идите поблочно. == есть такая мысль, если блок не читается -- он не читается целиком. могу врать. (проверьте на каком либо точно битом блоке -- сможете ли найти хоть одну запись в нем, адресуясь ctid-ом) тогда при первой ошибке в блоке переходите к новому. и писать можно сразу весь блок . -- я же писал ( 20677291 ) примерно : Код: sql 1. 2. 3. 4. 5. 6.
где 10000 -- номер блока. 0--270 номера записей в блоке. (если табличка широкая -- можно взять уже. и кажется они (строки) таки с 1 идут. блоки -- как положено -- с 0 ). но в любом случае это забавный способ ковырять землю мелкоскопом. имхо. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2017, 16:39 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
Константин Сергеевич Дерерквообще жаль что в постгресс нет стандартного механизма востановления таблички при повреждении если вы теряете записи -- кто ж вам сторож, злобному буратинию. выковыривать куски из обломков -- это не дело в любом случае. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2017, 16:42 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
qwwqесть такая мысль, если блок не читается -- он не читается целиком. могу врать. судя по всему, так и есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2017, 16:44 |
|
навернулась табличка. как вытянуть часть данных?
|
|||
---|---|---|---|
#18+
кстати, автовакуум блоки меняет местами? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2017, 16:45 |
|
|
start [/forum/topic.php?fid=53&msg=39495478&tid=1996324]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
145ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
others: | 16ms |
total: | 268ms |
0 / 0 |