Переключение на Главную Страницу Страницы: [1]  ОтправитьПечать
Очень популярная тема (более 25 ответов) Может быть кто сталкивался с ошибкой записи нового документа?( sql версия ) (число прочтений - 19189 )
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
04. Сентября 2009 :: 06:49
Печать  
Может быть кто сталкивался с ошибкой ? ( sql версия )
Четвертый раз за последние три месяца происходит следующая ошибка
Создаем новый счет. Начинаем счет сохранять первый раз.
Происходит откат sql транзакции и
счет теряет информацию о своей же файловой блокировке.
1с в форме документа считает что документ в sql базе есть
(в контексте формы есть уже текущий документ  есть idoc и row_id )
В sql документа нет так так произошел откат транзакции(ROLLBACK)

Патовая ситуация. Счет сохранить не можем.
Остается только вышибить из 1с.
Менеджеру приходиться делать счет заново.
1с  стандартная. 25 релиз. sql2000
« Последняя редакция: 10. Сентября 2009 :: 04:30 - Z1 »  

test1.jpeg ( 18 KB | Загрузки )
test1.jpeg
Наверх
 
IP записан
 
U_zer
Экс-Участник


Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #1 - 04. Сентября 2009 :: 06:59
Печать  
Z1 писал(а) 04. Сентября 2009 :: 06:49:
Может быть кто сталкивался с ошибкой ? ( sql версия )
Четвертый раз за последние три месяца происходит следующая ошибка
Создаем новый счет. Начинаем счет сохранять первый раз.
Происходит откат транзакции и счет теряет информацию
о своей же файловой блокировке.
Патовая ситуация. Счет сохранить не можем.
Остается только вышибить из 1с.
Менеджеру приходиться делать счет заново.
1с  стандартная. 25 релиз. sql2000


К сожалению, данную ошибку не встречал, но на всякий случай, у нас для критичных документов (Счет, Расходная) сделано автосохранение на случай незапланированного выкидывания из 1С. При аварийном завершении документ не теряется, а автовосстанавливается.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #2 - 04. Сентября 2009 :: 07:45
Печать  
Цитата:
Z1 писал(а) 04. Сентября 2009 :: 06:49:
Может быть кто сталкивался с ошибкой ? ( sql версия )
Четвертый раз за последние три месяца происходит следующая ошибка
Создаем новый счет. Начинаем счет сохранять первый раз.
Происходит откат транзакции и счет теряет информацию
о своей же файловой блокировке.
Патовая ситуация. Счет сохранить не можем.
Остается только вышибить из 1с.
Менеджеру приходиться делать счет заново.
1с  стандартная. 25 релиз. sql2000


К сожалению, данную ошибку не встречал, но на всякий случай, у нас для критичных документов (Счет, Расходная) сделано автосохранение на случай незапланированного выкидывания из 1С. При аварийном завершении документ не теряется, а автовосстанавливается.

Что такое автосохранение ???
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #3 - 04. Сентября 2009 :: 08:06
Печать  
Цитата:
К сожалению, данную ошибку не встречал...
нашел о чем жалеть  Улыбка
  

1&&2&&3
Наверх
 
IP записан
 
U_zer
Экс-Участник


Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #4 - 04. Сентября 2009 :: 08:08
Печать  
Ну во время ввода новой строки - табл. часть пишется в темп. файлик, когда док. успешно сохраняется, файлик удаляется, если был вылет из 1С - файлик остается, и при вводе нового дока можно табл. часть загрузить из него.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #5 - 04. Сентября 2009 :: 08:56
Печать  
Цитата:
Ну во время ввода новой строки - табл. часть пишется в темп. файлик, когда док. успешно сохраняется, файлик удаляется, если был вылет из 1С - файлик остается, и при вводе нового дока можно табл. часть загрузить из него.

Понятно.

Только не понятно почему у Вас 1с вылетает.  sql , dbf ?
  
Наверх
 
IP записан
 
U_zer
Экс-Участник


Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #6 - 04. Сентября 2009 :: 09:56
Печать  
Z1 писал(а) 04. Сентября 2009 :: 08:56:
Цитата:
Ну во время ввода новой строки - табл. часть пишется в темп. файлик, когда док. успешно сохраняется, файлик удаляется, если был вылет из 1С - файлик остается, и при вводе нового дока можно табл. часть загрузить из него.

Понятно.

Только не понятно почему у Вас 1с вылетает.  sql , dbf ?


SQL. Сама по себе у нас вылететь может если админы с серверами шаманят в течении рабочего дня ... Иногда просто кого-то приходится выкидывать, а так, просто, сама-по себе 1С у нас не падает. По-крайней мере, я такого не помню.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #7 - 04. Сентября 2009 :: 11:36
Печать  
Озадачился не может ли из-за subj возникать фантомы документов ( документы призраки).
Написал проверочный отчет.
Отчет универсальный для любой конфигурации ( будет ли работать под dbf не знаю ).
Может кому пригодиться. Улыбка
У меня фантомов нет.

