Why does my database have a table named inv_hw_activetcpudpports _inprogress?
This information was gleaned by capturing a database trace while executing dcplit.exe to "un-split" or "un-normalize" the inv_aex_hw_activetcpudpports data class. Note that dcsplit.exe is used with the /u switch to un-normalize this table when Inventory Solution Hotfix 1 is installed. This is done for performance reasons.
When the inv_aex_hw_activetcpudpports table is normalized, it is split into two tables, cmn_hw_activetcpudpports_common and inv_aex_hw_activetcpudpports_spt, and is referenced by a view of the same original name inv_aex_hw_activetcpudpports.
Dcsplit performs the following to un-normalize the table:
1. Copy rows from the inv_aex_hw_activetcpudpports view into a temporary table #tmp_inv_aex_hw_activetcpudsports
2. If there is a inv_hw_activetcpudpports _inprogress table, drop it
3. Copy rows from the #tmp_inv_aex_hw_activetcpudsports table into a new inv_aex_hw_activetcpudpports_inprogress table
4. Drop the table #tmp_inv_aex_hw_activetcpudsports
5. Drop the view inv_aex_hw_activetcpudpports
6. Drop the table inv_aex_hw_activetcpudpports_spt
7. Rename the inv_aex_hw_activetcpudpports_inprogress table to inv_aex_hw_activetcpudpports
So if dcsplit is interrupted after step 3 but before step 5, the inv_aex_hw_activetcpudpports_inprogess will have been created, but the inv_aex_hw_activetcpudpports data class will still exist in the normalized state.
Note also, that the cmn_hw_activetcpudpports_common table will still exist after the "un-split" as it is not dropped during the dcsplit process.