There are many customers who have migrated applications from Oracle to DB2.
So the expectations are to match or compare the behavior at many places.
This blog explains one of the different behaviors which affect such wide range of users.
DB2 throws an error SQL20496N if there is an attempt made to re-create package without re-creating its package body.
In Oracle user don't have to worry about re-creating the package body.
Unfortunately, this is the current DB2 limitation and re-creating Package Specification does drop the Package Body.
So the existing package body needs to be recreated prior to invoking any of package objects.
This can be illustrated with below example :
create or replace package test_package
g_global integer := 1;
create or replace package body test_package