Исправил ошибку вырожденных случаев когда у документов нет ни таблич ни шапки.
Также исправил случай когда шапки нет таблич часть есть
  

_________________________________001.rar ( 7 KB | Загрузки )
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #8 - 07. Сентября 2009 :: 09:29
Печать  
Удалось воссоздать subj. Каждый из ВАС может повторить и на
своей базе этот баг.Речь только об sql базе( конечно на всякий случай повторять лучше в тестовой базе )
1.Делаем следующее создаем новый документ счет ( или ваш вид )
2.заходим в qa + входим в базу 1с
3. выполняем команды
declare @i integer
begin tran
select @i=1 from DH196(TABLOCKX HOLDLOCK) where 0=1
-- В вашей базе выберите свою таблицу шапки документов

4. В 1с сохраняем счет  и Имеем subj
5. в qa выполняем
commit tran
6. Заходим в 1с сохраняем счет и  Имеем subj
6 можно делать бесконечное число раз.


При этом в форме документа у документа счет уже есть IDDOC.
У кого нибудь есть функции просмотра, установки файловых блокировок 1с для файла 1SJOURN.$lk по iddoc документа.


  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #9 - 07. Сентября 2009 :: 11:10
Печать  
Доступ к каталогу базы - по сети?
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #10 - 07. Сентября 2009 :: 11:12
Печать  
berezdetsky писал(а) 07. Сентября 2009 :: 11:10:
Доступ к каталогу базы - по сети?

Да по сети. Каталог базы  ( для всех компьютеров одинаковый )
\\<ИмяСервера>\Имя Каталога
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #11 - 07. Сентября 2009 :: 12:04
Печать  
Тогда всё - в пределах ожиданий..  Нерешительный Начни с замены свичей..
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #12 - 07. Сентября 2009 :: 13:10
Печать  
berezdetsky писал(а) 07. Сентября 2009 :: 12:04:
Тогда всё - в пределах ожиданий..  Нерешительный Начни с замены свичей..

switch-и вроде хорошие (только 3com )
менять не реально.
А что делать если порт компьютера плохой или соеденение
между shitch и компьютером ?
Ошибка происходила и в терминале. Там уж точно порты и линия
рабочие.Даже суперрабочие.
Если же subj происходит из-за временного провала по скорости по терминалу то кратковременные падения скорости по терминалу возможны и в будущем всегда.

Только что проверил ошибка воспроизводится если база
лежит на диске c:\1111 и 1с запускал только на сервере.
Все тоже самое.

Даже если и воспользоваться твоим советом и заменить
всю сеть ( что сделать нереально не физически ни по затратам денежным) это никак не гарантирует что у пользователя не будет subj.
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #13 - 07. Сентября 2009 :: 13:21
Печать  
Z1 писал(а) 07. Сентября 2009 :: 13:10:
Только что проверил ошибка воспроизводится если база
лежит на диске c:\1111 и 1с запускал только на сервере.
Все тоже самое.

Разумеется, #8 будет воспроизводиться, но это не имеет отношения к #0. К сожалению, достаточно одного кривого порта/кабеля/клиента, чтобы #0 возникало на любом порту свича.

Со штатными блокировками не игрался?
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #14 - 07. Сентября 2009 :: 13:39
Печать  
berezdetsky писал(а) 07. Сентября 2009 :: 13:21:
Z1 писал(а) 07. Сентября 2009 :: 13:10:
Только что проверил ошибка воспроизводится если база
лежит на диске c:\1111 и 1с запускал только на сервере.
Все тоже самое.

Разумеется, #8 будет воспроизводиться, но это не имеет отношения к #0. К сожалению, достаточно одного кривого порта/кабеля/клиента, чтобы #0 возникало на любом порту свича.

можно описать более подробно причину subj.

Я так же не совсем понимаю причем тут пропадание даже кратковременное сети. Почему из-за этого приложение должно
приходить в патовую ситуацию. Фактически это ошибка ( редкая )
приложения 1с.exe я конечно понимаю что ее никто не будет
исправлять.(1с.exe ведь продолжает корректно работать со всем кроме этого документа ).

Моя задача найти какое либо компромисное решение которое
позволит выйти из subj как можно безболезненей и желательно самим пользователям без моего участия.



  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #15 - 07. Сентября 2009 :: 13:43
Печать  
Цитата:
Со штатными блокировками не игрался?

нет
subj Сейчас все работает на стандарной 1с версии блокировок.
Как раз если использовать свои блокировки то subj
никогда не будет потому что для своих блокировок строка
select @i=1 from DH196(TABLOCKX HOLDLOCK) where 0=1
и аналогичные ей комментаряться полностью.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #16 - 07. Сентября 2009 :: 13:59
Печать  
Дополнение к subj
не уверен что остается именно файловая блокировка
потому что если делать тест сразу после входа в 1с
файл 1sjourn.$lnk не создается вообще.
Т.е. это мое предположение subj о наличии именно файловой блокировки на основании проведенных опытов скорее всего ошибочно.

Скорее всего что-то другое отмеченное внутри 1с или вне 1с не сбрасываетсяи 1с считает что идет транзакция хотя никакой транзакции уже нет. Так все вроде удалось достичь повторяемости
ошибки может кто либо и скажет в чем причина или предложит
как выйти из этой ситуации.
Ну и во вторых почему все это пишу ведь  subj может
случиться с  каждым так пусть народ знает что есть
такой баг или грабли.

Так же subj происходит при очень большой нагрузке на базу.
При средних и малых нагрузках не возникал никогда.
  
Наверх
 
IP записан
 
DEVIce
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 12
Зарегистрирован: 24. Октября 2007
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #17 - 09. Сентября 2009 :: 11:23
Печать  
Была похожая ситуация, при мне ее так и не удалось решить. Похже общаясь с бывшими коллегами узнал, что решили проблему переходом на 2005.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #18 - 09. Сентября 2009 :: 11:42
Печать  
DEVIce писал(а) 09. Сентября 2009 :: 11:23:
Была похожая ситуация, при мне ее так и не удалось решить. Похже общаясь с бывшими коллегами узнал, что решили проблему переходом на 2005.

Ваши колеги не правы ошибка не в sql2005 а в приложении
1cv7.exe поэтому ошибка осталась.
Просто Ваши коллеги для sql2005
использовали может лучшее железо и ошибка перестала проявляться.

Я сейчас моделирую ситуацию.
Что точно удалось выяснить файловые блокировки здесь ни при чем.
  
Наверх
 
IP записан
 
DEVIce
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 12
Зарегистрирован: 24. Октября 2007
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #19 - 09. Сентября 2009 :: 12:01
Печать  
Оборудование осталось тем же самым, единственное, уточнил, что они еще и терминал подняли. Про правильность категорично заявлять не буду  Подмигивание, но проблему они решили, сами до конца не уверены, что именно терминалом и 2005, мож и еще чего трогали, но решили.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #20 - 09. Сентября 2009 :: 15:44
Печать  
Обновил в subj точное описание ошибки.
Здесь прилагается архив с md
и описанием того как воспроизвести эту ошибку.
Теперь каждый кто захочет сможет воспроизвести ошибку.
  

err_1c.rar ( 6 KB | Загрузки )
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #21 - 09. Сентября 2009 :: 15:50
Печать  
Далее распишу последовательность того что происходит
т.е. файл ОписаниеОшибки.txt выкладываю сюда :
(сначала по md надо создать sql базу )

1. Заходим в 1с
2.Через меню слздаем новый счет при этом происходит
1с выставляет блокировку в _1SJOURN(TABLOCKX)
открывает счет и выполняет COMMIT TRAN

set implicit_transactions on      1CV7
RPC:Starting      exec _1sp__1SJOURN_TLockX      1CV7
SP:StmtStarting      -- _1sp__1SJOURN_TLockX
select @i=1 from _1SJOURN(TABLOCKX HOLDLOCK) where 0=1      1CV7
SQL:BatchStarting      IF @@TRANCOUNT > 0 COMMIT TRAN
set implicit_transactions off      1CV7


3. Выставляем у документа дату, номер Примечание
любые значения.


4. Нажимаем кнопку "Проверить IDDOC"
при этом 1с выводит :
ТекущийДокумент =
ПустоеЗНачение(ТекущийДокумент) = 1
Внутр знач iddoc = {"O","0","0","12","0","0","         0   "}
Т.е. в Контексте формы у документа нет ни IDDOC также нет ROW_ID из _1SJOURN

5.заходим в qa устанавливаем нужную базу
6. выполняем операторы
declare @i integer
begin tran
select @i=1 from DH12(TABLOCKX HOLDLOCK) where 0=1

Видим в профайлере что это все отработало
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #22 - 09. Сентября 2009 :: 15:50
Печать  
7.Переходим в 1с. В открытом документе нажимаем Ок
Сохранить документ нажимаем Да.
Далее происходит следущее
1с пытается сохранить документ
выставили блокировку на _1SJOURN
получили GetMaxID для IDDOC
получает MaxID  в _1SJOURN
для нового документа формируем IDDOC = '     2   '
вставляем в таблицу _1SJOURN запись о новом документе с IDDOC = '     2   '
заносим информацию об insert в журнал транзакций
узнаем row_id для добавленной записи ( в моем случае это 6 )
назначаем для _1SUIDCTL макс id = '     2   '
заносим информацию об update _1SUIDCTL в журнал транзакций
читаем из _1SJOURN запись с  IDDOC = '     2   '
начинаем делать insert в шапку документа счет ( dh12 )
ничего не получилось и идет откат транзакции
Обновляется журнал транзакций.


