Имя: Пароль:
1C
1С v8
Нарушена целостность структуры конфигурации. Но не так, как обычно :)
,
0 pessok
 
20.06.17
14:15
Коллеги, всем привет! Столкнулся с такой штукой - конфа не хочет изменяться. Внесены изменения в модули (без метаданных), при попытке обновить (что демонически, что по-людски), вылезает это самое окошко.
При этом сама БД функционирует нормально, пользователя работают в базе, проблем в работе не наблюдается.
8.3.10.2252, MS SQL 2008 R2
Что делал - восстанавливал Config из бекапа, удалял ConfigSave, выгружал и загружал .cf (все выгружается и загружается, но изменения не применяются). Почистил кеш на сервере 1С, почистил локальный кеш пользователя. С .dt пока не пробовал, но надо ли? Полностью восстановиться из бекапа выйдет наврядли, как оказалось, ошибка проявилась в пятницу. А т.к. у пользователей всё работало, на нее просто положили.
Ошибка выскочила, когда конфигуратор отрывал сеансы пользователей для того, чтобы обновить структуру метаданных
1 МихаилМ
 
20.06.17
14:19
что говорит ТЖ ?
2 polosov
 
20.06.17
14:21
(0) А ТИИ?
3 pessok
 
20.06.17
14:24
(1) не включал (но щас врублю и попробую)
(2) а чем может помочь ТИИ чисто теоретически?
запущу в ночь
4 МихаилМ
 
20.06.17
14:27
(0)
может проще из бэкапа восстановить конфиг
5 pessok
 
20.06.17
14:29
(4) я конфу и восстанавливал из бекапа, правда, средствами скуля. Типа выгрузить .cf из бекапа, снять боевую с поддержки и накатить целиком?
6 pessok
 
20.06.17
14:30
тут еще вот в чем дело. configsave удалил, т.е. база "не изменена". Но если снять с поддержки и запустить применение - опять таки падает...
7 craxx
 
20.06.17
14:36
(0) ИМХО, восстановить из бэкапа и перегнать из текущей доки наработанные за период ошибки. Так проще и быстрее всего
8 pessok
 
20.06.17
14:40
(7) ну, это я оставил как крайний вариант на "поработать ночью" :)
9 craxx
 
20.06.17
14:44
(8) Последний раз я трахался с подобной проблемой пару дней, где-то с год назад. Но у меня в отличии от тебя бэкапов не было под рукой - позвали восстановить по знакомству базу после очередного кривого убновления БП3.
10 Мимохожий Однако
 
20.06.17
14:46
Иногда банально не хватает мести или сыпется жёсткий диск.
11 Cyberhawk
 
20.06.17
14:46
(9) Ценник на сколько % задрал?
12 craxx
 
20.06.17
14:49
(11) сильно не задирал, бухша моя бывшая одноклассница.
13 Cyberhawk
 
20.06.17
14:51
(12) Ну т.е. перегонял все данные из кривой базы в свежевосстановленную из бэкапа? А как отбирал измененные объекты - тупо по дате документа?
14 pessok
 
20.06.17
14:51
(10) проверил, места хватает.
диски - буквально недавно базы переехали на свежие SSD, им еще пару месяцев всего. интелы

(9) как победил?
15 craxx
 
20.06.17
14:52
(13) у меня бэкапов не было под рукой... в том и проблема была. там вообще феерия в плане бардака в ИТ-инфраструктуре.
16 pessok
 
20.06.17
14:53
(15) у меня документооборота - порядка 500-700 документов в день, потому и хочется пока без использования бекапа... если б заметили сразу, аррррр
17 craxx
 
20.06.17
14:53
(14) победил путем создания пустой конфы того же релиза БП3 и перегона туда всех данных. Благо конфа полностью типовая была
18 pessok
 
20.06.17
14:54
(17) мне кажется, что тут не суть важно, насколько она переписана
19 craxx
 
20.06.17
14:56
(13) сделал отчетик для сверки 2 баз по документам.
Все что не нашлось в 1 базе - догнал.
20 craxx
 
20.06.17
14:56
(19) + это для ТС
21 eryomin
 
20.06.17
15:17
(9) что-то подобное тоже делал не так давно с ЗУП 3.1 по-дружбе. Обновление доходило до регламентированных отчетов, а потом падало. Конфа была чисто типовая, поэтому вылечил легко. Сохранил в файл конфигурацию поставщика и загрузил основную из этого файла.
22 pessok
 
