Detected Conflict on Sym_Channel

Help
Greg Kay
2012-08-08
2012-09-15
  • Greg Kay
    Greg Kay
    2012-08-08

    Hi, We're trying out SymmetricDS 3.0.10 on WIndows XP with Firebird databases
    running on Linux. I have two nodes 'Main' and 'Office'. 'Office' is pulling
    from 'Main' and pushing to 'Main'. I've setup my Sym_Conflict table with two
    records

    1   Main    Office  default     USE_OLD_DATA    MANUAL  OFF 0   0   08/08/2012 16:41:42 GLK 08/08/2012 16:41:42
    2   Office  Main    default     USE_OLD_DATA    MANUAL  OFF 0   0   08/08/2012 16:41:42 GLK 08/08/2012 16:41:42
    

    I have two records here because I want to catch conflicts in both pulling and
    pushing.

    After starting SymmetricDS on both nodes I get the following error on the
    'Main' node:

    • DataLoaderService - Failed to load batch nab-2 because: Detected conflict while executing UPDATE on SYM_CHANNEL. The primary key data was: {CHANNEL_ID=config}.

    Why am I getting any conflicts at all on the 'config' channel??

    With just one conflict record for pulling everything worked OK.

    Greg

     
  • Greg Kay
    Greg Kay
    2012-08-09

    The problem was actually the way I was setting up the 'Office' node. I used
    'symadmin' with 'sync-triggers' to create the 'Office' triggers. But because I
    hadn't set up 'sym_node' properly 'sync-triggers' was giving the error

    Trigger 858860427 had an unrecognized channel_id of 'config'.  Please check to make sure the channel exists.  Creating trigger on the 'default' channel
    

    I had been igoring this but of course using the 'default' channel for the
    'sym_' tables is bad.

    I wonder if it's a better idea to crash the 'sync-triggers' process if the
    channel_id can't be determined rather than creating a trigger that may give an
    obscure error later on?