|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
chavchipavперед тем как писать здесь, я прочитал документацию, но там не нашел описание поведения как в частности описал я. Плохо искал. Стандартный паттерн для старых приложений: вставка EMPTY_LOB, а потом его изменение через OCI. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2019, 13:38 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
ElicStaxімхо, если он fire , то должен отрабатывать как с update и dbms_lob.getlength>0Ты безнадёжен. есть такое раз о блобах зашло не могу понять как DBMS_LOB узнает что строка заблокирована? мне ето уже не надо, чисто из любопытства ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2019, 14:02 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, понятно, спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2019, 14:04 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
Staxне могу понять как DBMS_LOB узнает что строка заблокирована? мне ето уже не надо, чисто из любопытства А ты попробуй: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31.
SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2019, 17:13 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
Staxне могу понять как DBMS_LOB узнает что строка заблокирована? мне ето уже не надо, чисто из любопытства Локатор по опредeлению да и переводе есть местонахождение. Ты ведь не удивляешься что навигатор в твоем телефоне или машине знает ктo ты и где ты есть. SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2019, 17:20 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
SYStaxне могу понять как DBMS_LOB узнает что строка заблокирована? мне ето уже не надо, чисто из любопытства А ты попробуй: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31.
SY. SY я ето знаю/знал вопрос как он (DBMS_LOB) определяет что value is not locked? .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2019, 18:49 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
Staxкак он (DBMS_LOB) определяет что value is not locked?У тебя сложности c переводом locator на украинский или нужны технические детали, где именно хранится lock строки? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2019, 19:19 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
-2-Staxкак он (DBMS_LOB) определяет что value is not locked?У тебя сложности c переводом locator на украинский или нужны технические детали, где именно хранится lock строки? и то, и то я переводил locator как указатель гугль по другому Код: plaintext 1. 2. 3.
мне больше интересно как (с помощью чего) dbms_lob узнает что запись заблокирована (захвачена) .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 09:29 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
Staxинтересно как (с помощью чего) dbms_lob узнает что запись заблокирована Мнэээ... ему SqlEngine скажет, если оно не так. Как и OCI-клиенту. SY же показал. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 11:34 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
andrey_anonymousStaxинтересно как (с помощью чего) dbms_lob узнает что запись заблокирована Мнэээ... ему SqlEngine скажет, если оно не так. Как и OCI-клиенту. SY же показал. если чесно, то я не понял что показал SY чтоб получить "локатор" блоба кляуза FOR UPDATE не обязательна, поетому и интересно каким механизмом dbms_lob проверяет наличие блокировки .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 11:43 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
Staxчтоб получить "локатор" блоба кляуза FOR UPDATE не обязательна, Если только читать - не обязательна. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 12:00 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
andrey_anonymousStaxчтоб получить "локатор" блоба кляуза FOR UPDATE не обязательна, Если только читать - не обязательна. и писать (dbms_lob.write) тоже, главное чтоб запись было залочена вот етот момент мне и интересен, как dbms_lob.write проверяет ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 12:32 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
Staxкак dbms_lob.write проверяет Берет и пишет. А SQL engine его посылает, как показывал SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 12:46 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
andrey_anonymous, табличка с одной строкой (для упрощения) Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43.
.... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 13:30 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
Stax--откуда знает что уже заблакировали? Проверили блокировку на записи, на которую указывает локатор. Оттуда и знает. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 13:43 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovStax--откуда знает что уже заблакировали? Проверили блокировку на записи, на которую указывает локатор. Оттуда и знает. етого я и не знаю (туплю, на ручнике) как проверяет? какими средствами? ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 13:53 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
Staxкакими средствами?dbms_lob по локатору определяет роуид строки, по роуид номера файла и блока, где лежит строка. Делает дамп блока в трейс, регекспами вытаскивает из трейса заголовок строки, оттуда берет номер позиции в itl, из itl выкусывает флаг lock=1. Или тебе прислать машинные коды oracle.exe на 400 мб? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 14:07 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
-2-, спасибо теперь понятно, ето внутренний (закрытый) механизм оракля на sql, pl/sql етого не добится я пытался с имитировать средствами языка sql .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 14:32 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
Staxимитировать средствами языка sql Ммм? Имитировать - так имитировать. Блокировать строку, можно даже dbms_lock для большей имитационности :). ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 14:36 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
andrey_anonymous, не блокировать, а проверить заблокирована ли skip lock/time, автономка, savepoint, что-то еще теперь я верю, что используется внутренний механизм просто надеялся что проверяется с помощью "sql" еще раз спасибо, мое любопытство удовлетворено ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 14:55 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
Staxпроверить заблокирована ли skip lock/time, автономка, savepoint, что-то еще select for update nowait в автономке не сработал? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 15:23 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
andrey_anonymousStaxпроверить заблокирована ли skip lock/time, автономка, savepoint, что-то еще select for update nowait в автономке не сработал? не сработал .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 15:26 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
andrey_anonymousselect for update nowait в автономке не сработал?Автономка с и не покажет, чья блокировка. Нужно в текущей транзакции выполнить select for update. После этого ни if, ни exception не нужны. Блокировка есть! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 15:29 |
|
Апдейт поля BLOB
|
|||
---|---|---|---|
#18+
-2-andrey_anonymousselect for update nowait в автономке не сработал?Автономка с и не покажет, чья блокировка. Нужно в текущей транзакции выполнить select for update. После этого ни if, ни exception не нужны. Блокировка есть! если блокировки не было, то for update наложит .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 15:32 |
|
|
start [/forum/topic.php?fid=52&msg=39771031&tid=1882808]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
others: | 16ms |
total: | 157ms |
0 / 0 |