set implicit_transactions on      1CV7
SP:StmtStarting      -- _1sp__1SJOURN_TLockX
select @i=1 from _1SJOURN(TABLOCKX HOLDLOCK) where 0=1      1CV7

-- _1sp__1SUIDCTL_GetMaxID
select @id=MAXID from _1SUIDCTL(NOLOCK) where TYPEID=@tid
exec _1sp__1SJOURN_MaxID @P1 output
exec sp_executesql N'Insert into _1SJOURN values( @P1,@P2,@P3,@P4,@P5,@P6,@P7,@P8,@P9,@P10,@P11)', N'@P1 int,@P2 varchar(9),@P3 int,@P4 smallint,@P5 varchar(23),@P6 varchar(18),@P7 varchar(5),@P8 tinyint,@P9 bit,@P10 int,@P11 int', 0, '     2   ', 12, 0, '20090909B0I9GG     2   ', '        12        ', ' 1212', 0, 0, 0, 0
exec _1sp__1SJOURN_MaxRowID @P1 output
exec _1sp__1SUIDCTL_SetMaxID 0, '     2   '
exec _1sp__1SJOURN_ByIDDOC '     2   '
exec sp_executesql N'Insert into DH12 values( @P1,@P2)', N'@P1 varchar(9),@P2 varchar(10)', '     2   ', '2131      '
SQL:BatchStarting      IF @@TRANCOUNT > 0 ROLLBACK TRAN      1CV7
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #23 - 09. Сентября 2009 :: 15:51
Печать  
8. Т.е. попытались записать документ не получилось sql все откатил
а в форме документа осталась информация что документ создан
т.е у документа уже есть IDDOC = '     2   ' и row_id = 6


9. Переходим в 1с
на вопрос транзакция провалилась повторить попытку выполнить транзакцию отвечаем нет.

10. Для того чтобы убедиться что 8 истинно в документе нажимаем кнопку "Проверить IDDOC"
ТекущийДокумент = <Объект не найден>(2/)
ПустоеЗНачение(ТекущийДокумент) = 0
Внутр знач iddoc = {"O","0","0","12","0","0","         2   "}
Т.е. у документа уже еть и IDDOC и row_id
и при дальнейших попытках записать документ именно этой информацией мы и пользуемся
но ее нет в sql.


11. Далее переходим в qa
выполняем
commit

12 Переходим в 1с и нажимаем кнопку ок. Сохранить документ отвечаем да
пытаемся получить из _1SJOURN строку по IDDOC =  '     2   '
блокируем таблицу _1SJOURN
пытаемся получить VERSTAMP  из _1SJOURN где  ROW_ID=6
не находим
откатываем транзакцию
и 1с задает снова вопрос не удалось записать счет из-за транзакции будем пробовать еще

exec _1sp__1SJOURN_ByIDDOC '     2   '
set implicit_transactions on
SP:StmtStarting      -- _1sp__1SJOURN_TLockX
select @i=1 from _1SJOURN(TABLOCKX HOLDLOCK) where 0=1
select VERSTAMP from _1SJOURN(NOLOCK) where ROW_ID=6
IF @@TRANCOUNT > 0 ROLLBACK TRAN

13. Пункт 12 можно делать бесконечно и безрезультатно.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #24 - 09. Сентября 2009 :: 15:54
Печать  
Вот такая ситуация.
Есть ли ответы на вопросы
1. Можно ли в контексте формы открытого документа отменить назначения для ТекущийДокумент() ?
2. Можно ли в форме документа узнать row_id ?

Или может быть есть какой-то другой выход из этой ошибочной ситуации.
  
Наверх
 
IP записан
 
alexdd
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 347
Зарегистрирован: 25. Июня 2007
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #25 - 09. Сентября 2009 :: 17:23
Печать  
а кто держит блокировку на DH12 в боевой базе?
1С выполняет exec _1sp__1SJOURN_TLockX. Если успешно, значит предполагает, что все ок, можно проводить документ. Если нет, выводит свое стандартное сообщение про блокировку журнала.
А тут получается висит какое-то соединение с блокировкой на DH12 и без блокировки на _1sjourn?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #26 - 10. Сентября 2009 :: 04:16
Печать  
alexdd писал(а) 09. Сентября 2009 :: 17:23:
а кто держит блокировку на DH12 в боевой базе?
1С выполняет exec _1sp__1SJOURN_TLockX. Если успешно, значит предполагает, что все ок, можно проводить документ. Если нет, выводит свое стандартное сообщение про блокировку журнала.
А тут получается висит какое-то соединение с блокировкой на DH12 и без блокировки на _1sjourn?


