Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Error replication / 8 сообщений из 8, страница 1 из 1
25.05.2010, 11:25
    #36646966
maksim78
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error replication
Здравствуйте!

Начинаю осваивать Sybase, и тут же наткнулся на проблему. Уже несколько дней бьюсь!

Настроил репликацию на базе, работает отлично таблица реплицируется. Хочу что бы, ошибки репликации писались в таблицу.

создал процедуру:

CREATE PROCEDURE sp_RepError (IN in_error LONG VARCHAR)
BEGIN
INSERT INTO RepError (error_msg) VALUES (in_error);
END;

Таблицу:

CREATE TABLE RepError (
pkey BIGINT DEFAULT AUTOINCREMENT PRIMARY KEY,
time_of_error TIMESTAMP DEFAULT CURRENT TIMESTAMP,
rem_user CHAR(128) DEFAULT CURRENT REMOTE USER,
error_msg LONG VARCHAR
);

Настроил options:

SET OPTION public.REPLICATION_ERROR = 'sp_RepError';

Ничего не работает!!!!

p.s. Почему то значение CURRENT REMOTE USER = NULL Это так и должно?
...
Рейтинг: 0 / 0
25.05.2010, 12:14
    #36647153
Yurk0
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error replication
как вариант попробуй:
Код: plaintext
SET OPTION public.REPLICATION_ERROR = 'dba.sp_RepError';
...
Рейтинг: 0 / 0
25.05.2010, 12:19
    #36647173
maksim78
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error replication
Пробовал, Меня настораживает CURRENT REMOTE USER = NULL
...
Рейтинг: 0 / 0
25.05.2010, 12:52
    #36647324
Yurk0
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error replication
ну вот такой код у меня вроде работает..
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
CREATE TABLE info.replication_audit (
		id INTEGER DEFAULT AUTOINCREMENT,
		pub CHAR( 30 ) DEFAULT CURRENT PUBLISHER,
		remoteuser CHAR( 30 ),
		errormsg LONG VARCHAR,
		timestamp DATETIME DEFAULT CURRENT TIMESTAMP,
		PRIMARY KEY (id,pub));
CREATE PROCEDURE info.sp_LogReplicationError(IN error_text LONG VARCHAR)
	BEGIN
		DECLARE current_remote_user CHAR( 255 );
		SET current_remote_user = CURRENT REMOTE USER;
		// Регистрация ошибки
		INSERT INTO info.replication_audit( remoteuser, errormsg) VALUES( current_remote_user, error_text);
		COMMIT WORK;
	END;
SET OPTION PUBLIC.Replication_error = 'info.sp_LogReplicationError';
GRANT EXECUTE ON "info"."sp_LogReplicationError" TO "PUBLIC";
...
Рейтинг: 0 / 0
25.05.2010, 12:57
    #36647342
pand
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error replication
The CURRENT REMOTE USER special constant holds the user ID of the remote user sending the message. This can be used in RESOLVE UPDATE triggers that place reports of conflicts into a table, to identify the user producing a conflict.

это из мануала. Не берусь утверждать но может эта переменная доступна только в триггерах для разрешения конфликта ?
...
Рейтинг: 0 / 0
25.05.2010, 13:24
    #36647429
maksim78
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error replication
Не пишет.


Вот так я запускаю агента
"C:\Program Files\SQL Anywhere 10\win32\dbremote.exe" -c "uid=dba;pwd=sql;eng=master"


Это ошибка в мониторе агента. Которая должна писаться.
I. 2010-05-25 13:22:29. sopen "\\***\Exchange\Exchange.2" failure 67: No such file or directory
I. 2010-05-25 13:22:29. sopen "\\***\Exchange\Exchange.3" failure 67: No such file or directory
I. 2010-05-25 13:22:29. sopen "\\***\Exchange\Exchange.4" failure 67: No such file or directory
I. 2010-05-25 13:22:29. sopen "\\***\Exchange\Exchange.5" failure 67: No such file or directory
E. 2010-05-25 13:22:29. Error sending message
I. 2010-05-25 13:22:29. Resend requests are being queued
I. 2010-05-25 13:22:29. Hovering at end of active log
...
Рейтинг: 0 / 0
25.05.2010, 14:33
    #36647691
Yurk0
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error replication
maksim78Не пишет.


Вот так я запускаю агента
"C:\Program Files\SQL Anywhere 10\win32\dbremote.exe" -c "uid=dba;pwd=sql;eng=master"


Это ошибка в мониторе агента. Которая должна писаться.
I. 2010-05-25 13:22:29. sopen "\\***\Exchange\Exchange.2" failure 67: No such file or directory
I. 2010-05-25 13:22:29. sopen "\\***\Exchange\Exchange.3" failure 67: No such file or directory
I. 2010-05-25 13:22:29. sopen "\\***\Exchange\Exchange.4" failure 67: No such file or directory
I. 2010-05-25 13:22:29. sopen "\\***\Exchange\Exchange.5" failure 67: No such file or directory
E. 2010-05-25 13:22:29. Error sending message
I. 2010-05-25 13:22:29. Resend requests are being queued
I. 2010-05-25 13:22:29. Hovering at end of active log

REPLICATION_ERROR option [replication]

For SQL Remote, allows you to specify a stored procedure to be called by the Message Agent when a SQL error occurs.
...
Рейтинг: 0 / 0
25.05.2010, 15:13
    #36647832
maksim78
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error replication
Понял, спасибо.

А есть возможность записывать эти ошибки или информировать по почте.
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Error replication / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]