-
公开(公告)号:US11573713B1
公开(公告)日:2023-02-07
申请号:US17516833
申请日:2021-11-02
Applicant: salesforce.com, inc.
Inventor: Punit B. Shah , Rui Zhang , Rama K. Korlapati , Prashasthi Prabhakar , Dominique Jeremy Evans
IPC: G06F3/06
Abstract: Methods, computer readable media, and devices for identifying and preventing invalid memory access. A method may include defining a dynamic scope for an operation, receiving a request to allocate a portion of the range of shared memory, allocating a monotonically increasing portion of the range of shared memory such that a subsequent request to allocate memory is allocated a different portion of the range of shared memory, receiving a request to deallocate the allocated portion of the range of shared memory, deallocating the allocated portion of the range of shared memory by protecting the deallocated portion of the range of shared memory from any subsequent access, and in response to an access of the protected deallocated portion of the range of shared memory by one of the one or more threads or processes of the operation, trapping and terminating the one thread or process.
-
公开(公告)号:US11347713B2
公开(公告)日:2022-05-31
申请号:US16585191
申请日:2019-09-27
Applicant: salesforce.com, inc.
Inventor: Jeffrey Ira Cohen , Punit B. Shah , Serge Philippe Rielau
Abstract: Techniques are disclosed relating to concurrently processing transactions. A computer system may maintain a database table having a plurality of versions. Each of the versions may identify a corresponding portion of the database table that transactions associated with that version are permitted to access. The computer system may receive a first request to perform a first transaction to modify a definition of the database table. The computer system may receive a second request to perform a second transaction to modify data stored in the database table. In response to determining that the first and second transactions are associated with different versions of the plurality of versions, the computer system may concurrently process the first and second transactions.
-
公开(公告)号:US20190278762A1
公开(公告)日:2019-09-12
申请号:US16426052
申请日:2019-05-30
Applicant: salesforce.com, inc.
Inventor: Subho Sanjay Chatterjee , Patrick James Helland , Nathaniel Wyatt , James E. Mace , Punit B. Shah
IPC: G06F16/23
Abstract: Systems and methods provide multi-version concurrency control of database records with uncommitted transactions. The system and methods may include receiving a query regarding a transaction counter number. When a transaction header identifying data is updated with the assigned transaction counter number, the updated transaction header may be used in identifying data as an instance of multiversion concurrency control information by the received query. A key lookup may be performed, and when the key lookup encounters an uncommitted row for a transaction number, a corresponding transaction header identifying data to identify a data array element to determine whether the transaction number is committed, and determining the transaction counter number when the transaction number is committed. The transaction counter number may be stamped on the row version record when it is determined that the row is committed.
-
公开(公告)号:US20190114253A1
公开(公告)日:2019-04-18
申请号:US15787470
申请日:2017-10-18
Applicant: salesforce.com, inc.
Inventor: Mark Wilding , Punit B. Shah
IPC: G06F11/36
Abstract: Techniques are disclosed relating to testing application code. A computer system, in various embodiments, receives application code to be tested by the computer system and separate information defining actions to be performed at specified locations within the application code. In various embodiments, the computer system executes the application code in a test environment in which the actions defined by the separate information are retrieved and performed by a plurality of threads of the application code at the specified locations to control flow of the plurality of threads through the application code. In some embodiments, a first one of the plurality of threads is operable to perform at least one of the actions to control the flow of a second one of the plurality of threads.
-
-
-