If we several large transactions, the sqt_cache fills up for the SQM of the warm standby, spits out a warning, and after a few days, this individual sqt_cache exceeds 180Mbytes and blows away the max memory (200MBytes). RepServer should not be dying because of this. In fact, repserver shouldn’t allocate more memory to this particular sqt_cache than the maximum of 30MBytes.
I see two bugs:
- An individual sqt_cache is allocated more than the maximum sqt_cache configuration
- RepServer crashes by overallocation of memory
I’ve opened a techsupport case with Sybase and will be let everyone know what the bug # will be and when we can expect it fixed.
Warm Standby set up for one database. Five parallel DSIs.
max_sqt_cache size: 30MBytes
dsi_max_sqt_cache_size for warm standby connection 30MBytes
dsi_max_sqt_cache_size for all other DSIs (for RSSD and back to primary of warm standby): 1MByte
I. 2007/02/28 03:33:21. Server using Open Server version Sybase Server-Library/12.5.1/P-EBF12506-12505 ESD #8/DRV.22.214.171.124/SPARC/Solaris 2.8 Native Threads/BUILD1251-041/OPT/Sun Apr 10 21:02:15 2005
I. 2007/02/28 03:33:21. Server using Open Client version Sybase Client-Library/12.5.1/P-EBF12505 ESD #8/DRV.126.96.36.199/SPARC/Solaris 2.8 Native Threads/BUILD1251-041/OPT/Sun Apr 10 21:00:10 2005
W. 2007/02/28 12:28:39. WARNING #24057 DSI EXEC(105(1) sun_ase1.my_db) – t/sqtint.c(6219)_sqt_remove_largest_tran(102:1 sun_ase1.my_db): No candidate found for removal. Memory limit will be exceeded by SQM/TI thread.….T. 2007/03/03 23:40:58. (34): Additional allocation of 8176 bytes to the currently allocated memory of 209711456 bytes would exceed the memory_limit of 209715200 specified in the configuration.F. 2007/03/03 23:40:58. FATAL ERROR #7035 REP AGENT(sun_ase1.my_db) – /packapp.c(79)Additional allocation would exceed the memory_limit of ‘209715200’ specified in the configuration.T. 2007/03/03 23:40:58. (34): Exiting due to a fatal error