Patents by Inventor Mark Wilding

Mark Wilding has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20180131766
    Abstract: Apparatuses and techniques to utilize a scratch organization as a unit of virtualization. Potential hosts for a scratch organization are evaluated. The potential hosts include at least the first group of hardware processing devices and a second group of the plurality of hardware processing devices to provide remote client computing environments. A target host is selected from the potential hosts. The scratch organization to be hosted by the target host is generated. Data is loaded from a test source that is not the subject organization into the scratch organization. One or more test operations are performed on the scratch organization using the loaded data with the target host. The scratch organization is destroyed on the selected host after the one or more test operations have been performed.
    Type: Application
    Filed: October 6, 2017
    Publication date: May 10, 2018
    Inventors: James Bock Wunderlich, George Murnock, Josh Kaplan, Michael Dwayne Miller, Mark Wilding
  • Publication number: 20180046665
    Abstract: Monitoring statements in a database environment. Substantially all database query statements to be executed against a database in the database environment are analyzed to determine if a statement has an outlier statistic. Database queries that do not have an associated outlier statistic are serviced. Further analysis is performed for statements having an outlier statistic to determine if the corresponding statement poses a security risk to the database environment.
    Type: Application
    Filed: August 11, 2016
    Publication date: February 15, 2018
    Inventor: Mark Wilding
  • Publication number: 20180046678
    Abstract: One or more client threads are executed. One or more processing threads corresponding to the one or more client threads are executed. The processing threads are configurable to generate statistical information for each database query statement processed by the corresponding client thread. The statistical information is generated from the processing threads. The statistical information is stored in chunks of memory managed via a plurality of queues. The chunks of memory containing the statistics are analyzed. Outlier statements are filtered based on the statistics. Non-outlier statements are stored by a storage device.
    Type: Application
    Filed: August 11, 2016
    Publication date: February 15, 2018
    Inventor: Mark Wilding
  • Patent number: 9875164
    Abstract: In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses for fixing logical or physical corruption in databases using LSM trees including, for example, means for storing records in a LSM database at the host organization; processing transactions to the LSM database by writing the transactions into immutable extents for subsequent merge into the LSM database; recording a history of the transactions in a log; identifying corruption in at least one of the records of the LSM database represented within the immutable extents prior to use of the immutable extents in the LSM database; and correcting the identified corruption to the at least one of the records of the LSM database based at least in part on the recorded history of the transactions in the log during live operation of the LSM database. Other related embodiments are disclosed.
    Type: Grant
    Filed: February 22, 2017
    Date of Patent: January 23, 2018
    Assignee: SALESFORCE.COM, INC.
    Inventor: Mark Wilding
  • Patent number: 9727598
    Abstract: In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses for fixing logical or physical corruption in databases using LSM trees including, for example, means for storing records in a LSM database at the host organization; processing transactions to the LSM database by writing the transactions into immutable extents for subsequent merge into the LSM database; recording a history of the transactions in a log; identifying corruption in at least one of the records of the LSM database represented within the immutable extents prior to use of the immutable extents in the LSM database; and correcting the identified corruption to the at least one of the records of the LSM database based at least in part on the recorded history of the transactions in the log during live operation of the LSM database. Other related embodiments are disclosed.
    Type: Grant
    Filed: March 13, 2014
    Date of Patent: August 8, 2017
    Assignee: SALESFORCE.COM, INC.
    Inventor: Mark Wilding
  • Publication number: 20170223089
    Abstract: Techniques and architectures to provide trace functionality. Trace record data is received from a plurality of client threads executed by one or more processors. The trace record data is stored in a plurality of chunks maintained in an in-use list. The in-use list has a chunk for individual use by the corresponding client threads. Chunks in the in-use list are moved to a completed queue when a chunk in the in-use list is substantially full. A chunk from a free list is placed in the in-use list to replace removed chunks. The chunks from the completed queue are stored in at least one memory device.
    Type: Application
    Filed: February 2, 2016
    Publication date: August 3, 2017
    Inventor: Mark Wilding
  • Patent number: 9720954
    Abstract: In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses for fixing logical or physical corruption in databases using LSM trees including, for example, means for storing records in a LSM database at the host organization; processing transactions to the LSM database by writing the transactions into immutable extents for subsequent merge into the LSM database; recording a history of the transactions in a log; identifying corruption in at least one of the records of the LSM database represented within the immutable extents prior to use of the immutable extents in the LSM database; and correcting the identified corruption to the at least one of the records of the LSM database based at least in part on the recorded history of the transactions in the log during live operation of the LSM database. Other related embodiments are disclosed.
    Type: Grant
    Filed: February 22, 2017
    Date of Patent: August 1, 2017
    Assignee: SALESFORCE.COM, INC.
    Inventor: Mark Wilding
  • Publication number: 20170177657
    Abstract: In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses for fixing logical or physical corruption in databases using LSM trees including, for example, means for storing records in a LSM database at the host organization; processing transactions to the LSM database by writing the transactions into immutable extents for subsequent merge into the LSM database; recording a history of the transactions in a log; identifying corruption in at least one of the records of the LSM database represented within the immutable extents prior to use of the immutable extents in the LSM database; and correcting the identified corruption to the at least one of the records of the LSM database based at least in part on the recorded history of the transactions in the log during live operation of the LSM database. Other related embodiments are disclosed.
    Type: Application
    Filed: February 22, 2017
    Publication date: June 22, 2017
    Inventor: Mark Wilding
  • Patent number: 9684570
    Abstract: In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses for fixing logical or physical corruption in databases using immutable LSM trees including, for example, means for storing records in a LSM database at the host organization; processing transactions to the LSM database by writing the transactions into immutable extents for subsequent merge into the LSM database; recording a history of the transactions in a log; identifying corruption in at least one of the records of the LSM database represented within the immutable extents prior to merge of the immutable extents to the LSM database; and correcting the identified corruption to the at least one of the records of the LSM database based at least in part on the recorded history of the transactions in the log during live operation of the LSM database. Other related embodiments are disclosed.
    Type: Grant
    Filed: December 19, 2013
    Date of Patent: June 20, 2017
    Assignee: salesforce.com, inc.
    Inventor: Mark Wilding
  • Publication number: 20170161159
    Abstract: In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses for fixing logical or physical corruption in databases using LSM trees including, for example, means for storing records in a LSM database at the host organization; processing transactions to the LSM database by writing the transactions into immutable extents for subsequent merge into the LSM database; recording a history of the transactions in a log; identifying corruption in at least one of the records of the LSM database represented within the immutable extents prior to use of the immutable extents in the LSM database; and correcting the identified corruption to the at least one of the records of the LSM database based at least in part on the recorded history of the transactions in the log during live operation of the LSM database. Other related embodiments are disclosed.
    Type: Application
    Filed: February 22, 2017
    Publication date: June 8, 2017
    Inventor: Mark Wilding
  • Patent number: 9519801
    Abstract: In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses for implementing data masking via compression dictionaries including, for example, means for receiving customer data at the host organization; compressing the customer data using dictionary based compression and a compression dictionary; storing the compressed customer data in a database of the host organization; retrieving the compressed customer data from the database of the host organization; and de-compressing the compressed customer data via a masked compression dictionary, in which the masked compression dictionary de-compresses the customer data into masked customer data. Other related embodiments are disclosed.
    Type: Grant
    Filed: December 19, 2013
    Date of Patent: December 13, 2016
    Assignee: salesforce.com, inc.
    Inventor: Mark Wilding
  • Publication number: 20140195492
    Abstract: In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses for fixing logical or physical corruption in databases using LSM trees including, for example, means for storing records in a LSM database at the host organization; processing transactions to the LSM database by writing the transactions into immutable extents for subsequent merge into the LSM database; recording a history of the transactions in a log; identifying corruption in at least one of the records of the LSM database represented within the immutable extents prior to use of the immutable extents in the LSM database; and correcting the identified corruption to the at least one of the records of the LSM database based at least in part on the recorded history of the transactions in the log during live operation of the LSM database. Other related embodiments are disclosed.
    Type: Application
    Filed: March 13, 2014
    Publication date: July 10, 2014
    Applicant: SALESFORCE.COM, INC.
    Inventor: Mark Wilding
  • Publication number: 20140172806
    Abstract: In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses for implementing data masking via compression dictionaries including, for example, means for receiving customer data at the host organization; compressing the customer data using dictionary based compression and a compression dictionary; storing the compressed customer data in a database of the host organization; retrieving the compressed customer data from the database of the host organization; and de-compressing the compressed customer data via a masked compression dictionary, in which the masked compression dictionary de-compresses the customer data into masked customer data. Other related embodiments are disclosed.
    Type: Application
    Filed: December 19, 2013
    Publication date: June 19, 2014
    Applicant: salesforce.com, inc.
    Inventor: Mark Wilding
  • Publication number: 20080016028
    Abstract: distributed database management system implemented on a cluster of computers. The cluster including disks organized as data nodes. The data nodes being locally connected to one or more computers in the cluster. The distributed database management system includes a distributed database manager layer having a lock manager, a resource manager, and an architecture manager. The lock manager serializes access to the data nodes in the cluster. The resource manager maintains a data representation of the resources of each computer in the cluster and makes the data available to other computers in the cluster to facilitate access to the resources by the other computers. The architecture manager defines logical ownership relationships between data nodes and computers in the cluster to permit the architecture of the database to be dynamically reconfigured to provide improved performance.
    Type: Application
    Filed: July 19, 2007
    Publication date: January 17, 2008
    Applicant: International Business Machines Corporation
    Inventors: Mark WILDING, Matthew Huras
  • Publication number: 20080016096
    Abstract: A dynamic status tree facility for providing status information about one or more systems. The facility includes a tree data structure and methods for manipulating the data structure. The facility is accessible to provider processes using a set of provider interface methods. The facility is accessible to consumer processes using a set of consumer interface methods. The tree data structure is defined by nodes stored in shared memory and attached to by way of a defined data structure made available to the provider and consumer interface methods. The nodes in the tree data structure are defined to have a control block and a variable set of export data. The export data for any one node is specified by a variable in the control block. Certain of the exported data in the tree is representable in a format selected to have one of four defined properties.
    Type: Application
    Filed: July 24, 2007
    Publication date: January 17, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Mark WILDING, Alexander ABRASHKEVICH
  • Publication number: 20080016354
    Abstract: A method and apparatus for directing a client to establish a secure connection with a server across a public network. The server and the client exchange a Server Authentication Public Key, a Client Authentication Public Key, and a Remote Service Unique Identifier (RSUID) during a registration process. In one embodiment, the method includes the client transmitting to the server a client information package having the RSUID and a client challenge information package encrypted with the Server Authentication Public Key, the client receiving from the server a server information package having the RSUID and a server challenge information package and a portion of the received client challenge information encrypted with the Client Authentication Public Key, the client decrypting and verifying the server challenge information package with the Client Authentication Private Key, and, the client transmitting to the server an encrypted portion of the received client challenge information.
    Type: Application
    Filed: September 26, 2007
    Publication date: January 17, 2008
    Applicant: International Business Machines Corporation
    Inventors: Mark Wilding, Randall Horman
  • Publication number: 20080007779
    Abstract: Linking components of an object code to produce executable code is described. Some components of the object code can be adapted to have an individual copy of a printing object for printing a complex data structure. In some embodiments, the linker comprising an identifier module for recognizing at least one of the object components having an embedded print command corresponding to the individual printing object, the embedded print command for abstracted printing of the complex data structure. In some embodiments, the linker comprising a compare module for comparing two or more identified embedded print commands from the object components, the comparison for determining whether two or more of the identified embedded print commands are identical copies of the individual printing object. In some embodiments, the results of the modules are adapted to define the executable code with at least one executable print command corresponding to the embedded print command.
    Type: Application
    Filed: September 23, 2007
    Publication date: January 10, 2008
    Applicant: International Business Machines Corporation
    Inventors: Edward Van Gennip, Mark Wilding, Daniel Wood
  • Publication number: 20070288742
    Abstract: A system, method and facility for manipulating registries on a computer system. The system includes a generic registry facility, which features functions classified according to the breadth of their applicability to varying types of registries. The registries may be classified as file-based and proprietary. The file-based registries may be binary or text-based. The generic registry facility provides a library of generic registry facility functions that may be included in a specific registry manipulation module through which a computer program can manipulate a specific registry. The generic registry facility functions may be customized by the developer of the registry manipulation module for a specific registry. The functions may include an action verification function that includes a commit sequence for ensuring that requested changes to a registry are made successfully. The functions may also include a trigger function for triggering events upon the occurrence of a change to a registry.
    Type: Application
    Filed: April 18, 2007
    Publication date: December 13, 2007
    Applicant: International Business Machines Corporation
    Inventors: Daniel Behman, Mark Wilding
  • Publication number: 20070271468
    Abstract: A method and apparatus are provided for maintaining data integrity when switching between data protection methods. Data and a first protection type information are received. A second protection type information is generated. After generating the second protection type information, the data is checked using the first protection type information. An error indication is generated when the first protection type information check fails.
    Type: Application
    Filed: May 5, 2006
    Publication date: November 22, 2007
    Inventors: Paul McKenney, Jeffrey Palm, George Penokie, Mark Wilding
  • Publication number: 20070136385
    Abstract: A data structure, method and system are provided incorporating a general purpose memory allocator and defensive heap memory manager. This provides an ability to reliably detect various types of memory errors, dynamically enable or disable memory debugging, enhance success of read and write operations using various memory verification techniques. Further, through separation of control information associated with allocated and free chunks of memory from the chunks themselves separation of metadata from actual data), enhanced protection of vital information about the heap memory layout in general is provided. The heap memory manager uses read, write, and execute protected heap header walls and pool header walls and may, for each pool and memory block, separately use hidden front and back Memory Debug Information Areas (MDIAs) with checksums and well-known signature fields thereby enhancing overall memory management.
    Type: Application
    Filed: January 24, 2007
    Publication date: June 14, 2007
    Inventors: Alexander Abrashkevich, Mark Wilding