Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
Добрый день. Запустил теневой сервер. SQL запрос на теневом сервере отрабатывается нормально. При Повторном запуске этого же запроса выдается ошибка: Error: [SQLCODE: <-400>:<Произошла фатальная ошибка >] [Cache Error: <<NOLINE>Main+17^%SYS.DBSRV>] [Location: <ServerLoop>] Если очистить кешированные запросы то ошибка пропадает. Постоянно чистить запросы - не решение. Как решить данную проблему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 10:31 |
|
||
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
derly, это известная фича в Cache v.2007.1-2010.1. В документации есть чёткий рецепт по её обходу. Ищите строку "Using the Shadow for Queries". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 10:43 |
|
||
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
Приведу выдержку из док-и к Cache 2010.1, т.к. здесь изложено наиболее полно: Док-я к Cache 2010.1Versions of Caché prior to release 2007.1 turned off journaling for any changes to the cached query definition global (^mcq); however, this version does journal updates to this global. As a result, if you plan to execute SQL queries on the destination shadow you must segregate updates of the ^mcq global on the source from the activity on the destination. This prevents logical corruption of the ^mcq global on the shadow. You can do this easily with global and routine mapping. For each namespace on the source from which you run dynamic queries, do the following: Create a new database on the source to isolate the source cached queries. Add global mapping for the ^mcq global in the source namespace to the new database. Add routine mapping for all versions of the cached query routines (the default prefix is CacheSql) in the source namespace to the new database. You can then exclude the new database from any mapping to the shadow, therefore preventing any updates to the^mcq global or the CacheSql routines on the source from being transferred to the shadow. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 10:49 |
|
||
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
Не все понятно на английском языке. Можно по пункт на русском? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 13:02 |
|
||
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
Использование СТЕНЬ для обработки запросовЕсли вы выполняете SQL-запросы на СТЕНЬ, Caché использует глобал ^mcq. Если параллельно запросы обрабатываются на СБД, ^mcq будет передаваться на СТЕНЬ и, соответственно, «замусориваться» на СТЕНЬ. Поэтому вам придется отделить обновления ^mcq, порождаемые СБД, от СТЕНЬ. Это легко осуществимо с помощью механизма отображения глобалов и программ. Для каждой области на СБД выполните следующие действия: 1.Создайте новую БД на СБД (пусть она называется mcqdb). 2.Добавьте отображение глобала ^mcq из вашей области в mcqdb. 3.Добавьте отображение программ для всех версий кэшированных запросов (по умолчанию - CacheSql*) из вашей области в mcqdb. 4.В будущем, при редактировании настроек теневого сервера избегайтие включения mcqdb в список БД, копируемых на теневой сервер. Выполненные настройки позволят избавиться от передачи изменений глобала ^mcq или программ – скомпилированных запросов на СТЕНЬ. Derly , не хочу впадать в менторский тон, но в общем-то док-я по Cache написана на базовом техническом английском, понимание которого, как мне кажется, вам по-любому пригодится, даже если уйдёте в сторону от Cache. Посмотрите, какие темы популярны у формчан: "Как вернуть английский?" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 13:37 |
|
||
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
А вообще мне кажется сомнительной идея что-то такое запускать на теневом сервера. Там на уровне блоков или на уровне записей идет передача? если на уровне блоков, то так целостность разрушить недолго. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 14:28 |
|
||
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
Теневой - это репликация по журналу (передает демон журнала). А репликация блоков - это зеркало (передает демон записи блоков). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 14:40 |
|
||
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
derlyДобрый день. Запустил теневой сервер. SQL запрос на теневом сервере отрабатывается нормально. При Повторном запуске этого же запроса выдается ошибка: Error: [SQLCODE: <-400>:<Произошла фатальная ошибка >] [Cache Error: <<NOLINE>Main+17^%SYS.DBSRV>] [Location: <ServerLoop>] Если очистить кешированные запросы то ошибка пропадает. Постоянно чистить запросы - не решение. Как решить данную проблему? Чисто теоретически если - то надо как-то отключить репликацию временных рутин (генерированных для SQL) на теневой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 14:42 |
|
||
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
В общем-то, про версии 2007.1-2010.1 всё давно известно, стоит ли теоретизировать? Что касается 2010.2, там ситуация несколько иная: - больше нет ^mcq, теперь ^%sqlcq - больше нет программ CacheSql*, теперь %sqlcq.pSYS.* - всё это хозяйство отображено в специальную ("скрытую") БД cache. Т.е. проблемы возможной порчи SQL-запросов на СТЕНЬ больше не существует. Тем не менее, раздел документации про "тень", который был приведён выше, пока сохранён, как видно, документаторы немного отстают :)ну яТеневой - это репликация по журналу (передает демон журнала). А репликация блоков - это зеркало (передает демон записи блоков). Это не совсем так: 1) и в тени, и в зеркале передачей занимаются специальные демоны, а не демоны общего назначения 2) оба механизма основаны на передаче блоков журнала. В случае mirroring см.:Caché Mirroring ConceptsAll mirrored databases on the primary failover member are journaled, regardless of any system configuration or user code that may attempt to bypass journaling for those databases. ... Mirroring uses the journal write cycle on the primary failover member to synchronize data across the mirror. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 15:25 |
|
||
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
Я все-таки не понял, что-то на базе, которая является тенью - это совсем полный капец, или терпимо? Т.е. понятно, что с точки зрения данных будет полная чушь, но хотя бы блочная целостность не нарушится от этого? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 16:09 |
|
||
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
... что-то изменять на базе ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 16:10 |
|
||
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
Блочная - не нарушится. SQL-запросы на "тени" запускать можно (если они без побочных эффектов :). Когда-то даже попадались рекомендации типа "убирайте тяжёлую аналитику на теневой сервер". Но организовать это не так-то просто... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 16:24 |
|
||
|
Ошибка Теневого копирования сервера(shadow)
|
|||
|---|---|---|---|
|
#18+
ну яderlyДобрый день. Запустил теневой сервер. SQL запрос на теневом сервере отрабатывается нормально. При Повторном запуске этого же запроса выдается ошибка: Error: [SQLCODE: <-400>:<Произошла фатальная ошибка >] [Cache Error: <<NOLINE>Main+17^%SYS.DBSRV>] [Location: <ServerLoop>] Если очистить кешированные запросы то ошибка пропадает. Постоянно чистить запросы - не решение. Как решить данную проблему? Чисто теоретически если - то надо как-то отключить репликацию временных рутин (генерированных для SQL) на теневой. А как это можно реализовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2011, 17:21 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=37128372&tid=1557806]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
265ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 550ms |

| 0 / 0 |
