Call for SAP to release Watcom C++ / Open Watcom to an Open Source Foundation (Apache Foundation?)

I’m hoping that SAP has the wisdom to relinquish control of the Open Watcom (aka Watcom C++) project to an actual foundation that deals with Open Source projects. Perhaps the Apache Foundation?

If you look at the Open Watcom web page (http://www.openwatcom.org/index.php/Main_Page), the project is dead. If SAP isn’t going to rebuild it into an actual product, then it should let it go.

Share Button

Does anyone have any details on RedHat Linux bug 891857?

Huge page support was disabled with SA CR 728597 due to RH bug.

CR 728597: This problem is related to a possible bug in the transparent huge pages (THP) feature introduced in these operating system versions. RedHat bug 891857 has been created to track this issue. There is a huge difference between a RedHat specific bug, a bug that affects only RedHat Enterprise Linux, and a Linux (Kernel?) bug that affects other distributions. Remember that SuSE Enterprise Linux is fully supported by SAP/Sybase.

I don’t have a support contract with RedHat, so I can’t see what bug 891857 actually is.

UPDATE:

With regard to Sybase IQ bug CR728597 and RedHat bug 891857 involving memory corruption due to Direct I/O and Transparent Huge Memory Pages, I was able to reach the RedHat engineer.  Andrea Arcangeli reported the issue to the Linux kernel mailing list back in 2009.  The issue was never resolved because of the complexity of the fix. https://patchwork.kernel.org/patch/11174 includes both the patch to the kernel branch of the time and the ‘repro’ C example.

Share Button

Where is Sybase Central for IQ?? Get Sybase Central for IQ before it is removed forever more

Sybase
Sybase

SAP/Sybase’s bold move of an Oracle Enterprise Manager clone, aka, Sybase Control Center (SCC) has been, well, not so good in the sense of being usable. It is currently undergoing a complete rewrite so until then, if you want to use Sybase Central in lieu of SCC, you will need to download Sybase IQ 15.2.

When you install it, choose Custom Install

Custom Install

then deselect Sybase IQ Server and select Sybase Central.

Unselect Sybase IQ Server

We can download Sybase IQ 15.2 evaluation software edition using the below links
————————————————————————————
Platform: Windows
Version:15.2

http://download.sybase.com/eval/iq152/iq152_windows.zip

————————————————————————————-
Platform: Linux x86-64
Version:15.2

http://download.sybase.com/eval/iq152/iq152_linux64.tgz
————————————————————————————-
Platform: Linux-Power
Version:15.2

http://download.sybase.com/eval/iq152/iq…nuxP64.tgz
————————————————————————————–

On Windows after installation, you will find Sybase Central in your Start -> All Programs -> Sybase -> Sybase IQ 15.2 -> Sybase Central Java Edition

sybasecentral_windows_menu

Please note that Sybase Central v6.0 will NOT work with IQ.

Share Button

Sybase ASE: A simple way to let a user backup a database using a stored procedure

I wrote this simple method to backup a database using a stored procedure. This allows for a user to restore a database with no knowledge of the dump/load commands. Related to Sybase ASE: A simple way to let a user restore a database using a stored procedure

use sybsystemprocs
go

if exists (select 1 from sybsystemprocs..sysobjects where name = "sp_dump_userdb")
	drop procedure sp_dump_userdb
go

CREATE PROCEDURE dbo.sp_dump_userdb
@dbName varchar(100) IN
AS 
BEGIN
	if (@dbName in ('master', 'tempdb', 'tempdb2', 'tempdb3', 'sybsystemprocs', 'sybsystemdb'))
	begin
		print "sp_load_userdb only works with user databases."
	end 
	else
	if exists (select 1 from master..sysdatabases where name = @dbName)
	begin
		DECLARE @DAYofMonth smallint
		DECLARE @dbNamePath varchar(255)
		DECLARE @out varchar(255)

		select @DAYofMonth = datepart(day, getdate())
		select @dbNamePath = "/backups/user_backups/" + @dbName + "_" + convert(varchar(10), @DAYofMonth) + ".dmp"
		select @out = "Backing up database '" + @dbName + "' to " + @dbNamePath
		print @out

		dump database @dbName to @dbNamePath with init,compression=3

		/*  Remove old dump files (older than 2 weeks) */
		exec xp_cmdshell "find /backups/user_backups -mtime +14 -exec rm {} \;"

		print "Backup complete!"
	end 
	else
	begin
		select "'" + @dbName + "' is an unknown database.  Please verify name."
	end 
END
go
exec sp_dump_userdb jf_test
Backing up database 'jf_test' to /some_dir/jf_test_5.dmp
Backup Server session id is: 95. Use this value when executing the 'sp_volchanged' system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 4.41.1.1: Creating new disk file /some_dir/jf_test_5.dmp.
(1 row affected)
Backup Server: 6.28.1.1: Dumpfile name 'jf_test131560B97B' section number 1 mounted on disk file '/some_dir/jf_test_5.dmp'
Backup Server: 4.188.1.1: Database jf_test: 600 kilobytes (1%) DUMPED.
Backup Server: 4.188.1.1: Database jf_test: 1134 kilobytes (1%) DUMPED.
Backup Server: 4.188.1.1: Database jf_test: 18242 kilobytes (5%) DUMPED.
Backup Server: 4.188.1.1: Database jf_test: 31492 kilobytes (11%) DUMPED.
Backup Server: 4.188.1.1: Database jf_test: 38072 kilobytes (19%) DUMPED.
Backup Server: 4.188.1.1: Database jf_test: 38416 kilobytes (36%) DUMPED.
Backup Server: 4.188.1.1: Database jf_test: 38930 kilobytes (61%) DUMPED.
Backup Server: 4.188.1.1: Database jf_test: 45854 kilobytes (75%) DUMPED.
Backup Server: 4.188.1.1: Database jf_test: 46204 kilobytes (92%) DUMPED.
Backup Server: 3.43.1.1: Dump phase number 1 completed.
Backup Server: 3.43.1.1: Dump phase number 2 completed.
Backup Server: 3.43.1.1: Dump phase number 3 completed.
Backup Server: 4.188.1.1: Database jf_test: 46390 kilobytes (100%) DUMPED.
Backup Server: 3.42.1.1: DUMP is complete (database jf_test).
 xp_cmdshell                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              
 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

(0 rows affected)
Backup complete!
(return status = 0)
Share Button

Sybase ASE: A simple way to let users restore a database using a stored procedure

I wrote this simple method to restore a database using a stored procedure. This allows for a user to restore a database with no knowledge of the dump/load commands. Related: Sybase ASE: A simple way to let users restore a database using a stored procedure

use sybsystemprocs
go

if exists (select 1 from sybsystemprocs..sysobjects where name = "sp_load_userdb")
	drop procedure sp_load_userdb
go

CREATE PROCEDURE dbo.sp_load_userdb
@dbName varchar(100) = NULL, 
@DAYofMonth smallint = NULL
AS 
BEGIN
	if (@dbName is NULL or not exists select 1 from (master..sysdatabases where name = @dbName))
	begin
		print "Please specify a database and day of month to restore from."
		print "sp_load_userdb d1folio1, 15"
	end
	else
	if (@dbName in ('master', 'tempdb', 'tempdb2', 'tempdb3', 'sybsystemprocs', 'sybsystemdb'))
	begin
		print "sp_load_userdb only works with user databases."
	end 
	else
	if (@DAYofMonth is NULL or @DAYofMonth < 1 or @DAYofMonth > 31)
	begin
		DECLARE @cmd varchar(255)

		print "Dump file not found!"
		select @cmd = "find /some_dir/user_backups -name " + @dbName + "_*" + " -type f -exec basename {} \;"
		print @cmd
		exec xp_cmdshell @cmd
	end
	else
	begin
		if (db_name() = "master")
		begin
			DECLARE @dbNamePath varchar(255)

			exec kill_user_connections @dbName
			select @dbNamePath = "/some_dir/user_backups/" + @dbName + "_" + convert(varchar(10), @DAYofMonth) + ".dmp"
			load database @dbName from @dbNamePath
			online database @dbName
		end 
		else
			print "Please run sp_load_userdb from the master database."
	end 
END
go
exec sp_load_userdb jf_test, 5
-----------------------------------------------------------------------
There is no user connections in database jf_test

------------------------------------------------------------------------------------
Please log out if you currently connected to database jf_test
Backup Server session id is: 68. Use this value when executing the 'sp_volchanged' system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 6.28.1.1: Dumpfile name 'jf_test131560B97B' section number 1 mounted on disk file '/somedir/jf_test_5.dmp'

(1 row affected)
Backup Server: 4.188.1.1: Database jf_test: 25480 kilobytes (4%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 53770 kilobytes (10%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 98316 kilobytes (18%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 141328 kilobytes (27%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 184848 kilobytes (35%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 227860 kilobytes (43%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 271380 kilobytes (52%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 314392 kilobytes (60%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 357912 kilobytes (69%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 387100 kilobytes (74%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 430620 kilobytes (83%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 473120 kilobytes (91%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 516640 kilobytes (99%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 518178 kilobytes (100%) LOADED.
Backup Server: 4.188.1.1: Database jf_test: 518186 kilobytes (100%) LOADED.
Backup Server: 3.42.1.1: LOAD is complete (database jf_test).
Caution:  You have set up this database to include space on disk 36 for both data and the transaction log.  This can make recovery impossible if that disk fails.
Started estimating recovery log boundaries for database 'jf_test'.
Database 'jf_test', checkpoint=(224579, 10), first=(224579, 10), last=(224579, 11).
Completed estimating recovery log boundaries for database 'jf_test'.
Started ANALYSIS pass for database 'jf_test'.
Completed ANALYSIS pass for database 'jf_test'.
Started REDO pass for database 'jf_test'. The total number of log records to process is 2.
Completed REDO pass for database 'jf_test'.
Use the ONLINE DATABASE command to bring this database online; ASE will not bring it online automatically.
Started estimating recovery log boundaries for database 'jf_test'.
Database 'jf_test', checkpoint=(224579, 10), first=(224579, 10), last=(224579, 11).
Completed estimating recovery log boundaries for database 'jf_test'.
Started ANALYSIS pass for database 'jf_test'.
Completed ANALYSIS pass for database 'jf_test'.
Recovery of database 'jf_test' will undo incomplete nested top actions.
Database 'jf_test' is now online.
(return status = 0)
exec sp_load_userdb
Please specify a database and day of month to restore from.
sp_load_userdb d1folio1, 15
(return status = 0)
Share Button