Аварийное завершение клиента 1С при подключении к базе данных, расположенной "На веб-сервере" (сервисы 1С:Fresh, 1С:ГРМ, 1С:БухОбслуживание). Само подключение проходит успешно, клиент валится после ввода учётных данных пользователя. Платформа 8.3.13 x86_64, на p8 работает нормально. $ /opt/1C/v8.3/x86_64/1cv8c (1cv8c:6745): dbind-WARNING **: 13:47:08.317: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-48xxFhiWoR: В соединении отказано NOT SANDBOXED sh: gdb: команда не найдена gdb return status: 32512 $ strace /opt/1C/v8.3/x86_64/1cv8c ... wait4(6823, sh: gdb: команда не найдена [{WIFEXITED(s) && WEXITSTATUS(s) == 127}], 0, NULL) = 6823 rt_sigaction(SIGINT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7efe80854890}, NULL, 8) = 0 rt_sigaction(SIGQUIT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7efe80854890}, NULL, 8) = 0 rt_sigprocmask(SIG_SETMASK, [ILL ABRT SEGV], NULL, 8) = 0 fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0), ...}) = 0 write(1, "gdb return status: 32512\n", 25gdb return status: 32512 ) = 25 futex(0x7efe7ca08648, FUTEX_WAKE_PRIVATE, 2147483647) = 0 futex(0x7efe7ca08648, FUTEX_WAKE_PRIVATE, 2147483647) = 0 futex(0x39563f8, FUTEX_WAKE_PRIVATE, 2147483647) = 1 futex(0x39563a8, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7efe7ca08648, FUTEX_WAKE_PRIVATE, 2147483647) = 0 futex(0x7efe4afe4ce8, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7efe4afe4c98, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7efe4f25820c, FUTEX_WAKE_PRIVATE, 2147483647) = 0 write(7, "\1\0\0\0\0\0\0\0", 8) = 8 futex(0x104f8b0, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7efe64004ae0, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0xfe93b8, FUTEX_WAKE_PRIVATE, 1) = 1 write(7, "\1\0\0\0\0\0\0\0", 8) = 8 futex(0x104f8b0, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7efe64004ae0, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0xfe93b8, FUTEX_WAKE_PRIVATE, 1) = 1 write(7, "\1\0\0\0\0\0\0\0", 8) = 8 futex(0x104f8b0, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7efe64004ae0, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0xfe93b8, FUTEX_WAKE_PRIVATE, 1) = 1 write(7, "\1\0\0\0\0\0\0\0", 8) = 8 futex(0xfe93b8, FUTEX_WAKE_PRIVATE, 1) = 1 write(7, "\1\0\0\0\0\0\0\0", 8) = 8 futex(0x104f8b0, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7efe64004ae0, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0xfe93b8, FUTEX_WAKE_PRIVATE, 1) = 1 write(7, "\1\0\0\0\0\0\0\0", 8) = 8 futex(0x104f8b0, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7efe64004ae0, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0xfe93b8, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7efe7ca65648, FUTEX_WAIT_PRIVATE, 2, NULL) = -1 EAGAIN (Ресурс временно недоступен) futex(0x7efe7ca65648, FUTEX_WAKE_PRIVATE, 1) = 0 close(40) = 0 close(38) = 0 close(39) = 0 getpid() = 6796 getpid() = 6796 munmap(0x7efe4a771000, 262144) = 0 munmap(0x7efe4a630000, 262144) = 0 munmap(0x7efe4b2e1000, 32768) = 0 munmap(0x7efe4a9c6000, 32768) = 0 munmap(0x7efe4b9ae000, 16384) = 0 munmap(0x7efe745fb000, 16384) = 0 munmap(0x7efe4b7c6000, 16384) = 0 munmap(0x7efe745f7000, 16384) = 0 munmap(0x7efe4b9aa000, 16384) = 0 munmap(0x7efe4b0fa000, 8192) = 0 exit_group(11) = ? +++ exited with 11 +++
То была альфа Рабочей станции, с бетой не лучше. Даже на запрос имени пользователя не выходит. $ /opt/1C/v8.3/x86_64/1cv8 (1cv8:6219): dbind-WARNING **: 17:03:55.490: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-gLgzu10U2z: В соединении отказано Ошибка сегментирования Самое любопытное тут: $ strace /opt/1C/v8.3/x86_64/1cv8 ... openat(AT_FDCWD, "/usr/lib/browser-plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/usr/lib/mozilla/plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/usr/local/netscape/plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/opt/mozilla/plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/opt/mozilla/lib/plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/opt/netscape/plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/opt/netscape/communicator/plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/usr/lib/netscape/plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/usr/lib/netscape/plugins-libc5", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/usr/lib/netscape/plugins-libc6", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/usr/lib64/netscape/plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/usr/lib64/mozilla/plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/usr/lib/nsbrowser/plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/usr/lib64/nsbrowser/plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) openat(AT_FDCWD, "/plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога) stat("/usr/lib64/browser-plugins/librtpkcs11ecp.so", {st_mode=S_IFREG|0644, st_size=2888416, ...}) = 0 stat("/usr/lib64/browser-plugins/libnpCryptoPlugin.so", {st_mode=S_IFREG|0644, st_size=5657312, ...}) = 0 Ладно, плагинов к USB-токенам в системе может и не быть clock_gettime(CLOCK_MONOTONIC, {tv_sec=17906, tv_nsec=742684167}) = 0 poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3, revents=POLLOUT}]) writev(3, [{iov_base="\24\0\6\0\30\7`\0026\1\0\0\6\0\0\0\0\0\0\0\377\377\377\377", iov_len=24}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 24 poll([{fd=3, events=POLLIN}], 1, -1) = 1 ([{fd=3, revents=POLLIN}]) recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1 CS\4\0\0\0\6\0\0\0\0\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 48 poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3, revents=POLLOUT}]) writev(3, [{iov_base="\16\0\2\0\30\7`\2", iov_len=8}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 8 poll([{fd=3, events=POLLIN}], 1, -1) = 1 ([{fd=3, revents=POLLIN}]) recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\30DS\0\0\0\0h\1\0\0\6\0\37\0\300\3\0\3\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32 poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3, revents=POLLOUT}]) writev(3, [{iov_base="(\0\4\0\30\7`\2h\1\0\0\0\0\0\0", iov_len=16}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 16 poll([{fd=3, events=POLLIN}], 1, -1) = 1 ([{fd=3, revents=POLLIN}]) recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\1ES\0\0\0\0\252\346\273\0\246\0\237\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32 clock_gettime(CLOCK_MONOTONIC, {tv_sec=17906, tv_nsec=743335356}) = 0 mmap(NULL, 126976, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f5dd9c97000 madvise(0x7f5dd9c97000, 126976, MADV_DONTNEED) = 0 mprotect(0x7f5dd9ca0000, 65536, PROT_READ|PROT_WRITE) = 0 madvise(0x7f5dd9ca0000, 65536, MADV_WILLNEED) = 0 mmap(NULL, 126976, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f5dd9c78000 madvise(0x7f5dd9c78000, 126976, MADV_DONTNEED) = 0 mprotect(0x7f5dd9c80000, 65536, PROT_READ|PROT_WRITE) = 0 madvise(0x7f5dd9c80000, 65536, MADV_WILLNEED) = 0 mmap(NULL, 126976, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f5dd9c59000 madvise(0x7f5dd9c59000, 126976, MADV_DONTNEED) = 0 mprotect(0x7f5dd9c60000, 65536, PROT_READ|PROT_WRITE) = 0 madvise(0x7f5dd9c60000, 65536, MADV_WILLNEED) = 0 mmap(NULL, 126976, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f5dd9c3a000 madvise(0x7f5dd9c3a000, 126976, MADV_DONTNEED) = 0 mprotect(0x7f5dd9c40000, 65536, PROT_READ|PROT_WRITE) = 0 madvise(0x7f5dd9c40000, 65536, MADV_WILLNEED) = 0 mmap(NULL, 126976, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f5dd9c1b000 madvise(0x7f5dd9c1b000, 126976, MADV_DONTNEED) = 0 mprotect(0x7f5dd9c20000, 65536, PROT_READ|PROT_WRITE) = 0 madvise(0x7f5dd9c20000, 65536, MADV_WILLNEED) = 0 mmap(NULL, 126976, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f5dd9bfc000 madvise(0x7f5dd9bfc000, 126976, MADV_DONTNEED) = 0 mprotect(0x7f5dd9c00000, 65536, PROT_READ|PROT_WRITE) = 0 madvise(0x7f5dd9c00000, 65536, MADV_WILLNEED) = 0 mprotect(0x7f5d93fff000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC) = 0 madvise(0x7f5d93fff000, 4096, MADV_WILLNEED) = 0 mmap(NULL, 126976, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f5dd9bdd000 madvise(0x7f5dd9bdd000, 126976, MADV_DONTNEED) = 0 mprotect(0x7f5dd9be0000, 65536, PROT_READ|PROT_WRITE) = 0 madvise(0x7f5dd9be0000, 65536, MADV_WILLNEED) = 0 mmap(NULL, 126976, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f5dd9bbe000 madvise(0x7f5dd9bbe000, 126976, MADV_DONTNEED) = 0 mprotect(0x7f5dd9bc0000, 65536, PROT_READ|PROT_WRITE) = 0 madvise(0x7f5dd9bc0000, 65536, MADV_WILLNEED) = 0 mmap(NULL, 126976, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f5dd9b9f000 madvise(0x7f5dd9b9f000, 126976, MADV_DONTNEED) = 0 mprotect(0x7f5dd9ba0000, 65536, PROT_READ|PROT_WRITE) = 0 madvise(0x7f5dd9ba0000, 65536, MADV_WILLNEED) = 0 mmap(NULL, 126976, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f5dd9b80000 madvise(0x7f5dd9b80000, 126976, MADV_DONTNEED) = 0 mprotect(0x7f5dd9b80000, 65536, PROT_READ|PROT_WRITE) = 0 madvise(0x7f5dd9b80000, 65536, MADV_WILLNEED) = 0 mmap(NULL, 126976, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f5dd9b61000 madvise(0x7f5dd9b61000, 126976, MADV_DONTNEED) = 0 mprotect(0x7f5dd9b70000, 65536, PROT_READ|PROT_WRITE) = 0 madvise(0x7f5dd9b70000, 65536, MADV_WILLNEED) = 0 --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x8} --- +++ killed by SIGSEGV +++ Ошибка сегментирования Версия платформы 1С:Предприятие 8.3.13.1865, и - валится не с любой конфигурации.
Актуальная версия платформы 1С:Предприятие 8.3.15.1565. Тоже завершается аварийно. # apt-get install 1c-preinstall-full ... Последняя версия 1c-preinstall-full уже установлена. Альт может вылететь из списка совместимости с платформой 1С (http://v8.1c.ru/requirements/). Будет обидно.
1. Нам известна эта проблема, мы будем ее решать. 2. Релиза 9 версий продуктов пока не было . 3. Для работы с 1С используйте версии 8.* до решения 1. Спасибо.
Не при любых обстоятельствах платформа завершается с ошибкой, не на всякой конфигурации прикладного решения. На Бухгалтерии предприятия падает, ошибка выглядит примерно так: NOT SANDBOXED sh: gdb: команда не найдена gdb return status: 32512 Можно предположить что проблема имеет отношение к механизму, обеспечивающему безопасное выполение программ (sandbox), для актуальной 8.3.15 Руководство разработчика глава 28.3 - судя по тому что конфигурации, не вызывающие сообщения NOT SANDBOXED (не использующие этот механизм?), работают нормально.
(В ответ на комментарий №3) > 1. Нам известна эта проблема, мы будем ее решать. > 2. Релиза 9 версий продуктов пока не было . > 3. Для работы с 1С используйте версии 8.* до решения 1. > Спасибо. Верно. Производственные системы на p8 - из p9 развёрнуто cпециальное тестовое окружение. Рассчитываю узнать о решения проблемы по состоянию баги. И если покажется нелишней помощь в тестировании.
(В ответ на комментарий №5) > (В ответ на комментарий №3) > > 1. Нам известна эта проблема, мы будем ее решать. > > 2. Релиза 9 версий продуктов пока не было . > > 3. Для работы с 1С используйте версии 8.* до решения 1. > > Спасибо. > > Верно. Производственные системы на p8 - из p9 развёрнуто cпециальное тестовое > окружение. > Рассчитываю узнать о решения проблемы по состоянию баги. И если покажется > нелишней помощь в тестировании. Есть координаты подключения к тестовому серверу. У меня на руках развёрнутый 1C_Enterprise83-thin-client-8.3.15-1565 (сервера нет) и он запускается до окна выбора базы. Можно написать письмом на cas@basealt.ru
Повторить проблему можно без сервера, достаточно любой пустой конфигурации типовой Бухгалтерии предприятия 3. Пользователя заводить не обязательно, DefaultUser годится. Сначала открывается нормально, начальное заполение данных, потом настройка организации (пропустить), подключение к интернет-поддержке (отказаться). Выйти. Всё, войти уже не получится. Не факт даже что это есть аварийное завершение, может быть просто завершение с кодом возврата 11 (что бы это значило?). Не получается создать дамп, который категорически требует техподдержка 1С. Статья altlinux.org/Features/Core не помогает, точнее - тестовая утилита segfault, подложенная в каталог установки 1С, рождает файл core.* куда ей сказано. А 1cv8c - нет. Моя фантазия исчерпана, нужны идеи куда копать дальше.
Павел, а у Вас воспроизводится на железе, в виртуалке (какой?) или везде?
(В ответ на комментарий №8) > Павел, а у Вас воспроизводится на железе, в виртуалке (какой?) или везде? У меня железо. Свежеустановленная бета Рабочей станции 9. Постоянно обновляю до актуального состояния p9. Платформа 1С тоже менялась с 8.3.13 до 8.3.15.
Воспроизвели, корку сняли совместными усилиями.
1. Быстрый способ (под root): wget http://ftp.altlinux.ru/pub/people/cas/1c-libs.tar tar xvf 1c-libs.tar -C /opt/1C/v8.3/x86_64 2. Правильный способ. Ждать, пока мы не пересоберём libwebkitgtk3 со старой версией libicu в виде отдельного пакета. Далее надо придумать, чтобы каталог с этой версией через скрипт с export LD_LIBRARY_PATH=/opt/1C/v8.3/x86_64:$LD_LIBRARY_PATH вызывался из desktop-файлов запуска 1С. Возможно, через файл-триггеры при установке 1С они будут подменяться: -Exec=/opt/1C/v8.3/x86_64/1cestart +Exec=1с-wrapper /opt/1C/v8.3/x86_64/1cestart
(В ответ на комментарий №11) > 1. Быстрый способ (под root): > wget http://ftp.altlinux.ru/pub/people/cas/1c-libs.tar > tar xvf 1c-libs.tar -C /opt/1C/v8.3/x86_64 Подтверждаю, работает.
Прошу проверить: apt-repo test 240839 Это подстановка специально собранной версии библиотеки libwebkitgtk3 до или после установки 1С. Пункты меню 1С должны подмениться на запуск через программу 1c-run
(В ответ на комментарий №13) > Прошу проверить: > apt-repo test 240839 > Это подстановка специально собранной версии библиотеки libwebkitgtk3 до или > после установки 1С. Пункты меню 1С должны подмениться на запуск через программу > 1c-run В системе успешно устанавливается libwebkitgtk3-1C-2.4.11-alt8. Пункты меню не подменяются. требуется уточнение относительно программы 1c-run: как это, откуда берётся, что должно делать?
(В ответ на комментарий №13) > Пункты меню 1С должны подмениться на запуск через программу > 1c-run $ 1c-run Usage: 1c-run <executable file from 1C> Наверное, "пункты меню следует вручную переписать как 1с-run <...>" А в принципе - да, у меня ярлык с комендой 1c-run /opt/1C/v8.3/x86_64/1cestart работает нормально. Для полной проверки со свежеустановленной системой потребуется время, я этим занимаюсь.
(В ответ на комментарий №14) > (В ответ на комментарий №13) > > Прошу проверить: > > apt-repo test 240839 > > Это подстановка специально собранной версии библиотеки libwebkitgtk3 до или > > после установки 1С. Пункты меню 1С должны подмениться на запуск через программу > > 1c-run > В системе успешно устанавливается libwebkitgtk3-1C-2.4.11-alt8. > Пункты меню не подменяются. требуется уточнение относительно программы 1c-run: > как это, откуда берётся, что должно делать? Вставиться в Exec= desktop-файлов. До или после установки 1С ставили libwebkitgtk3-1C?
(В ответ на комментарий №16) > (В ответ на комментарий №14) > > (В ответ на комментарий №13) > > > Прошу проверить: > > > apt-repo test 240839 > > > Это подстановка специально собранной версии библиотеки libwebkitgtk3 до или > > > после установки 1С. Пункты меню 1С должны подмениться на запуск через программу > > > 1c-run > > В системе успешно устанавливается libwebkitgtk3-1C-2.4.11-alt8. > > Пункты меню не подменяются. требуется уточнение относительно программы 1c-run: > > как это, откуда берётся, что должно делать? > Вставиться в Exec= desktop-файлов. До или после установки 1С ставили > libwebkitgtk3-1C? Там при установке пакета в %post работает: for f in /usr/share/applications/{1cestart,1cv8c,1cv8}.desktop;do [ -e $f ] || continue grep -qs 'Exec=1c-run ' "$f" && continue subst 's/^Exec=/Exec=1c-run /' "$f" done Если вручную запустить этот кусок кода - меняются Exec= ? grep Exec= /usr/share/applications/{1cestart,1cv8c,1cv8}.desktop
(В ответ на комментарий №16) > Вставиться в Exec= desktop-файлов. До или после установки 1С ставили > libwebkitgtk3-1C? После. Если до - файлы не подменяются (потому что их ещё нет?). И перелогиниться надо (чтобы /usr/share/applications/*.desktop перечитались?). А так всё правильно, теперь меню выглядит как 1c-run /opt/1C/v8.3/x86_64/1cestart, 1c-run /opt/1C/v8.3/x86_64/1cv8c, 1c-run /opt/1C/v8.3/x86_64/1cv8 И - нет, на свежеустановленной Рабочей станции 9 крашится как раньше. $ rpm -qa | grep libwebkitgtk3 libwebkitgtk3-1C-2.4.11-alt8.x86_64 libwebkitgtk3-2.4.11-alt7.x86_64
(В ответ на комментарий №15) > у меня ярлык с комендой 1c-run /opt/1C/v8.3/x86_64/1cestart > работает нормально. Потому что на моём рабочем месте я устанавливал 1c-libs.tar из комментария #11 А на свежеустановленной Рабочей станции - нет, поэтому на ней платформа падает как раньше.
(В ответ на комментарий №18) > (В ответ на комментарий №16) > > Вставиться в Exec= desktop-файлов. До или после установки 1С ставили > > libwebkitgtk3-1C? > > После. Если до - файлы не подменяются (потому что их ещё нет?). > > И перелогиниться надо (чтобы /usr/share/applications/*.desktop перечитались?). > А так всё правильно, теперь меню выглядит как 1c-run > /opt/1C/v8.3/x86_64/1cestart, 1c-run /opt/1C/v8.3/x86_64/1cv8c, 1c-run > /opt/1C/v8.3/x86_64/1cv8 > > И - нет, на свежеустановленной Рабочей станции 9 крашится как раньше. > $ rpm -qa | grep libwebkitgtk3 > libwebkitgtk3-1C-2.4.11-alt8.x86_64 > libwebkitgtk3-2.4.11-alt7.x86_64 Да, файл-триггер не работает. Впрочем, не работает и сама подкладываемая библиотека. Thread 1 "1cv8c" received signal SIGSEGV, Segmentation fault. 0x00007fffef94e0b8 in WTF::String::isolatedCopy() const () from /usr/lib64/1c-libs/libjavascriptcoregtk-3.0.so.0 Пробую отлаживать.
*** Bug 37311 has been marked as a duplicate of this bug. ***
8.3.16-1148 от 20.01.2020 - аналогичная ситуация.
(In reply to Evgeniy Korneechev from comment #22) > 8.3.16-1148 от 20.01.2020 - аналогичная ситуация. 8.3.16.1148 по нашим данным работает на свежеустановленной системе WS9 после установки штатного пакета libwebkitgtk3 из репозитория. Workaround не требуется. Проверьте, пожалуйста.
(Ответ для Leonid Krivoshein на комментарий #23) > (In reply to Evgeniy Korneechev from comment #22) > > 8.3.16-1148 от 20.01.2020 - аналогичная ситуация. > > 8.3.16.1148 по нашим данным работает на свежеустановленной системе WS9 после > установки штатного пакета libwebkitgtk3 из репозитория. Workaround не > требуется. Проверьте, пожалуйста. Проверено. Валится как и раньше. # apt-get update # apt-get dist-upgrade # apt-get install 1C_Enterprise83-client-8.3.16-1148.x86_64.rpm 1C_Enterprise83-common-8.3.16-1148.x86_64.rpm 1C_Enterprise83-server-8.3.16-1148.x86_64.rpm # rpm -qa | grep libwebkitgtk3 libwebkitgtk3-1C-2.4.11-alt8.x86_64 libwebkitgtk3-2.4.11-alt7.x86_64 1. В Сизифе 2.4.11-alt9, это может быть причиной? 2. Как проверялась работоспособность? Мы проверяем запуском актуальной версии Бухгалтерии предприятия (сейчас 3_0_75_70).
Павел, проверьте на новой версии, пожалуйста. Есть информация, что там починили.
(Ответ для Andrey Cherepanov на комментарий #25) > Павел, проверьте на новой версии, пожалуйста. Есть информация, что там > починили. Проверил. Хорошо бы - но нет. Крайняя актуальная на сейчас платформа релизной версии 8.3.16.1224 валится точно так же, на том же самом месте. Или имелась в виду 8.3.16.1263 от 04.03.20 "только для тестирования"? Вот бы уточнить, а то так можно пробовать до второго пришествия.
(Ответ для Pavel Isopenko на комментарий #26) > > Или имелась в виду 8.3.16.1263 от 04.03.20 "только для тестирования"? Однако, тоже валится. Не починили, значит.
Тем временем, по линии техподдержки 1С поступил получен следующий комментарий: "Проблема заключается, похоже, в изменившихся опциях компиляции WebKit, или в изменившемся поведении компилятора. В коде WebKit в некоторых случаях допускается использование экземпляров объектов с нулевым указателем this. В коде таких методов осуществляется проверка вида if (!this) { return; }; код_для_случая_this!=nullptr. В итоге компилятор производит оптимизацию кода и убирает проверку, поэтому для случаем this==nullptr начинает выполняться код, который по задумку авторов WebKit'а, выполняться не должен. Влияние на появление ошибки оказывает опция -ftree-vrp, появляющаяся на уровне оптимизации -O2, но только в совокупности со включенной опцией -fdelete-null-pointer-checks (которая включена всегда). Нужно проанализировать, что изменилось в новом Альт Линукс, и привести опции в соответствие с тем, как это было раньше. Либо включить опцию -fno-delete-null-pointer-checks"
(Ответ для Pavel Isopenko на комментарий #28) > Тем временем, по линии техподдержки 1С поступил получен следующий > комментарий: > > "Проблема заключается, похоже, в изменившихся опциях компиляции WebKit, или > в изменившемся поведении компилятора. В коде WebKit в некоторых случаях > допускается использование экземпляров объектов с нулевым указателем this. В > коде таких методов осуществляется проверка вида if (!this) { return; }; > код_для_случая_this!=nullptr. В итоге компилятор производит оптимизацию кода > и убирает проверку, поэтому для случаем this==nullptr начинает выполняться > код, который по задумку авторов WebKit'а, выполняться не должен. Влияние на > появление ошибки оказывает опция -ftree-vrp, появляющаяся на уровне > оптимизации -O2, но только в совокупности со включенной опцией > -fdelete-null-pointer-checks (которая включена всегда). Нужно > проанализировать, что изменилось в новом Альт Линукс, и привести опции в > соответствие с тем, как это было раньше. Либо включить опцию > -fno-delete-null-pointer-checks" Пожалуйста, проверьте на p9 сборку libwebkitgtk3: apt-repo test 248557 libjavascriptcoregtk3 libwebkitgtk3
сборка рабочая, добавте в пакет 1c-preinstall-full пакеты libjavascriptcoregtk3 libwebkitgtk3
(Ответ для Igor на комментарий #30) > сборка рабочая, добавте в пакет 1c-preinstall-full пакеты > libjavascriptcoregtk3 libwebkitgtk3 Ура! Спасибо.
(Ответ для Andrey Cherepanov на комментарий #29) > apt-repo test 248557 libjavascriptcoregtk3 libwebkitgtk3 Подтверждаю. Так 1С:Предприятие падать перестало. Думаю, что когда исправление попадёт в p9 багу можно будет закрыть. Да, и по поводу 1c-preinstall-full - присоединяюсь.
3 апреля с утра будет в p9
(Ответ для AEN на комментарий #33) > 3 апреля с утра будет в p9 Устранение проблемы на p9 проверил и подтверждаю. Инцидент исчерпан, можно закрывать.
Закрываем.