DETAILED ACTION Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA. Information Disclosure Statement The information disclosure statement (IDS) filed on 12/04/2023 has been considered by the Examiner and made of record in the application file. Examiner’s Remarks The claims were examined for abstract idea, however, the claims recite a specific technique for performing data migration using a thread-pool executor, including conditional execution of copy operations within a currently executing thread when no worker thread is available and dynamic adjustment of thread usage based on performance. This constitutes a particular manner of managing processor resources and task execution within a computer system. The claimed subject matter therefore improves the functioning of the computer itself by reducing overhead associated with thread creation, scheduling and context switching, thereby improving performance and efficiency of data migration operations. See, e.g., Enfish, LLC v. Microsoft Corp. , 822 F.3d 1327 (Fed. Cir. 2016) (improvements to computer functionality are not abstract), and McRo, Inc. v. Bandai Namco Games America Inc. , 837 F.3d 1299 (Fed. Cir. 2016) ( rule-based automation of a technical process is patent-eligible) Any recited data processing or copying operations are performed as part of this specific technical solution and are integrated into a practical application that controls the internal operation of the computing system. The claims do not merely automate a human activity or implement a business practice on a generic computer. Accordingly, the claims do not recite a judicial exception, or alternatively are integrated into a practical application, and are therefore patent-eligible. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claim 1-3, 7-10, 14-16 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Langan et al. (US 2006/0253501 A1) hereinafter “Langan”, further in view of Somogyi et al. (US 8,375,359 B2) hereinafter “Somogyi” . With respect to claims 1, 8 and 14, the Langan reference discloses a computer-implemented method, non-transitory computer-readable medium and system [ see Abstract, disclosing a system and method that facilitates fast and reliable synchronization of computer/file system directories ] comprising: obtaining a request to copy a source directory to a target directory [ see ¶0030, disclosing t he present invention is generally directed towards a system and method by which directories, such as in a local offline cache and a remote network file system, are synchronized ; To this end, the present invention discovers what differences exist between the directories, enumerates the differences to a calling client, and then takes actions as requested by the client, e.g., to issue the file system-related commands that are needed to reach a synchronized state ] ; identifying entities included in the source directory [ see Abstract, disclosing d uring the action phase, when an operation is requested, the FastSync subsystem packages up the operation, item pointer, and context information into an internal context block and queues that packet as a work item for a process thread pool to handle ] ; and executing data migration from the source directory to the target directory by performing [ see ¶0009, disclosing i n the action phase, the FastSync subsystem carries out synchronization primitives (operations which may be combined into a more complex action) as directed by the client ] , for each identified entity: assigning a thread pool executor that is configured to execute copy operations at at least one of multiple threads executed by the thread pool executor, wherein a new copy job is to be executed for migrating content of a respective entity from the source directory to the target directory [ see ¶0009, disclosing i n the action phase, the FastSync subsystem carries out synchronization primitives (operations which may be combined into a more complex action) as directed by the client ] ; and in response to determining that there is no available-for-execution thread at the thread pool executor, copying the respective entity as a nested copy in a currently executing thread that is executing a current copy job [ see ¶0034, disclosing a caller may always want to make folder B look like folder A in certain circumstances, no matter whether folder A has changed or not ; In such an event, the caller can simply select the operations that would delete or overwrite the changes in B, then copy the new content from A to B ] . (emphasis added) Langan discloses the computer-implemented method, non-transitory computer-readable medium and system , as referenced above. Although Langan discloses process thread pool for handling requests throughout its disclosure it is silent for each identified entity: assigning a thread pool executor that is configured to execute copy operations at at least one of multiple threads executed by the thread pool executor , wherein a new copy job is to be executed for migrating content of a respective entity from the source directory to the target directory ; and in response to determining that there is no available-for-execution thread at the thread pool executor , copying the respective entity as a nested copy in a currently executing thread that is executing a current copy job . (emphasis added) However, Somogyi discloses for each identified entity: assigning a thread pool executor that is configured to execute copy operations at at least one of multiple threads executed by the thread pool executor [ see col. 5, lines 6-8, disclosing if a thread is available at step 530, operation continues to step 540 wherein the thread manager dispatches the XA operation to the available thread ] , wherein a new copy job is to be executed for migrating content of a respective entity from the source directory to the target directory ; and in response to determining that there is no available-for-execution thread at the thread pool executor [ see col. 6, lines 24-27, disclosing f or heavy client loads, where all server threads are being utilized for processing client requests, the behavior and performance is similar to that of serialized XA in that the primary thread processes most of the XA related interactions ] , copying the respective entity as a nested copy in a currently executing thread that is executing a current copy job . (emphasis added) It would have been obvious before the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to modify the file system synchronization system as taught by Langan with the parallel transaction execution with a thread pool as taught by Somogyi. Doing so would have enhanced Langan by reduc ing the overall time spent in XA operations when multiple resources are involved in a transaction by performing the XA operations in paralle l [ Somogyi, see col. 3, lines 17-20 ] . With respect to claims 2, 9 and 15, as modified the combination of Langan and Somogyi discloses the computer-implemented method, non-transitory computer-readable medium and system of claims 1, 8 and 14. The combination further discloses wherein the entities include a first set of files and a second set of directories [ Langan, see ¶0006, disclosing the present invention is directed towards a multi-phase system and method that facilitates the synchronization of directories and their files, such as to synchronize a directory maintained in a local, offline cache with another directory in a remote network file system ] . With respect to claims 3, 10 and 16 , as modified the combination of Langan and Somogyi discloses the computer-implemented method, non-transitory computer-readable medium and system of claims 1, 8 and 14. The combination further discloses in response to determining, by the currently executing thread at the thread pool executor, that there is an available-for-execution thread at the thread pool executor, providing a new scheduled copy job to copy the respective entity through the available-for-execution thread at the thread pool executor [ Somogyi, see col. 5, lines 6-8, disclosing if a thread is available at step 530, operation continues to step 540 wherein the thread manager dispatches the XA operation to the available thread ] . With respect to claims 7 and 20 , as modified the combination of Langan and Somogyi discloses the computer-implemented method and system of claims 1 and 14. The combination further discloses wherein the determination that there is no available-for-execution thread is performed by the currently executing thread upon finishing of the current copy job and while the current executing thread is running [ Somogyi, see col. 6, lines 24-27, disclosing f or heavy client loads, where all server threads are being utilized for processing client requests, the behavior and performance is similar to that of serialized XA in that the primary thread processes most of the XA related interactions ] . Claim s 4, 11 and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Langan and Somogyi, further in view of Alvarez et al. (US 7,167,965 B2) hereinafter “Alvarez” . With respect to claims 4, 11 and 17 , as modified the combination of Langan and Somogyi discloses the computer-implemented method, non-transitory computer-readable medium and system of claims 1, 8 and 14. The combination does not discloses wherein the request to copy is received from an application that requests execution of the data migration of data from the source directory to the target directory, wherein during the data migration, the application is denied write access to data from at least one of the source directory or the target directory for processing service requests received at the application. However, Alvarez discloses wherein the request to copy is received from an application that requests execution of the data migration of data from the source directory to the target directory, wherein during the data migration, the application is denied write access to data from at least one of the source directory or the target directory for processing service requests received at the application [ see col. 2, lines 55-61, disclosing t o guarantee data consistency, the migration program may have to prevent the user applications 930 from accessing the information while it is being migrated, for example using a lock scheme for mutual exclusion. The drawback of this scheme is that it prevents users from accessing subsets of the information during migration ] . It would have been obvious before the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to modify the combination with the lock scheme as discloses by Alvarez . Doing so would have guaranteed data consistency during the migration process. Claim s 5, 6, 12, 13, 18 and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Langan and Somogyi, further in view of Blythe et al. (US 2004/0139434 A1 ) hereinafter “ Blythe ” . With respect to claims 5, 12 and 18, as modified the combination of Langan and Somogyi discloses the computer-implemented method, non-transitory computer-readable medium and system of claims 1, 8 and 14. The combination does not discloses wherein the thread pool executor is configured to include a plurality of threads for parallel job execution, wherein a number of the plurality of threads is adjustable during the data migration execution based on thread optimization rules. However, Blythe discloses wherein the thread pool executor is configured to include a plurality of threads for parallel job execution, wherein a number of the plurality of threads is adjustable during the data migration execution based on thread optimization rules [ see Abstract, disclosing t hread pools in a multithreaded server are programmatically adjusted, based on observed statistics from the server's inbound workload ] . It would have been obvious before the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to modify the combination with the dynamic thread pool tuning techniques as taught by Blythe . Doing so would have ensured there’s an optimal amount of threads active/inactive so that other processes may utilize the threads more efficiently. With respect to claims 6, 13 and 19 , as modified the combination of Langan and Somogyi discloses the computer-implemented method, non-transitory computer-readable medium and system of claims 1, 8 and 14. The combination does not discloses it comprises : i n response to performing scheduled checks of performance of the data migration, determining a performance score at each scheduled check defining a number of executed copy operations with a predefined time period; and in response to determining a change in the performance score over a threshold time for executing the scheduled checks, auto-tuning a number of threads allocated for parallel processing at the thread pool executor. However, Blythe discloses it comprises: i n response to performing scheduled checks of performance of the data migration, determining a performance score at each scheduled check defining a number of executed copy operations with a predefined time period [ see ¶0021, disclosing gathering baseline run-time statistics for a dynamically changeable workload on a multithreaded server, wherein the baseline statistics pertain to executing a first plurality of requests of the dynamically changeable workload, the requests being serviced by a plurality of thread pools; programmatically altering the thread pools; gathering new run-time statistics for the dynamically changeable workload, wherein the new statistics pertain to executing a second plurality of requests of the dynamically changeable workload, the requests being serviced by the programmatically altered thread pools; and programmatically reversing the programmatic alteration if a comparison of the new run-time statistics to the baseline run-time statistics indicates that performance was degraded as a result of the programmatic alteration. (In addition, the alteration may be programmatically reversed if performance fails to improve as a result thereof.) ] ; and in response to determining a change in the performance score over a threshold time for executing the scheduled checks, auto-tuning a number of threads allocated for parallel processing at the thread pool executor [ see ¶0033, disclosing determines the average execution time and wait time per type of request; and dynamically adjusts the allocation of requests to particular pools (preferably by determining an upper bound on average execution time for the requests to be processed in each pool) ; In preferred embodiments that also dynamically adjust the number of thread pools and/or the number of threads in the pools, only one of these variables (upper bound on average execution time per pool, number of thread pools, and number of threads in pools) is adjusted at a time, and another snapshot is taken to determine whether the effect was positive or negative ] . It would have been obvious before the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to modify the combination with the dynamic thread pool tuning techniques as taught by Blythe. Doing so would have ensured there’s an optimal amount of threads active/inactive so that other processes may utilize the threads more efficiently. Prior Art Made of Record The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Wang et al. discloses adaptive throttling in a universal backup host. Liao et al. discloses a data storage system with on-demand recovery of file import metadata during file system migration. Sledz et al. discloses NFS cluster failover. Upadhyay et al. discloses multi stream deduplication backup of collaboration server data. Nelson discloses parallel migration of data objects to clustered storage. Vengerov et al. discloses scheduling a thread in a multiprocessor system. Menezes et al. discloses file based task queue management. Kast et al. discloses transferring data from a source machine to a target machine. Browning et al. discloses scheduling threads within a multiprocessor data processing system using an affinity scheduler. Conclusions/Points of Contacts Any inquiry concerning this communication or earlier communications from the examiner should be directed to FILLIN "Examiner name" \* MERGEFORMAT JORGE A CASANOVA whose telephone number is FILLIN "Phone number" \* MERGEFORMAT (571)270-3563 . The examiner can normally be reached FILLIN "Work Schedule?" \* MERGEFORMAT M-F: 9 a.m. to 6 p.m. (EST) . Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, FILLIN "SPE Name?" \* MERGEFORMAT Aleksandr Kerzhner can be reached at FILLIN "SPE Phone?" \* MERGEFORMAT (571) 270-1760 . The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /JORGE A CASANOVA/ Primary Examiner, Art Unit 2165