Никто специально блокировку не держит.
Блокировка поставлена специально чтобы воспроизвести со 100% гарантией
ошибку не более того ( и только на тесте ).Этой блокировкой мы добиваемся отката конкретной транзакции.
sql не гарантирует что конкретно начатая транзакция ( записи нового документа )
всегда завершиться успешно. Так вот если эта транзакция по какой либо причине
закончится неудачно то получаем  subj.
Эта транзакция может быть длинной у меня стоит ПриЗаписиПерепроводить(1);
что только повышает шансы получения этой ситуации.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #27 - 10. Сентября 2009 :: 04:22
Печать  
кстати вот еще один маленький баг
Цитата:
exec sp_executesql N'Insert into DH12 values( @P1,@P2)', N'@P1 varchar(9),@P2 varchar(10)', '     2   ', '2131      '

Зачем IDDOC приводить к varchar(9)
либо вообще убрать либо ставить char(9)

аналогично и для _1SJOURN
Цитата:
exec sp_executesql N'Insert into _1SJOURN values( @P1,@P2,
« Последняя редакция: 10. Сентября 2009 :: 05:52 - Z1 »  
Наверх
 
IP записан
 
alexdd
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 347
Зарегистрирован: 25. Июня 2007
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #28 - 10. Сентября 2009 :: 14:40
Печать  
Z1 писал(а) 10. Сентября 2009 :: 04:16:
Никто специально блокировку не держит...

я просто к тому, что может на боевой БД, есть какие-то самодельные транзакции. Не 1С-ные т.е. При такой модели как в тесте, к 1С претензий нет по большому счету, она пытается залочить _1sjourn, целиком притом. Лочит и получает облом с какой-то другой таблицей. А это уже в ней не предусмотреноУлыбка
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой ? ( sql версия )
Ответ #29 - 10. Сентября 2009 :: 15:08
Печать  
alexdd писал(а) 10. Сентября 2009 :: 14:40:
Z1 писал(а) 10. Сентября 2009 :: 04:16:
Никто специально блокировку не держит...

я просто к тому, что может на боевой БД, есть какие-то самодельные транзакции. Не 1С-ные т.е. При такой модели как в тесте, к 1С претензий нет по большому счету, она пытается залочить _1sjourn, целиком притом. Лочит и получает облом с какой-то другой таблицей. А это уже в ней не предусмотреноУлыбка

Все именно так об этом и речь. Раз в месяц из-за какого то скопления звезд транзакция пытающая записать Новый документ заканчивается неудачей и имеем subj.
Тестовая база приведена только для того чтобы каждый кто захочет смог повторить ошибку со 100% гарантией.

к 1с претензия должен правильно отрабатываться любой
ROLLBACK при Первой записи нового документа.по каким причинам он произошел даже не имеет смысл обсуждать.
Просто выявить и воспроизвести эту ошибку непросто - но это уже сделано в этой ветке.

Вторая претензия зачем эти преобразования с varchar при
insert  ( первый раз на insert взглянул и вот тебе пожалуйста ).
Ноги наверное растут еще с dbf ?

Нет на боевой базе сейчас нет никаких самодельных транзакций.
стандартный релиз с стандартными блокировками.

Если делать свои блокировки то в целом снизим нагрузку на sql
и вероятность subj уменьшиться но это пока не обсуждается.

Но главное найти приемлимое решение subj. Есть некоторые мысли
надо будет проверять их.
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #30 - 11. Сентября 2009 :: 10:26
Печать  
Можно немного OFF?

Хочу понять, зачем 1С-ка блокирует _1sjourn на все время проведения? Документ-то уже записан, а проведение только изменяеть одно поле в этой таблице.
  
Наверх
 
IP записан
 
alexdd
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 347
Зарегистрирован: 25. Июня 2007
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #31 - 11. Сентября 2009 :: 10:45
Печать  
грубо говоря для сохранения целостности данных, пока не завершиться транзакция для всех логически связанных держится блокировка этих таблиц.
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #32 - 11. Сентября 2009 :: 10:51
Печать  
alexdd писал(а) 11. Сентября 2009 :: 10:45:
грубо говоря для сохранения целостности данных, пока не завершиться транзакция для всех логически связанных держится блокировка этих таблиц.


Я так подозреваю, что связано это с точкой актуальности.  А если я не использую торговлю, то, оно мне не надо.

Спрошу по другому: какие поля в _1sjourn меняются  при проведении?
  
Наверх
 
IP записан
 
alexdd
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 347
Зарегистрирован: 25. Июня 2007
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #33 - 11. Сентября 2009 :: 10:58
Печать  
да нет, не с точкой актуальности. Ну, например, документ при проведении модифицирует какие-то таблицы. Если отпустить _1sjourn и писать в регистры, другое соединение может что-то сделать с тем же документом в _1sjourn пока первое соединение еще не закончило проведение.
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #34 - 11. Сентября 2009 :: 11:15
Печать  
Типа пока док проводится, в другом соединении я его удаляю...все понял.

