Зависает kdiff3 при трехстороннем сравнении

1. Sashares 35 28.07.21 17:55 Сейчас в теме
Всем привет.

Периодически, при 3х стороннем сравнении при обновлении конфигурации, kdiff3 зависает, и снять процесс можно только в диспетчере задач. Зависнуть может на сравнении как больших, так и маленьких модулей.

Чтобы он не зависал, временно помогает только перезагрузка.
Уже второй комп, другая винда - была win7, сейчас win10, а проблема так и остается.
Пробовал как 32 битную версию ставить, так и 64, разницы какой-то не заметил.
kdiff версии 0.9.98.

Кто-нибудь сталкивался?
И самое главное - кто-нибудь смог исправить это?

Зависает на этапе как на скрине.
Прикрепленные файлы:
VyacheslavShilov; +1 Ответить
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
19. Sashares 35 20.04.22 10:40 Сейчас в теме
Есть способ обхода проблем с зависанием kdiff3. Как минимум на версии 1.8.5.

Если зависло, то следует:
1) скопировать сравниваемые файлы (они обычно находятся в каталоге %TMP%\mrg) в сторонний каталог
2) принудительно завершить процесс kdiff3
3) вернуть скопированные файлы обратно
4) запустить kdiff3 интерактивно и в нем выбрать для сравнения эти файлы и сравнить
5) закрыть kdiff3
6) запустить сравнение в 1С - зависать не будет

https://partners.v8.1c.ru/forum/t/2048527/m/2049016
https://partners.v8.1c.ru/forum/t/2048527/m/2048828
VyacheslavShilov; ansverrr; sergey_s_; popro; kalimehtar; bozo; IgorXml; NikeeNik; +8 Ответить
26. karakymi4 11 09.08.22 19:15 Сейчас в теме
Спешу поделиться решением зависания:
Открываете что-нибудь, типа блокнота, вносите изменения, после чего нажимаете на перезагрузку винды, она не происходит, тк открыт блокнот, после чего жмете отмену, и kdiff отвисает)

В общем костылек, но помогает быстро.
VyacheslavShilov; bearman; Kilka_v_Kepke; gamletspb; user970589; The Ant; ubnkfl; IgorXml; tricolor; +9 1 Ответить
6. PerlAmutor 131 28.07.21 19:58 Сейчас в теме +1 $m
kdiff версии 0.9.98.

Прочтите внимательно о чем написано на странице скачивания:

This repository is no longer maintained and is kept for archival purposes. See https://invent.kde.org/sdk/kdiff3 for the newest code and https://download.kde.org/stable/kdiff3/ for release bundles.


Версия 0.9.98 является устаревшей. По адресу https://download.kde.org/stable/kdiff3/ уже есть версия 1.9.2. К сожалению последние релизы у меня тоже периодически зависают. С версией 1.8.5 проблем с зависанием пока не обнаружил.
Gladkov_Anton; Дмитрий74Чел; fortran; user970589; vvh74; BarsukM; Sashares; +7 Ответить
50. Sashares 35 11.09.24 14:25 Сейчас в теме
Полезная информация по вопросу https://telegra.ph/kdiff-bug-12-27
Там же есть внешняя обработка с вариантами исправления.
fortran; Дмитрий74Чел; sonne; IgorXml; Anchoret; VyacheslavShilov; shima; +7 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. XAKEP 28.07.21 18:14 Сейчас в теме
путь к конфигурациям без кириллицы ?
Sheogorath; +1 Ответить
4. Sashares 35 28.07.21 18:45 Сейчас в теме
(2)База в которой выполняется обновление - с кириллицей.
3. XAKEP 28.07.21 18:14 Сейчас в теме
https://github.com/KDE/kdiff3/blob/master/README

попробуйте из консоли

kdiff3 file1 file2 file3 -o outputfile

и да, не знаю , как окажется наличие питона python 3.6 or later

On Windows 10 this will be the default shell.
Run the following:
1)Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
2)iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/KDE/craft/master/setup/install_craft.ps1'))


больше вариантов нет

хотя нет, - есть - для супер пользователя инфостарт :)
starik-2005
дать файлы
и попросить проверить на линуксе

или сами, если кеды установлены
5. Sashares 35 28.07.21 18:49 Сейчас в теме
(3)Как снова начнет зависать при обновлении, попробую в консоли.
Недавно перезагрузил комп, поэтому пока проблема не воспроизводится, и при обновлении сравнение выполняется корректно.
6. PerlAmutor 131 28.07.21 19:58 Сейчас в теме +1 $m
kdiff версии 0.9.98.

