docs: public void free()
      {
          if (m_PDatabase != null)
              m_PDatabase.removePTable(this);
          m_PDatabase = null;
  
          if (m_VKeyList != null)
          {
              for (int i = m_VKeyList.size() - 1 ; i >= 0 ;i--) {
                  PKeyArea vKeyArea = (PKeyArea)m_VKeyList.elementAt(i);
                  vKeyArea.free();
              } 
              m_VKeyList.removeAllElements();
          }
          m_VKeyList = null;
          
          if (m_setPTableOwners != null)
          {
              for (ThinPhysicalTableOwner owner : m_setPTableOwners)
              {
                  this.removePTableOwner(owner, false);
              }
          }
      }