А есть ведь блокировки не на всю таблицу, а на отдельные строки, с этим никто не игрался?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #35 - 11. Сентября 2009 :: 11:23
Печать  
chessman писал(а) 11. Сентября 2009 :: 10:26:
Можно немного OFF?

Хочу понять, зачем 1С-ка блокирует _1sjourn на все время проведения? Документ-то уже записан, а проведение только изменяеть одно поле в этой таблице.
 

Чтобы рассчитались правильно регистры
Происходит следущее
1.В начале проведения восстанавливаем регистры без документа проведения от текущего периода до ТА
2.Далее обрабатываем долго с клиента 1с модуль проведения при этом
для каждой строки добавить движение пересчитываем
состояние регистров от  текущего периода то ТА.

Если просто разрешить обоим то может возникнуть
фантомы т.е оба одновременно начнут добавлять запись.
Все остальные случаи вроде ловяться на ожидании по индексу.

и второе из-за чего если
отменили движения первого документа
отменили движения второго  документа с учетом первого документа
первый проведение окончилось откатом
второй закончился успешно.
Имеем неправильные итоги регистра.
то будет происходить по всем общим измерениям.
Хотя это тоже должно останавливаться по индексу.

Третье так как движения из 1с идут неупорядоченными то возрастает очень сильно вероятность возникновения взаимоблокировок.

Всякие свои блокировки это блокировать одно из измерений тогда их можно проводить паралельно. Т.е. весь регистр как бы делим
на подрегистры.
Но при этом тоже есть нюансы. Если измерения блокировок выбраны неправильно то таких блокировок становиться
очень много для одного проведения что становиться  хуже чем единственная блокировка на все.

  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #36 - 11. Сентября 2009 :: 11:37
Печать  
chessman писал(а) 11. Сентября 2009 :: 10:51:
alexdd писал(а) 11. Сентября 2009 :: 10:45:
грубо говоря для сохранения целостности данных, пока не завершиться транзакция для всех логически связанных держится блокировка этих таблиц.


Я так подозреваю, что связано это с точкой актуальности.  А если я не использую торговлю, то, оно мне не надо.

Спрошу по другому: какие поля в _1sjourn меняются  при проведении?

флаги регистров могут измениться и поле closed
но не в этом дело. Т.к. _1sjourn одной строке всегда однозначно
только один документ то с точки зрения _1sjourn могут хоть все
документы проводиться паралельно.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #37 - 11. Сентября 2009 :: 11:49
Печать  
alexdd писал(а) 11. Сентября 2009 :: 10:58:
да нет, не с точкой актуальности. Ну, например, документ при проведении модифицирует какие-то таблицы. Если отпустить _1sjourn и писать в регистры, другое соединение может что-то сделать с тем же документом в _1sjourn пока первое соединение еще не закончило проведение.

Документ другое соеденение изменить не сможет так как остается update блокировка на строку в таблице dh...
до окончания транзакции.

Ну и это очень Плохо из модуля проведения менять сам документ.
По логике должно быть все наоборот на основании данных документа генеряться движения(проводки).
  
Наверх
 
IP записан
 
alexdd
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 347
Зарегистрирован: 25. Июня 2007
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #38 - 11. Сентября 2009 :: 11:54
Печать  
chessman писал(а) 11. Сентября 2009 :: 11:15:
с этим никто не игрался?

игрался, продают даже готовые решения, http://www.softpoint.ru/article_id1.htm. Статью эту я не читал, но там скриншот такой как Z1 постилУлыбка
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #39 - 11. Сентября 2009 :: 11:59
Печать  
Читал.
Просто может кто-нить из форума делал.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #40 - 11. Сентября 2009 :: 12:04
Печать  
chessman писал(а) 11. Сентября 2009 :: 11:59:
Читал.
Просто может кто-нить из форума делал.

информации выше вполне достаточно чтобы сделать свои блокировки.

  
Наверх
 
IP записан
 
leov-001
Full Member
***
Отсутствует


1C++ rocks!

Сообщений: 150
Зарегистрирован: 05. Марта 2009
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #41 - 26. Ноября 2013 :: 10:07
Печать  
Переписал дельфийский код из этой статьи >> http://www.softpoint.ru/article.php?id=2

Код
Выбрать все
Перем BinData, RS, Запрос;
//*******************************************
Процедура Сформировать()
	Если BinData.ПодключитьсяКФайлу("D:\TestWork\1SJOURN.$lk",1,0)=1 Тогда

		Для i=0 По 100000 Цикл
			Если BinData.УстБлокировку(i,1,0) = 1 Тогда
				BinData.СнятьБлокировку(i,1);
			Иначе
				Сообщить(СокрЛП(i)+" - Locked");
				RS.УстПараметр(1,Число(i));
				Сообщить(RS.ВыполнитьСкалярный());
			КонецЕсли;
		КонецЦикла;
		BinData.Close();
	Иначе
		Предупреждение("Не могу ПодключитьсяКФайлу: D:\TestWork\1SJOURN.$lk");
	КонецЕсли;