Прочтите внимательно о чем написано на странице скачивания:

This repository is no longer maintained and is kept for archival purposes. See https://invent.kde.org/sdk/kdiff3 for the newest code and https://download.kde.org/stable/kdiff3/ for release bundles.


Версия 0.9.98 является устаревшей. По адресу https://download.kde.org/stable/kdiff3/ уже есть версия 1.9.2. К сожалению последние релизы у меня тоже периодически зависают. С версией 1.8.5 проблем с зависанием пока не обнаружил.
Gladkov_Anton; Дмитрий74Чел; fortran; user970589; vvh74; BarsukM; Sashares; +7 Ответить
7. Sashares 35 29.07.21 02:22 Сейчас в теме
(6) Спасибо! Слона то я и не заметил. Попробую 1.8.5.
8. Kolesonik 14 29.07.21 03:17 Сейчас в теме
Пользуюсь вот этой программой perforce p4merge проблем не обнаружено
9. Sashares 35 29.07.21 09:48 Сейчас в теме
(8) По умолчанию платформа не задает параметры для автоматического 3х стороннего объединения для p4merge. См.файл.
У kidff3 как для меня огромный плюс как раз в этой возможности - из 3х текстов модулей (старая конфигурация поставщика - А, основная конфигурация - Б, новая конфигурация поставщика - С) автоматически выберет изменения каких строк модулей (из А, Б или С) надо брать.
То есть, если А и Б совпадают, а изменения в С - берет из С.
Если А и С совпадают, а Б отличается - берет из Б.

И для простых случаев она все делает сама. Вникать нужно только когда А, Б и С одновременно отличаются.
Прикрепленные файлы:
10. Kolesonik 14 29.07.21 10:24 Сейчас в теме
(9)Действительно этот параметр не заполнен, но объединение как раз 3х стороннее, по принципу описаному вами
11. Sashares 35 29.07.21 10:25 Сейчас в теме
(10)Попробую perforce p4merge, спасибо.
37. PerlAmutor 131 25.07.23 06:48 Сейчас в теме
(8) Это Вы не пробовали роли в нем объединять, когда изменились шаблоны и состав метаданных и количество конфликтов за тысячу. Например выбираете синий ромб, чтобы без объединения оставить свою локальную копию и получаете зависание с нагрузкой процессора. Час ждал, не дождался.
13. Sashares 35 31.07.21 11:09 Сейчас в теме
(12)Спасибо, видел, но ничего полезного по основному вопросу не нашел.
14. PerlAmutor 131 03.08.21 18:18 Сейчас в теме +4 $m
(13) Как успехи с KDiff 1.8.5? Наблюдаются ли проблемы?
15. Sashares 35 03.08.21 18:29 Сейчас в теме
(14)Спасибо, на 1.8.5 пока все ок, да и работает пошустрее =)
16. ilya2184 62 04.02.22 13:57 Сейчас в теме
(15) Не завалялось ли у вас дистрибутив 1.8.5?
1.9 все попробовал - зависают :-(
17. Sashares 35 04.02.22 14:04 Сейчас в теме
(16)Во вложении, но через некоторое время тоже стал зависать при 3х стороннем сравнении =(
Прикрепленные файлы:
kdiff3-1.8.5-windows-64-cl.exe
user1832262; amital; BarsukM; IgorXml; dvissarov5; ubnkfl; ilya2184; +7 Ответить
18. SkorikA 83 20.04.22 05:45 Сейчас в теме
Использую версию kDiff3 1.9.5 (последняя на текущий момент). Отключил в настройках kDiff3 ("Настройка" - "Настроить kDiff3", вкладка "Merge") опцию "Отображать информационные окна". Проблем стало значительно меньше.
VyacheslavShilov; Максим-777; popro; Дмитрий74Чел; IgorXml; NikeeNik; +6 Ответить
20. NikeeNik 78 27.05.22 13:16 Сейчас в теме
(18) О! это работает и в других версиях KDiff
21. NikeeNik 78 27.05.22 16:43 Сейчас в теме
(20) ненадолго помогло(, только способ из (19) пока стабильно работает
19. Sashares 35 20.04.22 10:40 Сейчас в теме
Есть способ обхода проблем с зависанием kdiff3. Как минимум на версии 1.8.5.

Если зависло, то следует:
1) скопировать сравниваемые файлы (они обычно находятся в каталоге %TMP%\mrg) в сторонний каталог
2) принудительно завершить процесс kdiff3
3) вернуть скопированные файлы обратно
4) запустить kdiff3 интерактивно и в нем выбрать для сравнения эти файлы и сравнить
5) закрыть kdiff3
6) запустить сравнение в 1С - зависать не будет

