Abstract:
A system and method of estimating impact of software updates includes obtaining usage measures for an instance of a software application, analyzing the software update of the software application by comparing base code for the software application to updated code for the software application, identifying one or more lines of interest from the base code based on the comparing, and aggregating the usage measures for the instance associated with the lines of interest to determine an impact factor. The base code corresponds to source code for the instance. The updated code corresponds to source code for the software application after the software update is applied to the base code. In some examples, the system and method further include normalizing the impact factor based on a length of time used to collect the usage measures, a number of lines of code in the base code, and a number of lines of code in the updated code.
Abstract:
A system and method of dynamic class management includes starting a skeleton application by loading a main class of the skeleton application and executing the main class, detecting a request for a requested class made by a referencing class, loading a class file associated with the requested class from a local storage device when the class file is stored on the local storage device and the requested class is not loaded in memory of the virtual machine, loading the class file from a class storage unit when the class file is not stored on the local storage device and the requested class is not loaded in the memory of the virtual machine, updating an application class graph (ACG) to record a dependency of the referencing class on the requested class, and updating an object table when the request is associated with creation of an object of the requested class.
Abstract:
An example method of processing a query at a plurality of storage devices includes receiving a dual query from a client and generating a synchronous query and an asynchronous query based on the dual query. The dual query includes a set of conditions for selecting data from a set of database tables. The method further includes sending the synchronous query to a first storage device, sending the asynchronous query to a second storage device, and receiving a result set of the synchronous query. The result set of the synchronous query includes data selected from a set of database records in a set of primary database tables, which is stored in the first storage device and is a subset of the set of database tables. The method further includes marking a database record. A marked database record indicates usage of the data selected from the database record within a time period.
Abstract:
According to one example, a method performed by a computing system includes, with a first server, receiving a process request, starting processing of the process request, prior to completing the processing of the process request, storing objects associated with a thread of the process request in an object database that is accessible by the second server, storing thread metadata for the thread of the process request in a metadata database that is accessible by the second server, and sending a transfer request to a switching manager, the transfer request being to request that the process request be shifted to the second server.
Abstract:
A system and method of batch query processing includes accumulating data queries in a query holding area of a query assistant running in a computer server, separating the accumulated data queries into a plurality of partitions, ordering the partitions, ordering the accumulated data queries within each of the partitions, and processing the accumulated data queries in an order based on the ordering of the partitions and the ordering of the data queries within each of the partitions. Each of the partitions includes data queries with a respective from-type. Each respective from-type is associated with a combination of storage tables accessed by each of the data queries in a corresponding partition. In some examples, ordering the accumulated data queries within each of the partitions includes processing the data queries in each partition against a test data set and ordering the data queries based on results of the processing.
Abstract:
A system and method of querying hybrid multi data sources includes receiving a query at a hybrid multi data source running on a computer server, creating a list of data sources, filtering the list of data sources based on data source hints included in the query, filtering the list of data sources based on data source rules, forming one or more query plans for processing the query, evaluating each of the query plans, selecting a first query plan from the query plans based on results of the evaluating, and performing the first query plan. Each query plan corresponds to a data source in the filtered list of data sources. In some examples, the first query plan has a lowest cost of each of the query plans. In some examples, the first query plan is based on probabilities associated with the cost of each of the query plans.
Abstract:
A system and method of collaborative processing of service requests includes receiving a service request at an application server, beginning execution of a proxy member function of a proxy class, and determining whether a movable member function in a movable class is to be executed at a client. When the movable member function is to be executed at the client, the method further includes creating a partial response including code for the movable class and information for invoking the movable member function and transmitting the partial response to the client fore execution of the movable member function. When the movable member function is not to be executed at the client, the method further includes executing the movable member function in the application server and returning a result of the movable member function as a result of the proxy member function. The proxy member function replaces the movable member function.
Abstract:
Systems and methods are disclosed for processing messages using a dynamic messaging bus. An example system includes a plurality of services residing in a dynamic messaging bus including a plurality of sub-buses. Each service is assigned to a sub-bus of the plurality of sub-buses. The example system also includes a performance monitoring module that monitors a performance of one or more services executing on a sub-bus to which the respective one or more services is assigned. A first service is assigned to a first sub-bus and a second service is assigned to a second sub-bus. The example system further includes a swapping module that determines, based on the monitored performances of the first and second services, whether to swap the assignments of the first and second services such that the first service is assigned to the second sub-bus and the second service is assigned to the first sub-bus.
Abstract:
A system and method of cluster debugging includes detecting debug events occurring in one or more first virtual machines, storing debug records, each of the debug records including information associated with a respective debug event selected from the debug events and a timestamp associated with the respective debug event, merging the debug records based on information associated with each timestamp, starting one or more second virtual machines, each of the one or more second virtual machines emulating a selected one of the one or more first virtual machines, synchronizing the one or more second virtual machines, retrieving the merged debug records, and playing the merged debug records back in chronological order on the one or more second virtual machines. In some examples, the method further includes collecting clock synchronization records. In some examples, merging the debug records includes altering an order of one or more of the debug records based on the clock synchronization records.
Abstract:
Systems and methods for just-in-time (JIT) code compilation by a computer system. An example method may comprise identifying a defined pattern in a byte stream, evaluating a conditional expression associated with the pattern, and compiling the byte stream into a native code, while excluding, in view of the evaluating, a portion of byte stream associated with the pattern.