КонецПроцедуры
//*******************************************
BinData = СоздатьОбъект("BinaryData");
RS = СоздатьОбъект("ODBCRecordSet");
Запрос = "SELECT ''''+IDDOC+''''+DOCNO+'''' AS НомерДокумента
	   |FROM _1SJOURN
	   |WHERE ROW_ID = ?";
RS.Подготовить(Запрос);
RS.ДобПараметр(1,4,,0);
 

  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #42 - 27. Ноября 2013 :: 05:35
Печать  
Прикольно..
Можно еще и фильтрануть только по интересующему доку, а не по всем заблокированным.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #43 - 27. Ноября 2013 :: 07:04
Печать  
Как с помощью BinData.УстБлокировку(i,1,0)  так и с помощью стандартного Док.Блокировка() можно установить Блокировку
и в других сесиях этот документ будет заблокирован
и можно увидеть чужие блокировки.

Не получается снять чужую блокировку ( блокировку другой сессии).
задача такая : иногда в терминале "падает" сессия и при этом документ остается заблокирован и невозможно получить доступ к этому документу.
Может можно как-то снять блокировку ???
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #44 - 27. Ноября 2013 :: 07:27
Печать  
если max(row_id) - несколько мильенов, то долго ждать
малость допилил для скорости
Код
Выбрать все
Процедура Сформировать()
	RS = СоздатьОбъект("ODBCRecordSet");
	МаксИД = RS.ВыполнитьСкалярный("select max(row_id) макс from _1sjourn (nolock)");

	BinData = СоздатьОбъект("BinaryData");
	Запрос = "
	|SELECT
	|	DOCNO AS НомерДок,
	|   cast(left(date_time_iddoc,8) as datetime) ДатаДок
	|FROM _1SJOURN (nolock)
	|WHERE ROW_ID = ?";
	RS.Подготовить(Запрос);
	RS.ДобПараметр(1,4,,0);

	Файл=КаталогИБ()+"1SJOURN.$lk";
	Если BinData.ПодключитьсяКФайлу(Файл,1,0)=1 Тогда

		Шаг=1000;
		КонИД=МаксИД;
		НачИД=Макс(КонИД-Шаг,0);
		Пока КонИД>0 Цикл
			Состояние(КонИД);
			Если BinData.УстБлокировку(НачИД,Шаг,0) = 1 Тогда
				BinData.СнятьБлокировку(НачИД,Шаг);
			Иначе
				Для i= -КонИД По -НачИД Цикл
					Если BinData.УстБлокировку(-i,1,0) = 1 Тогда
						BinData.СнятьБлокировку(-i,1);
					Иначе
						RS.УстПараметр(1,Число(-i));
						Рез=RS.ВыполнитьСкалярный();
						Сообщить(СокрЛП(-i)+" - Locked "+ Рез.НомерДок+" "+Рез.ДатаДок);
					КонецЕсли;
				КонецЦикла;
			КонецЕсли;
			КонИД=НачИД-1;
			НачИД=Макс(КонИД-Шаг,0);
		КонецЦикла;
		BinData.Close();
	Иначе
		Предупреждение("Не могу ПодключитьсяКФайлу: "+Файл);
	КонецЕсли;
КонецПроцедуры
 

  

1&&2&&3
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #45 - 27. Ноября 2013 :: 07:30
Печать  
Z1 писал(а) 27. Ноября 2013 :: 07:04:
Как с помощью BinData.УстБлокировку(i,1,0)  так и с помощью стандартного Док.Блокировка() можно установить Блокировку

да, Док.Блокировка() делает ровным счетом тоже самое, но предварительно для каждого объекта лезет в БД за row_id
  

1&&2&&3
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #46 - 27. Ноября 2013 :: 07:42
Печать  
trad писал(а) 27. Ноября 2013 :: 07:30:
Z1 писал(а) 27. Ноября 2013 :: 07:04:
Как с помощью BinData.УстБлокировку(i,1,0)  так и с помощью стандартного Док.Блокировка() можно установить Блокировку

да, Док.Блокировка() делает ровным счетом тоже самое, но предварительно для каждого объекта лезет в БД за row_id

не получается
в одной сессии открыт документ

в другой сессии запускаю
Код
Выбрать все
Процедура снятьСтандарт()

	Док1 = СоздатьОбъект("Документ");
	Фл1 = Док1.НайтиДокумент(Док_Х00);
	Если Фл1 <= 0 Тогда
		Сообщить("Не нашли документ");
		return;
	КонецЕсли;

	Фл1 = Док1.Блокировка(0);
	Сообщить("после снятия блокировки Фл1 = " + Фл1);
	ОткрытьФорму(Док_Х00);