https://partners.v8.1c.ru/forum/t/2048527/m/2049016
https://partners.v8.1c.ru/forum/t/2048527/m/2048828
VyacheslavShilov; ansverrr; sergey_s_; popro; kalimehtar; bozo; IgorXml; NikeeNik; +8 Ответить
24. BarsukM 04.07.22 12:13 Сейчас в теме
(19) помогает к сожалению только на один раз. при сравнении следующих модулей зависает опять.
25. IgorXml 730 05.07.22 21:42 Сейчас в теме
(19)
%TMP%\mrg

Хотел поделиться опытом как проще, но оказалось заново пришлось грузить поставщика и потеря 2 часа.
Я удалил содержимое %TMP%\mrg - После этого Kdiff3 зашевелился, но потом при завершении обновлении основной, вылетела ошибка что нет файла из этой папки и вылетел из конфигуратора.
Т.Е. отрицательный опыт)))
30. kotlovD 88 21.04.23 09:47 Сейчас в теме
(19)
Еще немного оптимизировал алгоритм)) Просто запускаю рядом с зависшим кдифом еще одну копию, сравниваю в ней файлы из папки из п.1. Закрываю второй кдиф, завершаю из диспетчера зависший кдиф и перезапускаю из 1С сравнение
Дмитрий74Чел; +1 Ответить
22. SkorikA 83 30.05.22 04:09 Сейчас в теме
(19) А можно для тех кто не имеет доступа к партнерскому форму хотя бы в 2 словах - это проблема платформы или kdiff? Если платформы - планируется ли какое-либо исправление? Есть ли сроки (да, я знаю что сроки там не пишут, но может хоть какие-то намёки)?
23. Sashares 35 30.05.22 09:07 Сейчас в теме
(22)Там такой информации нет. Есть способ исправления, который удалось обнаружить, он и приведен в 19.
26. karakymi4 11 09.08.22 19:15 Сейчас в теме
Спешу поделиться решением зависания:
Открываете что-нибудь, типа блокнота, вносите изменения, после чего нажимаете на перезагрузку винды, она не происходит, тк открыт блокнот, после чего жмете отмену, и kdiff отвисает)

В общем костылек, но помогает быстро.
VyacheslavShilov; bearman; Kilka_v_Kepke; gamletspb; user970589; The Ant; ubnkfl; IgorXml; tricolor; +9 1 Ответить
27. IgorXml 730 12.09.22 20:07 Сейчас в теме
29. user970589 11 16.02.23 04:27 Сейчас в теме
(26)
спасибо бро, работает! реально частые зависы достали. Мне кажется что-то в памяти "оседает" у него. но скажем перезагрузить сервак такое себе. да и большое сравнение потом заново начинать не вариант - можно еще час потерять.
32. 1Cynep4eJIoBek 11.05.23 07:22 Сейчас в теме
(26)и все фоновые задачи и программы успешно закроются
dima_gsv; +1 Ответить
49. Дмитрий74Чел 239 15.08.24 10:23 Сейчас в теме
(26) У меня закрылся конфигуратор. Спасибо блин.
Добавьте описание что в конфигураторе тоже надо несохраненный текстовый документ иметь иначе он закроется.
28. Kilka_v_Kepke 08.02.23 18:34 Сейчас в теме
удаляю kDiff, сторонней программой удаляю все файлы kdiff из programfiles, устанавливаю заново. Пока помогает
31. 1Cynep4eJIoBek 11.05.23 07:21 Сейчас в теме
MS Windows 10 Pro
1С:Предприятие 8.3 (8.3.19.1467)
kdiff3 Version 0.9.97 (64 bit)

помогает очистка c:\Users\<ИмяПользователя>\AppData\Local\Temp\mrg\
39. popro 14.08.23 13:36 Сейчас в теме
(31) Помогает, но при сохранении рискуете получить ошибку формата потока и начать все заново.
33. NormanGrey 18.07.23 13:28 Сейчас в теме
Не знаю будет кому полезно или нет. Сегодня тоже столкнулся с проблемой зависания при объединении двух файлов. Версия kdiff3 1.10.5.

