|
v8: Разве может содержимое Объект быть не равно содержимому Объект.Ссылка после записи Объекта? | ☑ | ||
---|---|---|---|---|
0
Maxus43
25.10.12
✎
13:45
|
Есть 2 строчки:
Объект.Записать(); Спр = Объект.Ссылка; Всё это делается в транзакции. Содержимое Объект <> Объект.Ссылка, в частности не совпадает содержимое ТЧ справочника. Но запись явная же произошла уже, это всё в одной транзакции. Или это потому что транзакция не зафиксирована, и Объект.Ссылка - старый вариант? Получается что в рамках Одной транзакции рассогласованность данных? |
|||
115
H A D G E H O G s
25.10.12
✎
15:00
|
(111) Это обход на запрет грязного чтения изоляцией Read committed. Чтобы что то показать в списке.
|
|||
116
Робинзон Крузо
25.10.12
✎
15:00
|
Пздц... Вы хоть ЖКК читаете?
Объект1 = Вася.ПолучитьОбъект(); Объект2 = Вася.ПолучитьОбъект(); Объект1<>Объект2 |
|||
117
Reset
25.10.12
✎
15:00
|
(116) И тебе привет :)
|
|||
118
ХочуСказать
25.10.12
✎
15:00
|
(116) мы читали, а ты дятел
|
|||
119
Feanorko
25.10.12
✎
15:01
|
(112) Если "Объект.Ссылка.ТЧ.Количество() = Объект.ТЧ.Количество()" возвращает Ложь, то это из-за грязного чтения? :)
|
|||
120
ХочуСказать
25.10.12
✎
15:02
|
(119) причем тут это?
|
|||
121
5 Элемент
25.10.12
✎
15:02
|
Че за бред они тут изучают
|
|||
122
Reset
25.10.12
✎
15:03
|
(119) Если выражения слева и справа от "=" рассчитываются в разных сеансах, то да ;)
|
|||
123
ХочуСказать
25.10.12
✎
15:03
|
(122) объект может быть не записан справа...
пример не подходит под ситуацию |
|||
124
Feanorko
25.10.12
✎
15:04
|
(120) мне тоже интересно, причем тут грязное чтение.
Читай внимательно (6): "Дело не в типах, а что там внутри в реквизитах и т.д. не совпадает содерживмое таб частей, например в объекте пусто, в объект.Ссылка - что то есть в ТЧ" |
|||
125
Reset
25.10.12
✎
15:05
|
Ну если в контексте темы, то записан
|
|||
126
Feanorko
25.10.12
✎
15:05
|
(122) емнип, речь про одну и ту же сессию
|
|||
127
ХочуСказать
25.10.12
✎
15:06
|
(124) у автора оно и не работает, где то то ли неправильно читает, либо транзакцию откатил
ибо в реале должно быть грязное чтени... т.е. чтение незафиксированных данных |
|||
128
Reset
25.10.12
✎
15:06
|
(126) Ну я так и понял что это сарказм, просто прокапитанил
|
|||
129
acsent
25.10.12
✎
15:06
|
Единственнный варинт, что какой то козел уже покоцал нашу ссылку в другом сеансе
|
|||
130
Feanorko
25.10.12
✎
15:06
|
(127) об том и речь, что не работает, хотя должно :)
|
|||
131
Wern
25.10.12
✎
15:08
|
Ну есть еще вариант что это 8.3, там используются блокировки типа снейпшот. Там как раз такое и должно быть как в (0).
|
|||
132
0xFFFFFF
25.10.12
✎
15:09
|
(0)
Проф разработка 8.2...: Если обращение к данным происходит в рамках транзакции, то оно переадресуется транзакционному кешу. Транзакционный кеш по сути представляет собой ту же последовательную очередь, что и обычный кеш, за исключением того, что все данные, находящиеся в транзакционном кеше, являются валидными (гарантированно актуальными). При считывании данных в транзакционный кеш устанавливается блокировка на данные в базе данных, поэтому они гарантированно не могут быть изменены до окончания транзакции. Транзакционный кеш хранит считанные данные до тех пор, пока они не будут вытеснены более поздними считанными данными или пока не закончится транзакция. По окончании транзакции транзакционный кеш очищается, однако действия, выполняемые при этом, зависят от состояния завершения тран- закции. Если транзакция завершена успешно (Commit), данные всех объектов, содержащиеся в транзакционном кеше, переносятся в обычный кеш, а транзакционный кеш очищается (рис. 4.14). |
|||
133
Feanorko
25.10.12
✎
15:10
|
(132) и теперь для прапорщиков попроще, плз.
|
|||
134
0xFFFFFF
25.10.12
✎
15:11
|
Далее..
Обычный кеш Если при обращении к обычному кешу требуемых данных в нем нет, то выполняется чтение данных объекта из базы данных и сохранение их в кеше. Уникальным идентификатором для кеша в данном случае будет являться ссылка на объект базы данных. Поэтому данные каждого считанного объекта могут существовать в кеше в одном из двух видов: либо все данные объекта, либо представление объекта. Таким образом, если мы обратимся к кешу для получения представления объекта и в кеше есть информация для нашей ссылки, данные будут взяты из кеша (если в кеше весь объект, нужное представление будет получено из данных объекта). Если в кеше нет информации для нашей ссылки, из базы данных в кеш будут считаны только поля, необходимые для формирования представления объекта. |
|||
135
ХочуСказать
25.10.12
✎
15:13
|
(132) я получал данные вне транзакции в другом сеансе
|
|||
136
Starhan
25.10.12
✎
15:17
|
(135) уверен -? О_о это же очень херово
|
|||
137
Starhan
25.10.12
✎
15:17
|
в файловой с другого сеанса все данные в базе старые.
|
|||
138
бомболюк
25.10.12
✎
15:18
|
(132) весь опус про сервер приложения 1С?
|
|||
139
Starhan
25.10.12
✎
15:18
|
(135)а понял всмысле получал старые данные? без блокировки?
|
|||
140
Starhan
25.10.12
✎
15:20
|
так кто нибудь понял какая проблема у ТС? )
|
|||
141
ХочуСказать
25.10.12
✎
15:20
|
(139) новые... без блокировки,
т.е. грязное чтение |
|||
142
Maxus43
25.10.12
✎
15:20
|
ёкарный бабай, в конфе воспроизводится, в файловой. а обработкой не могу повторить
|
|||
143
ХочуСказать
25.10.12
✎
15:20
|
(140) он где то сам себя на...л
|
|||
144
Feanorko
25.10.12
✎
15:21
|
(142) сделай в чистой базе и выложи
|
|||
145
ХочуСказать
25.10.12
✎
15:21
|
(142) проверяй себя, где то накасячил,
может переменную где использовал из реквизита формы, где старая версия объекта храниться или еще что |
|||
146
Maxus43
25.10.12
✎
15:22
|
(144) кабы база ещё обычная была, специализированная... ноу хау местное)
|
|||
147
Maxus43
25.10.12
✎
15:22
|
ща разбираюсь короче
|
|||
148
Feanorko
25.10.12
✎
15:23
|
(146) смоделируй в новой пустой базе, добавь какой-нить объект
|
|||
149
Starhan
25.10.12
✎
15:23
|
(141) как так, это в момент транзакции кто то сможет прочиать и использовать не те данные ?
(145) да скорей всего ТЧ старую записывает или с переменными косяки |
|||
150
ХочуСказать
25.10.12
✎
15:24
|
(149) прогресс...
тебе потребовалось всего 150 постов, что бы это понять |
|||
151
1Страх
25.10.12
✎
15:25
|
запросто:
Процедура ПриЗаписи() ... ЭтотОбъект.Наименование = "взял и поменял"; КонецПроцедуры |
|||
152
Feanorko
25.10.12
✎
15:26
|
(149) разочаровался в 1С? Дальше жить нет смысла? :)
|
|||
153
ХочуСказать
25.10.12
✎
15:28
|
(152) надо уходить в SAP там такого нет
|
|||
154
Maxus43
25.10.12
✎
15:31
|
короче незнаю господа.
В доказательство тока скрин http://imglink.ru/show-image.php?id=397b060dbbc1d45ea1ead9478eacffba ничо не понимать |
|||
155
Feanorko
25.10.12
✎
15:32
|
(154) ты не понимай, ты воспроизведи на девственно чистой базе :)
|
|||
156
Starhan
25.10.12
✎
15:35
|
(152) у меня все впорядке по тестам
|
|||
157
ХочуСказать
25.10.12
✎
15:36
|
(154) демоническое обновление?
|
|||
158
ХочуСказать
25.10.12
✎
15:36
|
версию платформы хоть сообщи
|
|||
159
ХочуСказать
25.10.12
✎
15:37
|
подписок у НСИ точно нет?
|
|||
160
Starhan
25.10.12
✎
15:38
|
(159)да какая разница у меня в файлловой все данные в ссылке меняются после записать()
|
|||
161
ХочуСказать
25.10.12
✎
15:38
|
(160) у него не меняется
|
|||
162
ХочуСказать
25.10.12
✎
15:39
|
(160)
как такое может быть? http://imglink.ru/pictures/25-10-12/6dde757b294290afabb410745aa99b58.jpg |
|||
163
Maxus43
25.10.12
✎
15:41
|
подписок нет, модуль объекта записываемого пустой.
Воспроизводится и на рабочей, и на коппии файловой. Кэш думаю не причем, но очищу щас. ибо мозг кипит |
|||
164
Starhan
25.10.12
✎
15:43
|
знаешь чо модет быть
проблема вотлачдике он показывает данные не те где строка отладки если дальше ф10 нажимать ситуация не меняется? |
|||
165
ХочуСказать
25.10.12
✎
15:44
|
(164) такое может быть только когда исполняемый код не соответствует сохраненному
(163) тогда уж и ТИИ сделай заодно в копии |
|||
166
Starhan
25.10.12
✎
15:45
|
(165) не до 14й платформы включительно был один баг на мисте много раз разбирали
|
|||
167
Starhan
25.10.12
✎
15:45
|
ТС озвучь кстати версию платформы
|
|||
168
Maxus43
25.10.12
✎
15:49
|
(167) проверено на 14.533 и 15.319
|
|||
169
Maxus43
25.10.12
✎
15:50
|
ТИИ запустил полное
|
|||
170
ХочуСказать
25.10.12
✎
15:51
|
(169) иди выпей мерзавчика
|
|||
171
Starhan
25.10.12
✎
15:52
|
(165) я так и не понял как ты новые данные в другом сеансе получил запросм0?
|
|||
172
Starhan
25.10.12
✎
15:53
|
всмысле запросом или по другом?
|
|||
173
ХочуСказать
25.10.12
✎
15:55
|
(172) http://i070.radikal.ru/1210/3d/2b7066d7e8a4.png
после завершение обработки, наименование откатывалось это и называется "грязным чтением" |
|||
174
Starhan
25.10.12
✎
16:07
|
(173) спс, я вкурсе про грязное чтение.
Интересно как ты у себя его обходишь когда код пишешь :) |
|||
175
Aprobator
25.10.12
✎
16:10
|
(0) Объект в данном случае реквизит формы? Небось записываешь в форме, а данные в реквизит формы не возвращаешь.
|
|||
176
ХочуСказать
25.10.12
✎
16:10
|
(174) так же как и 1Сики
если чтение в транзакции то можно юзать ДЛЯ ИЗМЕНЕНИЯ это для автоблокировок... |
|||
177
Maxus43
25.10.12
✎
16:11
|
(175) в данном случае это реквизит обработки
|
|||
178
Aprobator
25.10.12
✎
16:11
|
хотя - он там и так должен обновится вроде бы, но мало ли.
|
|||
179
Starhan
25.10.12
✎
16:12
|
(176) ясно так и думал.
|
|||
180
Aprobator
25.10.12
✎
16:12
|
(177) ну так обнови его после записи то.
|
|||
181
Starhan
25.10.12
✎
16:13
|
надо свои запросы проглядеть. А то наверное на скуль будем перебиратся
|
|||
182
Maxus43
25.10.12
✎
16:14
|
(180) как обновить? думаеш что в реквизите старый остался?
|
|||
183
Aprobator
25.10.12
✎
16:15
|
(182) другой причины не вижу.
|
|||
184
Maxus43
25.10.12
✎
16:16
|
(183) остаётся вопрос как обновить... Объект = Объект?
|
|||
185
Starhan
25.10.12
✎
16:23
|
(184) ну ты же сам скзал что в примере у тебя не поулчается повторить проблему.
Значит где то есть отличия какие то |
|||
186
Aprobator
25.10.12
✎
16:25
|
|
|||
187
1Страх
25.10.12
✎
16:27
|
смотрим (151)
|
|||
188
Feanorko
25.10.12
✎
16:27
|
(187) больше долбишь - толще клюв :)
|
|||
189
Maxus43
25.10.12
✎
16:27
|
вот такая байда же отрабатывает. перезапись чисто ТЧ у объекта.Ссылка
http://imglink.ru/show-image.php?id=d910afb54c3aa5bb7790b7fc05bf6dee овнокод, но работает. Логику понять немогу воще |
|||
190
Maxus43
25.10.12
✎
16:28
|
(187) фиг там с учетом (189) :)
|
|||
191
Maxus43
25.10.12
✎
16:41
|
бугага! снял режим совместимости с 8.1 - глюк ушёл
|
|||
192
ХочуСказать
25.10.12
✎
16:48
|
(191) у мня режим совместимоссти включен
|
|||
193
Feanorko
25.10.12
✎
16:48
|
(191) с чем и поздравляю :)
|
|||
194
Reset
25.10.12
✎
16:49
|
у меня тоже включен
|
|||
195
Maxus43
25.10.12
✎
16:50
|
(192) я не мог воспроизвести это обработкой, так что не показатель... но факит есть факт. щас возвращаю на совместимость и смотрю будет ли опять
|
|||
196
Aprobator
25.10.12
✎
16:54
|
(191) прикол.
|
|||
197
Maxus43
25.10.12
✎
16:57
|
вернул режим назад на 8.1 - ошибка не воспроизводится... такое чувство что он что-то исправил при смене режима
|
|||
198
Aprobator
25.10.12
✎
16:58
|
(197) я всегда говорю, что 1С не программа, а обыкновенная магия )
|
|||
199
Feanorko
25.10.12
✎
16:59
|
кому 200?
|
|||
200
Aprobator
25.10.12
✎
17:00
|
мне
|
|||
201
Aprobator
25.10.12
✎
17:01
|
надо же свин облажался нынче )
|
|||
202
Feanorko
25.10.12
✎
17:03
|
(201) Свин уже не торт
|
|||
203
Aprobator
25.10.12
✎
17:08
|
(202) Сало?
|
|||
204
ХочуСказать
25.10.12
✎
17:10
|
(197) где мое пиво?
|
|||
205
Maxus43
25.10.12
✎
17:16
|
(204) а где ты назвал причину?)
|
|||
206
ХочуСказать
25.10.12
✎
17:21
|
(205) а кто тебе тут доказательство того, что такого не должно быть привел? :)
|
|||
207
Aprobator
25.10.12
✎
17:23
|
кончай клянчить пятница все равно завтра )
|
|||
208
ХочуСказать
25.10.12
✎
17:25
|
(207) не порть настроение в праздник,
завтра кстати, снег в МСК обещали |
|||
209
Mafoni
25.10.12
✎
17:36
|
ТС - разобрался аль нет ?
|
|||
210
Feanorko
25.10.12
✎
17:38
|
(206) ты упорно пытался доказать то, что изначально всем было очевидно :)
|
|||
211
ХочуСказать
25.10.12
✎
17:57
|
(210) кому очевидно? я стал доказывать, после того, как все стали утверждать, что пока транзакция не зафиксировано так и должно быть
|
|||
212
Feanorko
25.10.12
✎
17:58
|
(211) очевидно, что очевидно всем вменяемым :) я так не утверждал, ТС тоже :)
|
|||
213
ХочуСказать
25.10.12
✎
18:01
|
(212) остальные тупо молчали
|
|||
214
Feanorko
25.10.12
✎
18:03
|
(213) правильно молчали, потому что нет смысла доказывать очевидные вещи, а на мнение дятлов обычно покер :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |