Symmetricdsサーバがpostgresql 9.4で設定され、クライアントノードがsqlite3で設定されています。私は最近、サーバー側でテーブルを変更して、テーブルの変更のsymadmin send-schema --engine <server> --node <node> <table>
Symmetricdsがデフォルト値カラムの同期に失敗する
一つはので、日付フィールドupdate_date date DEFAULT ('now'::text)::date
上のデフォルト値を追加したコマンドを使用して、クライアントにスキーマを送信する必要がありました変更が適用され、対称ログに私は今、サーバー側で次のエラーメッセージを見ています:sqlite3のは、デフォルト値として'now'::text)::date"
をサポートしていないため、
ERROR [<server>] [AcknowledgeService] [qtp1874154700-1322] The outgoing batch <node>-41837 failed. ERROR: invalid input syntax for type date: "'now'::text)::date"
は、このエラーが現れていますか?そのような場合、どのように変更を伝播できますか?
OR
update_date
フィールドのデフォルト値として'now'::text)::date"
を認識していないことSymmetricDSは問題ですか?
このエラーが原因で、クライアントとサーバー間の同期がすべて停止している可能性があります。
何か手がかりがあります。
ありがとう@BorisPavlovićしかし、あなたの提案を完全に理解していませんでした。だから、私は 'sym_outgoing_batch'から特定のエントリを削除する必要があります...どのようにリンクを削除することができますテーブルのコマンドを変更します。最後にスキーマの代わりに、生のSQL ddlを代わりに送信することを提案していますか? – jazaman
alter table式を保持しているsym_data行と失敗した送信バッチをリンクするsym_data_eventの行を削除します –