Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
транзакции
|
|||
|---|---|---|---|
|
#18+
как записать что либо в глобал внутри транзакции так, что бы при откате запись не откатилась? s $ZT="err" TSTART ошибочное выражение if ошибка TROLLBACK err s ^Errors($H)=$ZE вот такая конструкция ломается. происходит откат транзации и запись в ^Errors пропадает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2006, 15:37 |
|
||
|
транзакции
|
|||
|---|---|---|---|
|
#18+
Можно отключить журналирование для выбранной глобали, можно отключить временно журналирование для процесса. http://dimas.ru/cvar/DisableJournalling ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2006, 16:09 |
|
||
|
транзакции
|
|||
|---|---|---|---|
|
#18+
Можно использовать дочерний процесс для записи данных в глобаль. Изменения в основном процессе откатятся, а в дочернем - нет ;;основной процесс ... j someFunc^routine(data) ... ;;дочерний someFunc(data) s ^glo(...)=data q ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2006, 16:40 |
|
||
|
транзакции
|
|||
|---|---|---|---|
|
#18+
tetraМожно использовать дочерний процесс для записи данных в глобаль. Изменения в основном процессе откатятся, а в дочернем - нет ;;основной процесс ... j someFunc^routine(data) ... ;;дочерний someFunc(data) s ^glo(...)=data q TSTART s ^t=1 TSTART s ^i=1 TCOMMIT TROLLBACK вы это имели ввиду? если так то не работает, после выполнения оба глобала пусты ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2006, 18:20 |
|
||
|
транзакции
|
|||
|---|---|---|---|
|
#18+
нет, не так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2006, 18:39 |
|
||
|
транзакции
|
|||
|---|---|---|---|
|
#18+
а без JOB никак нельзя? почему через JOB? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2006, 19:52 |
|
||
|
транзакции
|
|||
|---|---|---|---|
|
#18+
ну яМожно отключить журналирование для выбранной глобали, можно отключить временно журналирование для процесса. http://dimas.ru/cvar/DisableJournalling я так понял ^%NOJRN работает полностью с журналом и в документации ничего больше не нашёл по ней а с old=$$SetTransactionMode^%apiOBJ(0) вообще ничего не понятно можно поподробнее? да, кстати, в версии 5.0 можно было отключить журналирование для глобалов начинающихся с "Z" а в версии 5.1 не видно этой фишки кто нибудь что нибудь может сказать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2006, 19:55 |
|
||
|
транзакции
|
|||
|---|---|---|---|
|
#18+
просто, почему хотелось бы без job - intersystems предлагают бесплано однопользовательскую версию, понятно что система с одним пользователем...но каждый job увеличивает нагрузку на лицензию (если я правильно понимаю) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2006, 19:57 |
|
||
|
транзакции
|
|||
|---|---|---|---|
|
#18+
u78а с old=$$SetTransactionMode^%apiOBJ(0) вообще ничего не понятно можно поподробнее? да, кстати, в версии 5.0 можно было отключить журналирование для глобалов начинающихся с "Z" а в версии 5.1 не видно этой фишки кто нибудь что нибудь может сказать? By default %Save automatically manages transactions. You can enable and disable automatic transaction support using the $$SetTransactionMode^%apiOBJ() routine. See %Save method documentation(http://127.0.0.1:1972/apps/documatic/_CSP.Documatic.cls?PAGE=CLASS&LIBRARY=%25CACHELIB&CLASSNAME=%25Library.Persistent) In 5.1 journaling is a database level selection so if the database is marked for journaling, all globals, newly created and otherwise, are journaled. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2006, 20:49 |
|
||
|
транзакции
|
|||
|---|---|---|---|
|
#18+
u78просто, почему хотелось бы без job - intersystems предлагают бесплано однопользовательскую версию, понятно что система с одним пользователем...но каждый job увеличивает нагрузку на лицензию (если я правильно понимаю) Согласно лицензионному договору в Cache' 1 пользователь может иметь 12 подключений. Фактически сейчас 1 пользователь может иметь 25 соединений с сервером. Смотрите метод $System.License.MaxConnections() Соответственно, Вам нужно сделать так, чтобы Ваш Job работал под тем же пользователем, что и программа. Почитайте статью в документации Caché License Management . Обратите внимание на метод $System.License.Login(UserIdentifier). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2006, 09:22 |
|
||
|
транзакции
|
|||
|---|---|---|---|
|
#18+
Отключение транзакций, на мой взгляд, неприемлемо вообще. Вариант с job применяю сам для ведения журнала изменений. Сама по себе команда Job не влияет на использование лицензии - только увеличивает кол-во процессов, но не лицензионных единиц. Почему Job - транзакции, отрабатываемые в родительском (основном) процессе, никак не влияют на ход сохранения данных в дочернем процессе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2006, 09:23 |
|
||
|
транзакции
|
|||
|---|---|---|---|
|
#18+
Локальные переменные не откатываются s $ZT="err" TSTART ... TC q err s tErr=$ZE TROLLBACK s ^Errors($H)=tErr ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2006, 11:10 |
|
||
|
транзакции
|
|||
|---|---|---|---|
|
#18+
И не должны. Транзакции применимы ТОЛЬКО к глобальным переменным ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2006, 12:03 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=33671655&tid=1559587]: |
0ms |
get settings: |
6ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
21ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 309ms |

| 0 / 0 |