20.06.17
15:21
(21) ну тут ERP, уже так хорошо переписанная.
так что этот вариант не взлетит :(
23 eryomin
 
20.06.17
15:40
кстати, тогда ошибка как-то проявлялась при выгрузке конфигурации в файлы. не помню уже, картинку что-ли какую-то не находила. у меня не было времени с этим заморачиваться
24 pessok
 
20.06.17
15:45
UPD
в востановленном бекапе все нормально применяется.
пробуй натянуть с него .cf на боевую
25 pessok
 
20.06.17
16:03
не взлетело
26 МихаилМ
 
20.06.17
16:10
(25) ТЖ смотреть не будем ?
27 Вафель
 
20.06.17
16:11
может это проблема релиза?
28 pessok
 
20.06.17
16:13
(26) да я внезапно понял, что за 10 лет не научился его готовить :)
щас покурю как правильно настроить и будем. пока запустил проверку конфы

(27) нет, уже давно обновились, потом уже изменения накатывали
29 pessok
 
20.06.17
17:12
(26) а ТЖ даже файлов не создал, он не считает это ошибкой. а логировать всё подряд - фиг знает...
вот такие настройки ТЖ

<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">;
<dump create="false"/>
<log location="C:\Program Files\1cv8\conf\" history="168">
  <event>
   <eq property="name" value="excp"/>
  </event>
  <event>
   <eq property="name" value="excpcntx"/>
  </event>
  <event>
   <eq property="name" value="leaks"/>
  </event>
  <property name="all">
   <event>
    <eq property="name" value="excp"/>
   </event>
   <event>
    <eq property="name" value="excpcntx"/>
   </event>
   <event>
    <eq property="name" value="leaks"/>
   </event>
  </property>
</log>
</config>
30 NuclearWinter
 
20.06.17
17:34
log location="C:\Program Files\1cv8\conf\
ошибка, если каталог не пустой - то ТЖ и не будет работать
31 pessok
 
20.06.17
17:36
(30) оу, я ж говорю, что не умею его готовить :(
спасибо, щас будем пробовать смотреть
32 pessok
 
20.06.17
17:41
36:20.086002-0,EXCP,0,process=1cv8,setUnhandledExceptionFilter=setUnhandledExceptionFilter
36:21.852000-0,EXCP,1,process=1cv8,Exception=LoadComponent(cfgtest),Descr=Ошибка загрузки компоненты cfgtest
36:22.164029-0,EXCP,0,process=1cv8,ClientID=0,Exception=NetDataExchangeException,Descr='descr=10038(0x00002736): Сделана попытка выполнить операцию на объекте, не являющемся сокетом.  line=955 file=src\HeartbeatThreadImpl.cpp'
36:22.164030-0,EXCPCNTX,0,ClientComputerName=,ServerComputerName=,UserName=,ConnectString=
36:22.164031-0,EXCP,0,process=1cv8,Exception=81029657-3fe6-4cd6-80c0-36de78fe6657,Descr='src\HeartbeatThreadImpl.cpp(1176):
81029657-3fe6-4cd6-80c0-36de78fe6657: descr=10038(0x00002736): Сделана попытка выполнить операцию на объекте, не являющемся сокетом.  line=955 file=src\HeartbeatThreadImpl.cpp'
36:25.586001-0,EXCP,2,process=1cv8,Exception=9db1fa37-b455-4f3f-b8dd-7de0ea7d6da3,Descr="src\ClientFileCacheImpl.cpp(275):
9db1fa37-b455-4f3f-b8dd-7de0ea7d6da3: Файл не обнаружен 'C:\Users\misha\AppData\Local\1C\1cv8\9dd57ad1-f21a-4133-9ccd-6d0a148ae93d\ConfigSave\DynamicalWorkCache'. 2(0x00000002): Не удается найти указанный файл. : src\files.cpp(426): 2(0x00000002): Не удается найти указанный файл. "
39:45.196001-0,EXCP,1,process=1cv8,Usr=Администратор,Exception=Exception,Descr=Нарушена целостность структуры конфигурации.
33 pessok
 
20.06.17
17:50
собственно, и чаво? :)
кеш я чистил. ну могу еще разок почистить.
34 Ёпрст
 
20.06.17
17:57
(24) Занафига так то ? Просто truncate table config в рабочей
и обычным импортом с архива
35 pessok
 
20.06.17
17:59
(34) это было первое, что я сделал. не взлетело
36 Ёпрст
 
20.06.17
18:01
(35) при этом configsave прибил ?
Попробуй еще DBSchema подменить
37 pessok
 
