The error message is similar to the following:
Jan 26 11:27:59.300 2006: Error: 29204, Line: 864, File: 'generic/dsi/fstrmap.c' - Cannot find a matching function string for function 'stocks.rs_insert' and function class 'rs_sqlserver_function_class'.
This error occurs when Replication Server cannot find a function string to match a function. The DSI thread is suspended.
To correct the problem:
Query the RSSD at the primary site of the function string to determine if the function string exists there. Use this query for strings with replication definition scope:
select name from rs_funcstrings, rs_functions, rs_classes, rs_objects where rs_funcstrings.classid = rs_classes.classid and rs_funcstrings.funcid = rs_functions.funcid and classname = function_class_name and classtype = 'F' and rs_functions.objid = rs_objects.objid and rs_objects.objname = replication_definition and objtype = 'R' and funcname = function_name
If the function string does not exist at the primary site, continue with step 2.
If the function string does exist at the primary site, go to step 3.
If the function string does not exist at the primary site, create it there. If you omit the output clause from the string, Replication Server generates the default function string.
If the function string does exist at the primary site, it hasn’t been replicated to the Replication Server at the replicate site. Verify that the RSSD at the primary site is being replicated to the replicate site. Refer to Chapter 1, “Identifying the Problem”, for details. If changes at the primary site are being replicated to the replicate site, then you may need to wait for the function strings to arrive. Then restart the DSI.
For rs_select and rs_select_with_lock, there must be a function string whose input template matches the where clause of the select command. Extend the above query with a join to rs_systext to retrieve the input templates of function strings.
If the DSI receiving the error is communicating with a server using a function-string class other than the rs_sqlserver_function_class, rs_default_function_class, or rs_db2_function_class, you may still need to create the function string mentioned in the preceding paragraph.