Browse Prior Art Database

Method to determine whether duplicate records exist when the entire space of records cannot be buffered.

IP.com Disclosure Number: IPCOM000014777D
Original Publication Date: 2002-May-21
Included in the Prior Art Database: 2003-Jun-20
Document File: 1 page(s) / 42K

Publishing Venue

IBM

Abstract

Disclosed is an algorithm which determines whether there are duplicates in an array of records, where the array of records is so large that it cannot be contained in virtual memory. In z/OS* the PFTE data structure represents the attributes of a real storage frame and contains data that uniquely identifies the page that the frame is currently backing, if the frame is in use. It is a bug when two such PFTEs indicate that the frames they represent are backing the same page. RSMDATA* is a function of IPCS*, a dump analysis tool, which provides diagnostic information about real storage in a storage dump. Part of the function of RSMDATA is to determine whether there is an error with the PFTEs. In prior versions of the operating system, RSMDATA determines whether two frames are backing the same page by first quicksorting the PFTEs using a key composed of attributes of the virtual storage that the frame backs (e.g. the virtual storage address, the address space of the virtual storage, etc.). It then sequentially scans through the array of PFTEs, searching for two (or more) adjacent PFTEs that indicate their frames are backing the same page. The problem with this algorithm in a system with a very large amount of real storage is that the PFTEs can no longer be contained in a single buffer, so quicksort is no longer an option. Below is an algorithm that will catch duplicate records in an array such as the PFTE array, when the set of records is too large to be buffered.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 53% of the total text.

Page 1 of 1

  Method to determine whether duplicate records exist when the entire space of records cannot be buffered.

         Disclosed is an algorithm which determines whether there are duplicates in an array of records, where the array of records is so large that it cannot be contained in virtual memory. In z/OS* the PFTE data structure represents the attributes of a real storage frame and contains data that uniquely identifies the page that the frame is currently backing, if the frame is in use. It is a bug when two such PFTEs indicate that the frames they represent are backing the same page. RSMDATA* is a function of IPCS*, a dump analysis tool, which provides diagnostic information about real storage in a storage dump. Part of the function of RSMDATA is to determine whether there is an error with the PFTEs. In prior versions of the operating system, RSMDATA determines whether two frames are backing the same page by first quicksorting the PFTEs using a key composed of attributes of the virtual storage that the frame backs (e.g. the virtual storage address, the address space of the virtual storage, etc.). It then sequentially scans through the array of PFTEs, searching for two (or more) adjacent PFTEs that indicate their frames are backing the same page. The problem with this algorithm in a system with a very large amount of real storage is that the PFTEs can no longer be contained in a single buffer, so quicksort is no longer an option. Below is an algorithm that will catch duplicate records in an array such as the PFTE array, when the set of records is too large to be buffered.

(1) In...