КонецПроцедуры
 


1с выдает сообщение
Цитата:
после снятия блокировки Фл1 = 1

но этот документ не открывается.

Если пытаться выполнить метод снятьБлокировка то 1с  происходит ошибка
Цитата:
BinData.СнятьБлокировку(Зн_ИндСтроки,1);
{D:\1CPP_TEST\TEST_199_РАЗБЛОКИРОВАТЬДОКУМЕНТ_1С.ERT(149)}: Ошибка снятия блокировки.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #47 - 27. Ноября 2013 :: 07:45
Печать  
ps к 46
Если пытаться выполнить метод снятьБлокировка то 1с  происходит ошибка
Цитата:
BinData.СнятьБлокировку(Зн_ИндСтроки,1);
{D:\1CPP_TEST\TEST_199_РАЗБЛОКИРОВАТЬДОКУМЕНТ_1С.ERT(149)}: Ошибка снятия блокировки.



Хотя по идее метод должен снять блокировку с этого байта файла
или я чего-то не так понимаю
или ошибка в методе BinData.СнятьБлокировку ?
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #48 - 27. Ноября 2013 :: 08:22
Печать  
не так понимаешь.
речь не идет о снятии блокировки с документа, заблокированной другой сессией.
речь идет про выявлении заблокированных документов.
  

1&&2&&3
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #49 - 27. Ноября 2013 :: 08:27
Печать  
BinData.СнятьБлокировку снимает блокировку успешно поставленную на том же хендле, т.е. именно этим экземпляром BinData
  

1&&2&&3
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #50 - 27. Ноября 2013 :: 08:27
Печать  
trad писал(а) 27. Ноября 2013 :: 08:22:
не так понимаешь.
речь не идет о снятии блокировки с документа, заблокированной другой сессией.
речь идет про выявлении заблокированных документов.

так это я понял.

как бы другой вопрос.
можно или нет снять блокировку  выставленную другой сесией ?
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #51 - 27. Ноября 2013 :: 08:28
Печать  
даже два экземпляра BinData в рамках одного процесса не смогут снимать блокировки друг у друга
  

1&&2&&3
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #52 - 27. Ноября 2013 :: 08:29
Печать  
Z1 писал(а) 27. Ноября 2013 :: 08:27:
можно или нет снять блокировку  выставленную другой сесией ?

нет (этими средствами)
  

1&&2&&3
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #53 - 27. Ноября 2013 :: 08:34
Печать  
trad писал(а) 27. Ноября 2013 :: 08:29:
Z1 писал(а) 27. Ноября 2013 :: 08:27:
можно или нет снять блокировку  выставленную другой сесией ?

нет (этими средствами)

а какими средствами можно ???
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #54 - 27. Ноября 2013 :: 09:08
Печать  
мне неизвестно
  

1&&2&&3
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #55 - 27. Ноября 2013 :: 09:27
Печать  
trad писал(а) 27. Ноября 2013 :: 09:08:
мне неизвестно

ясно.
зато теперь чуть лучше понимаю эти файловые блокировки.
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #56 - 27. Ноября 2013 :: 09:51
Печать  
Z1 писал(а) 27. Ноября 2013 :: 08:27:
можно или нет снять блокировку  выставленную другой сесией ?


Я так понимаю, для этого нужно закрыть хэндл этого файла у процесса, который эту блокировку наложил.

Т.е. средства есть (ибо существуют файл анлокеры), но они а) требуют админских прав и б) могут привести к печальным последствиям (сходу - неизвестно, надо или эксперементировать, или знать в точности, как действует процесс, которому закрыли хэндл)
« Последняя редакция: 28. Ноября 2013 :: 02:21 - Satans Claws »  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #57 - 27. Ноября 2013 :: 09:55
Печать  
Цитата:
Т.е. средства есть (ибо существуют файл анлокеры), но они а) требуют админских прав и б) могут привести к печальным последствиям (сходу - неизвестно, надо или эксперементировать, или знать в точности, как действует процесс, которому закрыли хэндл)

как бы более того может появляется (остается ) хэндл уже несуществующего процесса.
И как бы после этого не имеем доступа к документу
« Последняя редакция: 27. Ноября 2013 :: 11:47 - Z1 »  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #58 - 27. Ноября 2013 :: 11:31
Печать  
что то вы как то цитируете криво Улыбка

получается, что
trad писал(а) Сегодня :: 12:22:
можно или нет ...

хотя я этого не писал
  

1&&2&&3
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Может быть кто сталкивался с ошибкой записи нового документа?( sql версия )
Ответ #59 - 28. Ноября 2013 :: 02:32
Печать  
исправил квотинг
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 
ОтправитьПечать