Skip to Content
0
Former Member
Nov 20, 2014 at 02:39 PM

sp_adduser fails to replicate into 15.7 ASE

140 Views

Hi All,

I have a setup which has a MSA replication from a 15.0.3 ASE server to a 15.7 SP 100 ASE server.When we add a user in 15.0.3 ASE server, it gets replicated (replicate system procs enabled in rep def) but fails at the replicate end with the below message ...

  1. E. 2014/11/19 08:31:10. ERROR #1028 DSI EXEC(107(1) SYBCRDUAT.counterpartyinfo) - dsiqmint.c(4400)

Message from server: Message: 17260, State 1, Severity 16 -- 'Can't run sp_adduser from within a transaction.'.

and the DSI goes down. We thought it was because of rep server executing it as a tran, so we enabled 'ddl in tran' option for the target db and tried. But it failed with the same error again. Looking closer we found that the sp_adduser is changed in 15.7 like below ...

*********************************************

exec @retstat = sp_ha_check_certified 'sp_adduser', @HA_CERTIFIED

if (@retstat != 0)

return (1)

/*

** Do not allow this system procedure to be run from within a transaction

** to avoid creating a multi-database transaction where the 'master'

** database is not the co-ordinating database.

*/

if @@trancount > 0

begin

/*

** 17260, "Can't run %1! from within a transaction."

*/

raiserror 17260, "sp_adduser"

return (1)

end

else

begin

set chained off

end

set transaction isolation level 1


Now, why did they do that? so, how do we resolve it? Can someone explain?


TIA