20.06.17
18:01
(36) да, ConfigSave Тоже.
а вот DBSChema надо попробовать. щас доеду до компа, попробую, мерси
38 mehfk
 
20.06.17
18:02
(32) Это вроде не серверный ТЖ...
39 МихаилМ
 
20.06.17
18:12
а я бы обратил внимание на

9dd57ad1-f21a-4133-9ccd-6d0a148ae93d

возможна ошибка , что не хватает этого мета данного
или оно не нужно, но осталось в списке метаданных (запись в root).

и

\ConfigSave\DynamicalWorkCache

возможно нужно почистить остатки неудачного динамического обновления

DBSChema  не причем .
40 pessok
 
20.06.17
19:36
(38) надо из rphost?

(39) но ConfigSave удалялось целиком.
прям транкейтилось.
или что ты имеешь ввиду под "почистить"?
41 pessok
 
20.06.17
19:47
хм, а ведь да. сбой произошел, когда добавлялось регламентное задание, оно не сохранилось после переоткрытия, и было решено его пока и не сохранять.
вот оно в чем дело, скорее всего.
а как вычистить о нём всю инфу еще?
42 МихаилМ
 
20.06.17
19:59
(41)

попробуйте обновить из бекапа запись dbnames таблицы params
43 pessok
 
20.06.17
20:21
(42) сделал
update Params
set BinaryData = t1.BinaryData
from test.dbo.Params as t1
where t1.FileName = 'DBNames' and Params.FileName = 'DBNames'

не помогло :(

или надо было целиком всю запись обновить?
44 pessok
 
20.06.17
20:24
а ТиИ имеет смысл делать? Реструктуризацию, например
45 МихаилМ
 
20.06.17
20:48
реструктуризацию - нет .
тии попробуйте. на пустой базе

код вроде правильный. должен помочь. попробуйте заменить
всю params
46 pessok
 
20.06.17
21:48
тааак
не знаю, что именно привело к правильному результату...

use erp

truncate table Config

insert into Config select * from test.dbo.Config

truncate table ConfigSave

update Params
set Attributes = t1.Attributes, BinaryData = t1.BinaryData, Creation = t1.Creation, DataSize = t1.DataSize, Modified = t1.Modified, PartNo = t1.PartNo
from test.dbo.Params as t1
where t1.FileName = 'DBNames' and Params.FileName = 'DBNames'

а потом - обновление БД "на сервере". и, вроде, взлетело.
щас накачу крайние изменения из .cf, попробую еще обновить, отпишусь.

но, подозреваю, что всё будет норм.
всем большое спасибо!
МихаилМ отдельно спасибо!
47 pessok
 
20.06.17
22:03
накатил еще изменения, обычное обновление не прошло
щас буду пробовать снова "на сервере"
48 МихаилМ
 
20.06.17
22:17
"обычное обновление не прошло" - таже ошибка , что и в (0)
49 pessok
 
20.06.17
22:24
(48) так точно. щас юзвери разъедутся по домам, запущу снова "на сервере"
50 pessok
 
20.06.17
23:20
+(49)
таки да. обновление на сервере работает.
притом на том же сервере, но обычное - фиг.
с этим уже можно жить :)
почистить еще разок пользовательский кеш?
51 МихаилМ
 
20.06.17
23:22
(50)
не помешает . это же 1с - как на минном поле.
52 pessok
 
21.06.17
00:02
(51) вроде, помогло. теперь и так накатывается.
метаданные тоже добавляются, ура-ура!
восстанавливал бекап бы я дольше :)
53 Ёпрст
 
21.06.17
09:22
Т.е во всём виновато было демоническое обновление ?
54 pessok
 
21.06.17
09:57
(53) началось всё со сбоя при реструктуризации (было добавлено регламентное задание). уж хз, что там произошло.
оно оторвало сеансы, rphost ребутнулся,
соответственно, вылезла ошибка, что реструктуризация не была завершена, потом, что есть незавершенная операция реструктуризации.

в итоге, просто после замены таблицы config, видимо, локальный кеш тоже надо чистить.

так что это не совсем вина демонического.

truncate table Config

insert into Config select * from test.dbo.Config

truncate table ConfigSave

update Params
set Attributes = t1.Attributes, BinaryData = t1.BinaryData, Creation = t1.Creation, DataSize = t1.DataSize, Modified = t1.Modified, PartNo = t1.PartNo
from test.dbo.Params as t1
where t1.FileName = 'DBNames' and Params.FileName = 'DBNames'



и потом чистка локального кеша

где-то в промежутке еще чистил и серверный кеш