Проблема решилась запуском kdiff3 через BAT-файл с задержкой в пол секунды. Экспериментальным путем дошёл до задержки в 50мс. Пока полёт нормальный.
VyacheslavShilov; +1 Ответить
34. Sashares 35 18.07.23 14:00 Сейчас в теме
(33)А можете пример BAT-файла показать?
35. NormanGrey 18.07.23 14:13 Сейчас в теме
(34) Вот тот который сейчас использую.
Прикрепленные файлы:
run.bat
VyacheslavShilov; fortran; +2 Ответить
36. Sashares 35 18.07.23 14:25 Сейчас в теме
41. fortran 14.09.23 13:50 Сейчас в теме
(35) Огромное человеческое спасибо! Столько лет мучился с зависанием. Предлагаемые тут ранее "танцы с бубном" не устраивали. Использую версию 1.10.5 (64 bit)
42. dima_gsv 22 09.10.23 14:44 Сейчас в теме
(35) Батник не рабочий, десятый параметр в батнике через %10 никак не достать, так не работает. Нужно shift использовать.
Но это тоже не помогло - у меня виснет при любой задержке. Версии 0.9.98 и 1.10.6.
43. dima_gsv 22 18.10.23 11:34 Сейчас в теме
(42) Вот мой батник на базе (35)
Прикрепленные файлы:
runkdiff3.bat
44. dima_gsv 22 29.12.23 12:53 Сейчас в теме
(43) Сегодня с использованием этого батника kdiff3 завис при первой же попытке сравнения/объединения. Так что батник полностью проблему не устраняет... Закрытие kdiff3 и перезапуск батника не помог - опять зависание.
После этого сделал следующее:
запустил process explorer,
нашёл запущенный процесс kdiff3, скопировал строку запуска (Image / Command line),
закрыл процесс kdiff3, батник не закрывал - оставил работать,
запустил ту строку запуска из консоли.
kdiff3 запустился, не завис
закрыл kdiff3 с сохранением изменений. Изменения подгрузились в конфигуратор.

После этого kdiff3 опять стал работать без зависаний прямо из 1с через батник.
38. PerlAmutor 131 25.07.23 06:50 Сейчас в теме
(33) При использовании этой версии с git получаю стабильный Segmentation Fault + замусориванием локального репозитория файлами .orig и .bak, хотя параметры в .git/config

keepTemporaries = false
keepBackup = false

включены.
40. user1954423 11.09.23 15:21 Сейчас в теме
Попробуйте вот эту версию.
https://binary-factory.kde.org/job/KDiff3_Stable_win64/
У меня она работает нормально.
45. IgorXml 730 10.01.24 22:29 Сейчас в теме
(40) Сейчас там версии у которых с кодировкой проблемы. Например kdiff3-1.11-1304-windows-cl-msvc2019-x86_64.exe
У меня не получилось там настроить.
47. user1954423 07.05.24 15:02 Сейчас в теме
(45)
(45) Я пользуюсь версией:
kdiff3-1.10-1185-windows-cl-msvc2019-x86_64.
Работает нормально.
46. user1531393 05.04.24 12:10 Сейчас в теме
Некропост, но всё же. Только что нашел вариант как быстро вернуть KDiff 0.9.98 к жизни после описанной в посте проблемы: запускаем KDiff, открываем в нём на сравнение пару любых файлов, закрываем его. Всё. После этого он оживает из конфигуратора.
VyacheslavShilov; _Farsh_; +2 Ответить
48. IgorXml 730 09.07.24 13:13 Сейчас в теме
(46)Один раз сработало. Еще пару раз получится, то поставлю плюс.
50. Sashares 35 11.09.24 14:25 Сейчас в теме
Полезная информация по вопросу https://telegra.ph/kdiff-bug-12-27
Там же есть внешняя обработка с вариантами исправления.
fortran; Дмитрий74Чел; sonne; IgorXml; Anchoret; VyacheslavShilov; shima; +7 Ответить
51. IgorXml 730 19.09.24 12:52 Сейчас в теме
(50) Проверил через командную строку. Работает. Удобнее чем через провокацию перезагрузки:
1. следующее сравнение не зависает
2. после попытке перезагрузки некоторые приложения, например Яндекс.Диск, слетают.
Дмитрий74Чел; Sashares; +2 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот