From d9259194c405e908873e9335aa0a741bfa2ce792 Mon Sep 17 00:00:00 2001 From: shaharuk-yb Date: Thu, 28 Nov 2024 12:50:08 +0530 Subject: [PATCH 1/4] removing ParallelJobs from sizing assessment report --- .../expectedAssessmentReport.json | 3 +- .../expectedChild1AssessmentReport.json | 3 +- .../expectedChild2AssessmentReport.json | 3 +- .../expectedAssessmentReport.json | 3 +- .../expectedAssessmentReport.json | 3 +- .../expectedAssessmentReport.json | 1 - .../expectedAssessmentReport.json | 3 +- .../expectedAssessmentReport.json | 3 +- .../expectedAssessmentReport.json | 3 +- .../expectedAssessmentReport.json | 3 +- .../expectedAssessmentReport.json | 3 +- .../expectedAssessmentReport.json | 3 +- .../expectedAssessmentReport.json | 3 +- .../migration_assessment_report.template | 1 - yb-voyager/src/migassessment/common.go | 2 +- yb-voyager/src/migassessment/sizing.go | 10 +- yb-voyager/src/migassessment/test_report.json | 166 ++++++++++++++++++ 17 files changed, 184 insertions(+), 32 deletions(-) create mode 100644 yb-voyager/src/migassessment/test_report.json diff --git a/migtests/tests/oracle/assessment-report-test/expectedAssessmentReport.json b/migtests/tests/oracle/assessment-report-test/expectedAssessmentReport.json index a238ee8513..5d857da7d9 100644 --- a/migtests/tests/oracle/assessment-report-test/expectedAssessmentReport.json +++ b/migtests/tests/oracle/assessment-report-test/expectedAssessmentReport.json @@ -140,8 +140,7 @@ "MemoryPerInstance": 16, "OptimalSelectConnectionsPerNode": 8, "OptimalInsertConnectionsPerNode": 12, - "EstimatedTimeInMinForImport": 1, - "ParallelVoyagerJobs": 1 + "EstimatedTimeInMinForImport": 1 }, "FailureReasoning": "" }, diff --git a/migtests/tests/oracle/bulk-assessment-test/expected_reports/expectedChild1AssessmentReport.json b/migtests/tests/oracle/bulk-assessment-test/expected_reports/expectedChild1AssessmentReport.json index 91100541e7..6ac557ab8c 100644 --- a/migtests/tests/oracle/bulk-assessment-test/expected_reports/expectedChild1AssessmentReport.json +++ b/migtests/tests/oracle/bulk-assessment-test/expected_reports/expectedChild1AssessmentReport.json @@ -69,8 +69,7 @@ "MemoryPerInstance": 16, "OptimalSelectConnectionsPerNode": 8, "OptimalInsertConnectionsPerNode": 12, - "EstimatedTimeInMinForImport": 0, - "ParallelVoyagerJobs": 1 + "EstimatedTimeInMinForImport": 0 }, "FailureReasoning": "" }, diff --git a/migtests/tests/oracle/bulk-assessment-test/expected_reports/expectedChild2AssessmentReport.json b/migtests/tests/oracle/bulk-assessment-test/expected_reports/expectedChild2AssessmentReport.json index d67d01860e..6e4f094fa1 100644 --- a/migtests/tests/oracle/bulk-assessment-test/expected_reports/expectedChild2AssessmentReport.json +++ b/migtests/tests/oracle/bulk-assessment-test/expected_reports/expectedChild2AssessmentReport.json @@ -99,8 +99,7 @@ "MemoryPerInstance": 16, "OptimalSelectConnectionsPerNode": 8, "OptimalInsertConnectionsPerNode": 12, - "EstimatedTimeInMinForImport": 1, - "ParallelVoyagerJobs": 1 + "EstimatedTimeInMinForImport": 1 }, "FailureReasoning": "" }, diff --git a/migtests/tests/pg/adventureworks/expected_files/expectedAssessmentReport.json b/migtests/tests/pg/adventureworks/expected_files/expectedAssessmentReport.json index 12884e9d65..3c39646247 100755 --- a/migtests/tests/pg/adventureworks/expected_files/expectedAssessmentReport.json +++ b/migtests/tests/pg/adventureworks/expected_files/expectedAssessmentReport.json @@ -150,8 +150,7 @@ "MemoryPerInstance": 16, "OptimalSelectConnectionsPerNode": 8, "OptimalInsertConnectionsPerNode": 12, - "EstimatedTimeInMinForImport": 0, - "ParallelVoyagerJobs": 1 + "EstimatedTimeInMinForImport": 0 }, "FailureReasoning": "" }, diff --git a/migtests/tests/pg/assessment-report-test/expectedAssessmentReport.json b/migtests/tests/pg/assessment-report-test/expectedAssessmentReport.json index e3aa333e28..35ef6b7ea2 100644 --- a/migtests/tests/pg/assessment-report-test/expectedAssessmentReport.json +++ b/migtests/tests/pg/assessment-report-test/expectedAssessmentReport.json @@ -184,8 +184,7 @@ "MemoryPerInstance": 16, "OptimalSelectConnectionsPerNode": 8, "OptimalInsertConnectionsPerNode": 12, - "EstimatedTimeInMinForImport": 1, - "ParallelVoyagerJobs": 1 + "EstimatedTimeInMinForImport": 1 }, "FailureReasoning": "" }, diff --git a/migtests/tests/pg/mgi/expected_files/expectedAssessmentReport.json b/migtests/tests/pg/mgi/expected_files/expectedAssessmentReport.json index e977afb880..1a6a0c74b8 100644 --- a/migtests/tests/pg/mgi/expected_files/expectedAssessmentReport.json +++ b/migtests/tests/pg/mgi/expected_files/expectedAssessmentReport.json @@ -241,7 +241,6 @@ "OptimalSelectConnectionsPerNode": 8, "OptimalInsertConnectionsPerNode": 12, "EstimatedTimeInMinForImport": 0, - "ParallelVoyagerJobs": 1 }, "FailureReasoning": "" }, diff --git a/migtests/tests/pg/omnibus/expected_files/expectedAssessmentReport.json b/migtests/tests/pg/omnibus/expected_files/expectedAssessmentReport.json index a6acd0153c..71f179e0e1 100755 --- a/migtests/tests/pg/omnibus/expected_files/expectedAssessmentReport.json +++ b/migtests/tests/pg/omnibus/expected_files/expectedAssessmentReport.json @@ -485,8 +485,7 @@ "MemoryPerInstance": 16, "OptimalSelectConnectionsPerNode": 8, "OptimalInsertConnectionsPerNode": 12, - "EstimatedTimeInMinForImport": 1, - "ParallelVoyagerJobs": 1 + "EstimatedTimeInMinForImport": 1 }, "FailureReasoning": "" }, diff --git a/migtests/tests/pg/osm/expected_files/expectedAssessmentReport.json b/migtests/tests/pg/osm/expected_files/expectedAssessmentReport.json index 83933b92ad..131035d7a6 100755 --- a/migtests/tests/pg/osm/expected_files/expectedAssessmentReport.json +++ b/migtests/tests/pg/osm/expected_files/expectedAssessmentReport.json @@ -58,8 +58,7 @@ "MemoryPerInstance": 16, "OptimalSelectConnectionsPerNode": 8, "OptimalInsertConnectionsPerNode": 12, - "EstimatedTimeInMinForImport": 1, - "ParallelVoyagerJobs": 1 + "EstimatedTimeInMinForImport": 1 }, "FailureReasoning": "" }, diff --git a/migtests/tests/pg/pgtbrus/expected_files/expectedAssessmentReport.json b/migtests/tests/pg/pgtbrus/expected_files/expectedAssessmentReport.json index 53c130bfd1..461a5fe96d 100755 --- a/migtests/tests/pg/pgtbrus/expected_files/expectedAssessmentReport.json +++ b/migtests/tests/pg/pgtbrus/expected_files/expectedAssessmentReport.json @@ -72,8 +72,7 @@ "MemoryPerInstance": 16, "OptimalSelectConnectionsPerNode": 8, "OptimalInsertConnectionsPerNode": 12, - "EstimatedTimeInMinForImport": 1, - "ParallelVoyagerJobs": 1 + "EstimatedTimeInMinForImport": 1 }, "FailureReasoning": "" }, diff --git a/migtests/tests/pg/rna/expected_files/expectedAssessmentReport.json b/migtests/tests/pg/rna/expected_files/expectedAssessmentReport.json index 5b83660cca..77032e3050 100644 --- a/migtests/tests/pg/rna/expected_files/expectedAssessmentReport.json +++ b/migtests/tests/pg/rna/expected_files/expectedAssessmentReport.json @@ -369,8 +369,7 @@ "MemoryPerInstance": 32, "OptimalSelectConnectionsPerNode": 16, "OptimalInsertConnectionsPerNode": 24, - "EstimatedTimeInMinForImport": 0, - "ParallelVoyagerJobs": 3 + "EstimatedTimeInMinForImport": 0 }, "FailureReasoning": "" }, diff --git a/migtests/tests/pg/sakila/expected_files/expectedAssessmentReport.json b/migtests/tests/pg/sakila/expected_files/expectedAssessmentReport.json index cb4ae18aee..849de98eed 100755 --- a/migtests/tests/pg/sakila/expected_files/expectedAssessmentReport.json +++ b/migtests/tests/pg/sakila/expected_files/expectedAssessmentReport.json @@ -110,8 +110,7 @@ "MemoryPerInstance": 16, "OptimalSelectConnectionsPerNode": 8, "OptimalInsertConnectionsPerNode": 12, - "EstimatedTimeInMinForImport": 0, - "ParallelVoyagerJobs": 1 + "EstimatedTimeInMinForImport": 0 }, "FailureReasoning": "" }, diff --git a/migtests/tests/pg/sample-is/expected_files/expectedAssessmentReport.json b/migtests/tests/pg/sample-is/expected_files/expectedAssessmentReport.json index 48942b5a41..96d65788ba 100755 --- a/migtests/tests/pg/sample-is/expected_files/expectedAssessmentReport.json +++ b/migtests/tests/pg/sample-is/expected_files/expectedAssessmentReport.json @@ -68,8 +68,7 @@ "MemoryPerInstance": 16, "OptimalSelectConnectionsPerNode": 8, "OptimalInsertConnectionsPerNode": 12, - "EstimatedTimeInMinForImport": 0, - "ParallelVoyagerJobs": 1 + "EstimatedTimeInMinForImport": 0 }, "FailureReasoning": "" }, diff --git a/migtests/tests/pg/stackexchange/expected_files/expectedAssessmentReport.json b/migtests/tests/pg/stackexchange/expected_files/expectedAssessmentReport.json index c15829b277..9285da53f2 100644 --- a/migtests/tests/pg/stackexchange/expected_files/expectedAssessmentReport.json +++ b/migtests/tests/pg/stackexchange/expected_files/expectedAssessmentReport.json @@ -74,8 +74,7 @@ "MemoryPerInstance": 16, "OptimalSelectConnectionsPerNode": 8, "OptimalInsertConnectionsPerNode": 12, - "EstimatedTimeInMinForImport": 0, - "ParallelVoyagerJobs": 1 + "EstimatedTimeInMinForImport": 0 }, "FailureReasoning": "" }, diff --git a/yb-voyager/cmd/templates/migration_assessment_report.template b/yb-voyager/cmd/templates/migration_assessment_report.template index c172979362..3a4efcf474 100644 --- a/yb-voyager/cmd/templates/migration_assessment_report.template +++ b/yb-voyager/cmd/templates/migration_assessment_report.template @@ -154,7 +154,6 @@ Memory per instance(GiB){{ .MemoryPerInstance }} Optimal select connections per node{{ if eq .OptimalSelectConnectionsPerNode 0 }}--{{else}}{{.OptimalSelectConnectionsPerNode }}{{end}} Optimal insert connections per node{{ if eq .OptimalInsertConnectionsPerNode 0 }}--{{else}}{{.OptimalInsertConnectionsPerNode}}{{end}} - Parallel Voyager Jobs{{ .ParallelVoyagerJobs }} Estimated time taken for data import {{ .EstimatedTimeInMinForImport }} min

Reasoning:

diff --git a/yb-voyager/src/migassessment/common.go b/yb-voyager/src/migassessment/common.go index ca752bc916..acc05a7dc7 100644 --- a/yb-voyager/src/migassessment/common.go +++ b/yb-voyager/src/migassessment/common.go @@ -36,7 +36,7 @@ type SizingRecommendation struct { OptimalSelectConnectionsPerNode int64 OptimalInsertConnectionsPerNode int64 EstimatedTimeInMinForImport float64 - ParallelVoyagerJobs float64 + //ParallelVoyagerJobs float64 } type SizingAssessmentReport struct { diff --git a/yb-voyager/src/migassessment/sizing.go b/yb-voyager/src/migassessment/sizing.go index 1d45a1167b..f62689cc86 100644 --- a/yb-voyager/src/migassessment/sizing.go +++ b/yb-voyager/src/migassessment/sizing.go @@ -231,7 +231,7 @@ func SizingAssessment() error { } // calculate time taken for colocated import - importTimeForColocatedObjects, parallelVoyagerJobsColocated, err := calculateTimeTakenAndParallelJobsForImport( + importTimeForColocatedObjects, _, err := calculateTimeTakenAndParallelJobsForImport( finalSizingRecommendation.ColocatedTables, sourceIndexMetadata, colocatedLoadTimes, indexImpactOnLoadTimeCommon, columnsImpactOnLoadTimeCommon, COLOCATED) if err != nil { @@ -240,7 +240,7 @@ func SizingAssessment() error { } // calculate time taken for sharded import - importTimeForShardedObjects, parallelVoyagerJobsSharded, err := calculateTimeTakenAndParallelJobsForImport( + importTimeForShardedObjects, _, err := calculateTimeTakenAndParallelJobsForImport( finalSizingRecommendation.ShardedTables, sourceIndexMetadata, shardedLoadTimes, indexImpactOnLoadTimeCommon, columnsImpactOnLoadTimeCommon, SHARDED) if err != nil { @@ -258,9 +258,9 @@ func SizingAssessment() error { NumNodes: finalSizingRecommendation.NumNodes, OptimalSelectConnectionsPerNode: finalSizingRecommendation.OptimalSelectConnectionsPerNode, OptimalInsertConnectionsPerNode: finalSizingRecommendation.OptimalInsertConnectionsPerNode, - ParallelVoyagerJobs: math.Min(float64(parallelVoyagerJobsColocated), float64(parallelVoyagerJobsSharded)), - ColocatedReasoning: reasoning, - EstimatedTimeInMinForImport: importTimeForColocatedObjects + importTimeForShardedObjects, + //ParallelVoyagerJobs: math.Min(float64(parallelVoyagerJobsColocated), float64(parallelVoyagerJobsSharded)), + ColocatedReasoning: reasoning, + EstimatedTimeInMinForImport: importTimeForColocatedObjects + importTimeForShardedObjects, } SizingReport.SizingRecommendation = *sizingRecommendation diff --git a/yb-voyager/src/migassessment/test_report.json b/yb-voyager/src/migassessment/test_report.json new file mode 100644 index 0000000000..62f95dcf54 --- /dev/null +++ b/yb-voyager/src/migassessment/test_report.json @@ -0,0 +1,166 @@ +{"Time":"2024-09-24T15:32:17.689916+05:30","Action":"start","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment"} +{"Time":"2024-09-24T15:32:17.690019+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_SuccessReadingSourceMetadata"} +{"Time":"2024-09-24T15:32:17.690029+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_SuccessReadingSourceMetadata","Output":"=== RUN TestGetSourceMetadata_SuccessReadingSourceMetadata\n"} +{"Time":"2024-09-24T15:32:17.690039+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_SuccessReadingSourceMetadata","Output":"time=\"2024-09-24T15:29:19+05:30\" level=warning msg=\"failed to close connection to sourceDB metadata\"\n"} +{"Time":"2024-09-24T15:32:17.690048+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_SuccessReadingSourceMetadata","Output":"--- PASS: TestGetSourceMetadata_SuccessReadingSourceMetadata (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690053+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_SuccessReadingSourceMetadata","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690059+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_QueryErrorIfTableDoesNotExistOrColumnsUnavailable"} +{"Time":"2024-09-24T15:32:17.690064+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_QueryErrorIfTableDoesNotExistOrColumnsUnavailable","Output":"=== RUN TestGetSourceMetadata_QueryErrorIfTableDoesNotExistOrColumnsUnavailable\n"} +{"Time":"2024-09-24T15:32:17.690068+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_QueryErrorIfTableDoesNotExistOrColumnsUnavailable","Output":"--- PASS: TestGetSourceMetadata_QueryErrorIfTableDoesNotExistOrColumnsUnavailable (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690072+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_QueryErrorIfTableDoesNotExistOrColumnsUnavailable","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690077+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_RowScanError"} +{"Time":"2024-09-24T15:32:17.690081+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_RowScanError","Output":"=== RUN TestGetSourceMetadata_RowScanError\n"} +{"Time":"2024-09-24T15:32:17.690085+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_RowScanError","Output":"--- PASS: TestGetSourceMetadata_RowScanError (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690089+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_RowScanError","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690093+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_NoRows"} +{"Time":"2024-09-24T15:32:17.690096+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_NoRows","Output":"=== RUN TestGetSourceMetadata_NoRows\n"} +{"Time":"2024-09-24T15:32:17.6901+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_NoRows","Output":"time=\"2024-09-24T15:29:19+05:30\" level=warning msg=\"failed to close connection to sourceDB metadata\"\n"} +{"Time":"2024-09-24T15:32:17.690108+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_NoRows","Output":"--- PASS: TestGetSourceMetadata_NoRows (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690122+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_NoRows","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690125+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithSizePlacedInColocated"} +{"Time":"2024-09-24T15:32:17.690128+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithSizePlacedInColocated","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_TableWithSizePlacedInColocated\n"} +{"Time":"2024-09-24T15:32:17.690131+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithSizePlacedInColocated","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_TableWithSizePlacedInColocated (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690134+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithSizePlacedInColocated","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690136+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_WithIndexes_ColocateAll"} +{"Time":"2024-09-24T15:32:17.690139+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_WithIndexes_ColocateAll","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_WithIndexes_ColocateAll\n"} +{"Time":"2024-09-24T15:32:17.690142+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_WithIndexes_ColocateAll","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_WithIndexes_ColocateAll (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690145+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_WithIndexes_ColocateAll","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690147+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededBySize"} +{"Time":"2024-09-24T15:32:17.69015+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededBySize","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededBySize\n"} +{"Time":"2024-09-24T15:32:17.690153+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededBySize","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededBySize (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690155+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededBySize","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690158+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededByCount"} +{"Time":"2024-09-24T15:32:17.69016+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededByCount","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededByCount\n"} +{"Time":"2024-09-24T15:32:17.690164+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededByCount","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededByCount (0.01s)\n"} +{"Time":"2024-09-24T15:32:17.69017+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededByCount","Elapsed":0.01} +{"Time":"2024-09-24T15:32:17.690186+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_NoColocatedTables"} +{"Time":"2024-09-24T15:32:17.690189+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_NoColocatedTables","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_NoColocatedTables\n"} +{"Time":"2024-09-24T15:32:17.690192+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_NoColocatedTables","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_NoColocatedTables (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690194+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_NoColocatedTables","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690197+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithMoreThanThresholdIndexesAsSharded"} +{"Time":"2024-09-24T15:32:17.690199+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithMoreThanThresholdIndexesAsSharded","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_TableWithMoreThanThresholdIndexesAsSharded\n"} +{"Time":"2024-09-24T15:32:17.690206+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithMoreThanThresholdIndexesAsSharded","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_TableWithMoreThanThresholdIndexesAsSharded (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690209+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithMoreThanThresholdIndexesAsSharded","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690211+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithThresholdOrLessIndexesAsColocated"} +{"Time":"2024-09-24T15:32:17.690214+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithThresholdOrLessIndexesAsColocated","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_TableWithThresholdOrLessIndexesAsColocated\n"} +{"Time":"2024-09-24T15:32:17.690222+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithThresholdOrLessIndexesAsColocated","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_TableWithThresholdOrLessIndexesAsColocated (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690224+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithThresholdOrLessIndexesAsColocated","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690227+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CanSupportOpsRequirement"} +{"Time":"2024-09-24T15:32:17.69023+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CanSupportOpsRequirement","Output":"=== RUN TestShardingBasedOnOperations_CanSupportOpsRequirement\n"} +{"Time":"2024-09-24T15:32:17.690232+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CanSupportOpsRequirement","Output":"--- PASS: TestShardingBasedOnOperations_CanSupportOpsRequirement (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690238+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CanSupportOpsRequirement","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690241+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CannotSupportOpsAndNeedsSharding"} +{"Time":"2024-09-24T15:32:17.690243+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CannotSupportOpsAndNeedsSharding","Output":"=== RUN TestShardingBasedOnOperations_CannotSupportOpsAndNeedsSharding\n"} +{"Time":"2024-09-24T15:32:17.690246+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CannotSupportOpsAndNeedsSharding","Output":"--- PASS: TestShardingBasedOnOperations_CannotSupportOpsAndNeedsSharding (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690249+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CannotSupportOpsAndNeedsSharding","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690251+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_WithinLimit"} +{"Time":"2024-09-24T15:32:17.690254+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_WithinLimit","Output":"=== RUN TestCheckShardedTableLimit_WithinLimit\n"} +{"Time":"2024-09-24T15:32:17.690259+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_WithinLimit","Output":"--- PASS: TestCheckShardedTableLimit_WithinLimit (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690262+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_WithinLimit","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690264+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_LimitExceeded"} +{"Time":"2024-09-24T15:32:17.690267+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_LimitExceeded","Output":"=== RUN TestCheckShardedTableLimit_LimitExceeded\n"} +{"Time":"2024-09-24T15:32:17.69027+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_LimitExceeded","Output":"--- PASS: TestCheckShardedTableLimit_LimitExceeded (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690276+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_LimitExceeded","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690279+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_CanSupportOps"} +{"Time":"2024-09-24T15:32:17.690283+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_CanSupportOps","Output":"=== RUN TestFindNumNodesNeededBasedOnThroughputRequirement_CanSupportOps\n"} +{"Time":"2024-09-24T15:32:17.690286+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_CanSupportOps","Output":"--- PASS: TestFindNumNodesNeededBasedOnThroughputRequirement_CanSupportOps (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690289+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_CanSupportOps","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690295+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_NeedMoreNodes"} +{"Time":"2024-09-24T15:32:17.690298+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_NeedMoreNodes","Output":"=== RUN TestFindNumNodesNeededBasedOnThroughputRequirement_NeedMoreNodes\n"} +{"Time":"2024-09-24T15:32:17.690301+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_NeedMoreNodes","Output":"--- PASS: TestFindNumNodesNeededBasedOnThroughputRequirement_NeedMoreNodes (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690303+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_NeedMoreNodes","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690306+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_CanSupportTablets"} +{"Time":"2024-09-24T15:32:17.690308+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_CanSupportTablets","Output":"=== RUN TestFindNumNodesNeededBasedOnTabletsRequired_CanSupportTablets\n"} +{"Time":"2024-09-24T15:32:17.690311+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_CanSupportTablets","Output":"--- PASS: TestFindNumNodesNeededBasedOnTabletsRequired_CanSupportTablets (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690314+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_CanSupportTablets","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690316+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_NeedMoreNodes"} +{"Time":"2024-09-24T15:32:17.690319+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_NeedMoreNodes","Output":"=== RUN TestFindNumNodesNeededBasedOnTabletsRequired_NeedMoreNodes\n"} +{"Time":"2024-09-24T15:32:17.690323+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_NeedMoreNodes","Output":"--- PASS: TestFindNumNodesNeededBasedOnTabletsRequired_NeedMoreNodes (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690326+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_NeedMoreNodes","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690328+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCores"} +{"Time":"2024-09-24T15:32:17.690331+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCores","Output":"=== RUN TestPickBestRecommendation_PickOneWithOptimalNodesAndCores\n"} +{"Time":"2024-09-24T15:32:17.690335+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCores","Output":"--- PASS: TestPickBestRecommendation_PickOneWithOptimalNodesAndCores (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690339+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCores","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690343+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCoresWhenSomeHasFailures"} +{"Time":"2024-09-24T15:32:17.690348+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCoresWhenSomeHasFailures","Output":"=== RUN TestPickBestRecommendation_PickOneWithOptimalNodesAndCoresWhenSomeHasFailures\n"} +{"Time":"2024-09-24T15:32:17.690351+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCoresWhenSomeHasFailures","Output":"--- PASS: TestPickBestRecommendation_PickOneWithOptimalNodesAndCoresWhenSomeHasFailures (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690354+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCoresWhenSomeHasFailures","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690356+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport"} +{"Time":"2024-09-24T15:32:17.690359+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport","Output":"=== RUN TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport\n"} +{"Time":"2024-09-24T15:32:17.690362+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport","Output":"--- PASS: TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690368+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690373+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated"} +{"Time":"2024-09-24T15:32:17.690375+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated\n"} +{"Time":"2024-09-24T15:32:17.690378+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690387+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated","Elapsed":0} +{"Time":"2024-09-24T15:32:17.69039+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated"} +{"Time":"2024-09-24T15:32:17.690392+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated\n"} +{"Time":"2024-09-24T15:32:17.690395+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690401+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690403+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated"} +{"Time":"2024-09-24T15:32:17.690406+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated\n"} +{"Time":"2024-09-24T15:32:17.690409+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690411+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690414+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded"} +{"Time":"2024-09-24T15:32:17.690416+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded\n"} +{"Time":"2024-09-24T15:32:17.690419+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690422+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690424+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded"} +{"Time":"2024-09-24T15:32:17.690427+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded\n"} +{"Time":"2024-09-24T15:32:17.69043+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690432+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690435+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded"} +{"Time":"2024-09-24T15:32:17.69044+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded\n"} +{"Time":"2024-09-24T15:32:17.690444+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690446+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690449+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated"} +{"Time":"2024-09-24T15:32:17.690454+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated\n"} +{"Time":"2024-09-24T15:32:17.690456+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690459+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690462+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated"} +{"Time":"2024-09-24T15:32:17.690464+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated\n"} +{"Time":"2024-09-24T15:32:17.690467+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.69047+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690472+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated"} +{"Time":"2024-09-24T15:32:17.690475+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated\n"} +{"Time":"2024-09-24T15:32:17.690481+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690484+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690487+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated"} +{"Time":"2024-09-24T15:32:17.690489+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated\n"} +{"Time":"2024-09-24T15:32:17.690492+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690495+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690497+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_NoObjects"} +{"Time":"2024-09-24T15:32:17.6905+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_NoObjects","Output":"=== RUN TestGetReasoning_NoObjects\n"} +{"Time":"2024-09-24T15:32:17.690503+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_NoObjects","Output":"--- PASS: TestGetReasoning_NoObjects (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690505+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_NoObjects","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690508+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyColocatedObjects"} +{"Time":"2024-09-24T15:32:17.69051+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyColocatedObjects","Output":"=== RUN TestGetReasoning_OnlyColocatedObjects\n"} +{"Time":"2024-09-24T15:32:17.690513+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyColocatedObjects","Output":"--- PASS: TestGetReasoning_OnlyColocatedObjects (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690515+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyColocatedObjects","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690519+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyShardedObjects"} +{"Time":"2024-09-24T15:32:17.690522+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyShardedObjects","Output":"=== RUN TestGetReasoning_OnlyShardedObjects\n"} +{"Time":"2024-09-24T15:32:17.690525+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyShardedObjects","Output":"--- PASS: TestGetReasoning_OnlyShardedObjects (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.69053+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyShardedObjects","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690532+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_ColocatedAndShardedObjects"} +{"Time":"2024-09-24T15:32:17.690535+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_ColocatedAndShardedObjects","Output":"=== RUN TestGetReasoning_ColocatedAndShardedObjects\n"} +{"Time":"2024-09-24T15:32:17.690538+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_ColocatedAndShardedObjects","Output":"--- PASS: TestGetReasoning_ColocatedAndShardedObjects (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.69054+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_ColocatedAndShardedObjects","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690543+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_Indexes"} +{"Time":"2024-09-24T15:32:17.690545+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_Indexes","Output":"=== RUN TestGetReasoning_Indexes\n"} +{"Time":"2024-09-24T15:32:17.690548+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_Indexes","Output":"--- PASS: TestGetReasoning_Indexes (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690551+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_Indexes","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690553+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetThresholdAndTablets"} +{"Time":"2024-09-24T15:32:17.690555+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetThresholdAndTablets","Output":"=== RUN TestGetThresholdAndTablets\n"} +{"Time":"2024-09-24T15:32:17.690558+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetThresholdAndTablets","Output":"--- PASS: TestGetThresholdAndTablets (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690561+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetThresholdAndTablets","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690563+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_RowsArePreferred"} +{"Time":"2024-09-24T15:32:17.690565+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_RowsArePreferred","Output":"=== RUN TestFindImportTimeFromExpDataLoadTime_RowsArePreferred\n"} +{"Time":"2024-09-24T15:32:17.690568+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_RowsArePreferred","Output":"--- PASS: TestFindImportTimeFromExpDataLoadTime_RowsArePreferred (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690571+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_RowsArePreferred","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690573+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_SizePreferredIfRowsAreSame"} +{"Time":"2024-09-24T15:32:17.690576+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_SizePreferredIfRowsAreSame","Output":"=== RUN TestFindImportTimeFromExpDataLoadTime_SizePreferredIfRowsAreSame\n"} +{"Time":"2024-09-24T15:32:17.690581+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_SizePreferredIfRowsAreSame","Output":"--- PASS: TestFindImportTimeFromExpDataLoadTime_SizePreferredIfRowsAreSame (0.00s)\n"} +{"Time":"2024-09-24T15:32:17.690584+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_SizePreferredIfRowsAreSame","Elapsed":0} +{"Time":"2024-09-24T15:32:17.690586+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Output":"PASS\n"} +{"Time":"2024-09-24T15:32:17.690591+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Output":"ok \tgithub.com/yugabyte/yb-voyager/yb-voyager/src/migassessment\t(cached)\n"} +{"Time":"2024-09-24T15:32:17.690595+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Elapsed":0.001} From 79ac6ab02c64a2802df328e688c8033cf1b93f5c Mon Sep 17 00:00:00 2001 From: shaharuk-yb Date: Thu, 28 Nov 2024 13:16:54 +0530 Subject: [PATCH 2/4] additional changes --- yb-voyager/src/migassessment/common.go | 1 - yb-voyager/src/migassessment/sizing.go | 29 ++--- yb-voyager/src/migassessment/sizing_test.go | 132 ++++++++------------ 3 files changed, 59 insertions(+), 103 deletions(-) diff --git a/yb-voyager/src/migassessment/common.go b/yb-voyager/src/migassessment/common.go index acc05a7dc7..1046e612a7 100644 --- a/yb-voyager/src/migassessment/common.go +++ b/yb-voyager/src/migassessment/common.go @@ -36,7 +36,6 @@ type SizingRecommendation struct { OptimalSelectConnectionsPerNode int64 OptimalInsertConnectionsPerNode int64 EstimatedTimeInMinForImport float64 - //ParallelVoyagerJobs float64 } type SizingAssessmentReport struct { diff --git a/yb-voyager/src/migassessment/sizing.go b/yb-voyager/src/migassessment/sizing.go index f62689cc86..edaa54e7c7 100644 --- a/yb-voyager/src/migassessment/sizing.go +++ b/yb-voyager/src/migassessment/sizing.go @@ -73,7 +73,6 @@ type ExpDataThroughput struct { type ExpDataLoadTime struct { csvSizeGB sql.NullFloat64 `db:"csv_size_gb,string"` migrationTimeSecs sql.NullFloat64 `db:"migration_time_secs,string"` - parallelThreads sql.NullInt64 `db:"parallel_threads,string"` rowCount sql.NullFloat64 `db:"row_count,string"` } @@ -100,7 +99,6 @@ type IntermediateRecommendation struct { OptimalSelectConnectionsPerNode int64 OptimalInsertConnectionsPerNode int64 EstimatedTimeInMinForImport float64 - ParallelVoyagerJobs float64 FailureReasoning string } @@ -231,7 +229,7 @@ func SizingAssessment() error { } // calculate time taken for colocated import - importTimeForColocatedObjects, _, err := calculateTimeTakenAndParallelJobsForImport( + importTimeForColocatedObjects, err := calculateTimeTakenForImport( finalSizingRecommendation.ColocatedTables, sourceIndexMetadata, colocatedLoadTimes, indexImpactOnLoadTimeCommon, columnsImpactOnLoadTimeCommon, COLOCATED) if err != nil { @@ -240,7 +238,7 @@ func SizingAssessment() error { } // calculate time taken for sharded import - importTimeForShardedObjects, _, err := calculateTimeTakenAndParallelJobsForImport( + importTimeForShardedObjects, err := calculateTimeTakenForImport( finalSizingRecommendation.ShardedTables, sourceIndexMetadata, shardedLoadTimes, indexImpactOnLoadTimeCommon, columnsImpactOnLoadTimeCommon, SHARDED) if err != nil { @@ -258,9 +256,8 @@ func SizingAssessment() error { NumNodes: finalSizingRecommendation.NumNodes, OptimalSelectConnectionsPerNode: finalSizingRecommendation.OptimalSelectConnectionsPerNode, OptimalInsertConnectionsPerNode: finalSizingRecommendation.OptimalInsertConnectionsPerNode, - //ParallelVoyagerJobs: math.Min(float64(parallelVoyagerJobsColocated), float64(parallelVoyagerJobsSharded)), - ColocatedReasoning: reasoning, - EstimatedTimeInMinForImport: importTimeForColocatedObjects + importTimeForShardedObjects, + ColocatedReasoning: reasoning, + EstimatedTimeInMinForImport: importTimeForColocatedObjects + importTimeForShardedObjects, } SizingReport.SizingRecommendation = *sizingRecommendation @@ -368,7 +365,6 @@ func findNumNodesNeededBasedOnThroughputRequirement(sourceIndexMetadata []Source NumNodes: nodesNeeded, OptimalSelectConnectionsPerNode: int64(math.Min(float64(previousRecommendation.OptimalSelectConnectionsPerNode), float64(shardedThroughput.selectConnPerNode.Int64))), OptimalInsertConnectionsPerNode: int64(math.Min(float64(previousRecommendation.OptimalInsertConnectionsPerNode), float64(shardedThroughput.insertConnPerNode.Int64))), - ParallelVoyagerJobs: previousRecommendation.ParallelVoyagerJobs, ColocatedSize: previousRecommendation.ColocatedSize, ShardedSize: previousRecommendation.ShardedSize, EstimatedTimeInMinForImport: previousRecommendation.EstimatedTimeInMinForImport, @@ -539,7 +535,6 @@ func checkShardedTableLimit(sourceIndexMetadata []SourceDBMetadata, shardedLimit NumNodes: previousRecommendation.NumNodes, OptimalSelectConnectionsPerNode: previousRecommendation.OptimalSelectConnectionsPerNode, OptimalInsertConnectionsPerNode: previousRecommendation.OptimalInsertConnectionsPerNode, - ParallelVoyagerJobs: previousRecommendation.ParallelVoyagerJobs, ColocatedSize: 0, ShardedSize: 0, EstimatedTimeInMinForImport: previousRecommendation.EstimatedTimeInMinForImport, @@ -622,7 +617,6 @@ func shardingBasedOnOperations(sourceIndexMetadata []SourceDBMetadata, NumNodes: previousRecommendation.NumNodes, OptimalSelectConnectionsPerNode: colocatedThroughput.selectConnPerNode.Int64, OptimalInsertConnectionsPerNode: colocatedThroughput.insertConnPerNode.Int64, - ParallelVoyagerJobs: previousRecommendation.ParallelVoyagerJobs, ColocatedSize: cumulativeColocatedSizeSum, ShardedSize: cumulativeSizeSharded, EstimatedTimeInMinForImport: previousRecommendation.EstimatedTimeInMinForImport, @@ -702,7 +696,6 @@ func shardingBasedOnTableSizeAndCount(sourceTableMetadata []SourceDBMetadata, NumNodes: previousRecommendation.NumNodes, OptimalSelectConnectionsPerNode: previousRecommendation.OptimalSelectConnectionsPerNode, OptimalInsertConnectionsPerNode: previousRecommendation.OptimalInsertConnectionsPerNode, - ParallelVoyagerJobs: previousRecommendation.ParallelVoyagerJobs, ColocatedSize: cumulativeColocatedSizeSum, ShardedSize: cumulativeSizeSharded, EstimatedTimeInMinForImport: previousRecommendation.EstimatedTimeInMinForImport, @@ -881,7 +874,7 @@ func createSizingRecommendationStructure(colocatedLimits []ExpDataColocatedLimit } /* -calculateTimeTakenAndParallelJobsForImport estimates the time taken for import of tables. +calculateTimeTakenForImport estimates the time taken for import of tables. It queries experimental data to find import time estimates for similar object sizes and configurations. For every table , it tries to find out how much time it would table for importing that table. The function adjusts the import time on that table by multiplying it by factor based on the indexes. The import time is also converted to @@ -897,13 +890,12 @@ Parameters: Returns: float64: The estimated time taken for import in minutes. - int64: Total parallel jobs used for import. error: Error if any */ -func calculateTimeTakenAndParallelJobsForImport(tables []SourceDBMetadata, +func calculateTimeTakenForImport(tables []SourceDBMetadata, sourceIndexMetadata []SourceDBMetadata, loadTimes []ExpDataLoadTime, indexImpactData []ExpDataLoadTimeIndexImpact, numColumnImpactData []ExpDataLoadTimeColumnsImpact, - objectType string) (float64, int64, error) { + objectType string) (float64, error) { var importTime float64 // we need to calculate the time taken for import for every table. @@ -926,7 +918,7 @@ func calculateTimeTakenAndParallelJobsForImport(tables []SourceDBMetadata, importTime += (loadTimeMultiplicationFactorWrtIndexes * loadTimeMultiplicationFactorWrtNumColumns * tableImportTimeSec) / 60 } - return math.Ceil(importTime), loadTimes[0].parallelThreads.Int64, nil + return math.Ceil(importTime), nil } /* @@ -945,8 +937,7 @@ Returns: func getExpDataLoadTime(experimentDB *sql.DB, vCPUPerInstance int, memPerCore int, tableType string) ([]ExpDataLoadTime, error) { selectQuery := fmt.Sprintf(` SELECT csv_size_gb, - migration_time_secs, - parallel_threads, + migration_time_secs, row_count FROM %v WHERE num_cores = ? @@ -967,7 +958,7 @@ func getExpDataLoadTime(experimentDB *sql.DB, vCPUPerInstance int, memPerCore in var loadTimes []ExpDataLoadTime for rows.Next() { var loadTime ExpDataLoadTime - if err = rows.Scan(&loadTime.csvSizeGB, &loadTime.migrationTimeSecs, &loadTime.parallelThreads, &loadTime.rowCount); err != nil { + if err = rows.Scan(&loadTime.csvSizeGB, &loadTime.migrationTimeSecs, &loadTime.rowCount); err != nil { return nil, fmt.Errorf("cannot fetch data from experiment data table with query [%s]: %w", selectQuery, err) } diff --git a/yb-voyager/src/migassessment/sizing_test.go b/yb-voyager/src/migassessment/sizing_test.go index bdf28050fc..d868fccd08 100644 --- a/yb-voyager/src/migassessment/sizing_test.go +++ b/yb-voyager/src/migassessment/sizing_test.go @@ -896,10 +896,10 @@ func TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport( } /* -===== Test functions to test calculateTimeTakenAndParallelJobsForImport function ===== +===== Test functions to test calculateTimeTakenForImport function ===== */ // validate the formula to calculate the import time for colocated table without index -func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated(t *testing.T) { +func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithoutIndex_Colocated(t *testing.T) { // Define test data colocatedTables := []SourceDBMetadata{ { @@ -913,11 +913,9 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000}, }, } var indexImpacts []ExpDataLoadTimeIndexImpact @@ -930,7 +928,7 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho } // Call the function - estimatedTime, parallelJobs, err := calculateTimeTakenAndParallelJobsForImport(colocatedTables, + estimatedTime, err := calculateTimeTakenForImport(colocatedTables, sourceIndexMetadata, colocatedLoadTimes, indexImpacts, columnImpacts, COLOCATED) if err != nil { t.Errorf("Unexpected error: %v", err) @@ -939,16 +937,14 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho // Define expected results // Calculated as table0: 1 * ((1134 * 23) / 19) / 60 expectedTime := 23.0 - expectedJobs := int64(1) - if estimatedTime != expectedTime || parallelJobs != expectedJobs { - t.Errorf("calculateTimeTakenAndParallelJobsForImport() = (%v, %v), want (%v, %v)", - estimatedTime, parallelJobs, expectedTime, expectedJobs) + if estimatedTime != expectedTime { + t.Errorf("calculateTimeTakenForImport() = (%v), want (%v)", estimatedTime, expectedTime) } } // validate the formula to calculate the import time for colocated table with one index -func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated(t *testing.T) { +func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithOneIndex_Colocated(t *testing.T) { // Define test data colocatedTables := []SourceDBMetadata{ { @@ -963,11 +959,9 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithO colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1461}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 2009}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } @@ -986,7 +980,7 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithO } // Call the function - estimatedTime, parallelJobs, err := calculateTimeTakenAndParallelJobsForImport(colocatedTables, + estimatedTime, err := calculateTimeTakenForImport(colocatedTables, sourceIndexMetadata, colocatedLoadTimes, indexImpacts, columnImpacts, COLOCATED) if err != nil { t.Errorf("Unexpected error: %v", err) @@ -995,16 +989,14 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithO // Define expected results // Calculated as table0: 1.77777 * ((1461 * 23) / 19) / 60 expectedTime := 53.0 // double the time required when there are no indexes. - expectedJobs := int64(1) - if estimatedTime != expectedTime || parallelJobs != expectedJobs { - t.Errorf("calculateTimeTakenAndParallelJobsForImport() = (%v, %v), want (%v, %v)", - estimatedTime, parallelJobs, expectedTime, expectedJobs) + if estimatedTime != expectedTime { + t.Errorf("calculateTimeTakenForImport() = (%v), want (%v)", estimatedTime, expectedTime) } } // validate the formula to calculate the import time for colocated table with 5 indexes -func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated(t *testing.T) { +func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithFiveIndexes_Colocated(t *testing.T) { // Define test data colocatedTables := []SourceDBMetadata{ { @@ -1022,11 +1014,9 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithF colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1461}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 2009}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } //TODO: modify index impact with actual colocated data when it is available and adjust the calculations @@ -1042,7 +1032,7 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithF }, } // Call the function - estimatedTime, parallelJobs, err := calculateTimeTakenAndParallelJobsForImport(colocatedTables, + estimatedTime, err := calculateTimeTakenForImport(colocatedTables, sourceIndexMetadata, colocatedLoadTimes, indexImpacts, columnsImpact, COLOCATED) if err != nil { t.Errorf("Unexpected error: %v", err) @@ -1051,16 +1041,14 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithF // Define expected results // Calculated as table0: 4.66666 * ((1461 * 23) / 19) / 60 expectedTime := 138.0 - expectedJobs := int64(1) - if estimatedTime != expectedTime || parallelJobs != expectedJobs { - t.Errorf("calculateTimeTakenAndParallelJobsForImport() = (%v, %v), want (%v, %v)", - estimatedTime, parallelJobs, expectedTime, expectedJobs) + if estimatedTime != expectedTime { + t.Errorf("calculateTimeTakenForImport() = (%v), want (%v)", estimatedTime, expectedTime) } } // validate the formula to calculate the import time for sharded table without index -func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded(t *testing.T) { +func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithoutIndex_Sharded(t *testing.T) { // Define test data shardedTables := []SourceDBMetadata{ { @@ -1072,11 +1060,9 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho shardedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } var indexImpacts []ExpDataLoadTimeIndexImpact @@ -1088,7 +1074,7 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho }, } // Call the function - estimatedTime, parallelJobs, err := calculateTimeTakenAndParallelJobsForImport(shardedTables, sourceIndexMetadata, + estimatedTime, err := calculateTimeTakenForImport(shardedTables, sourceIndexMetadata, shardedLoadTimes, indexImpacts, columnsImpact, SHARDED) if err != nil { t.Errorf("Unexpected error: %v", err) @@ -1097,16 +1083,14 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho // Define expected results // Calculated as table0: 1 * ((1134 * 23) / 19) / 60 expectedTime := 23.0 - expectedJobs := int64(1) - if estimatedTime != expectedTime || parallelJobs != expectedJobs { - t.Errorf("calculateTimeTakenAndParallelJobsForImport() = (%v, %v), want (%v, %v)", - estimatedTime, parallelJobs, expectedTime, expectedJobs) + if estimatedTime != expectedTime { + t.Errorf("calculateTimeTakenForImport() = (%v), want (%v)", estimatedTime, expectedTime) } } // validate the formula to calculate the import time for sharded table with one index -func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded(t *testing.T) { +func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithOneIndex_Sharded(t *testing.T) { // Define test data shardedTables := []SourceDBMetadata{ { @@ -1120,11 +1104,9 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithO shardedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } indexImpacts := []ExpDataLoadTimeIndexImpact{ @@ -1138,8 +1120,8 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithO }, } // Call the function - estimatedTime, parallelJobs, err := - calculateTimeTakenAndParallelJobsForImport(shardedTables, sourceIndexMetadata, shardedLoadTimes, + estimatedTime, err := + calculateTimeTakenForImport(shardedTables, sourceIndexMetadata, shardedLoadTimes, indexImpacts, columnsImpact, SHARDED) if err != nil { t.Errorf("Unexpected error: %v", err) @@ -1148,16 +1130,15 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithO // Define expected results // Calculated as table0: 1.76 * ((1134 * 23) / 19) / 60 expectedTime := 41.0 // double the time required when there are no indexes. - expectedJobs := int64(1) - if estimatedTime != expectedTime || parallelJobs != expectedJobs { - t.Errorf("calculateTimeTakenAndParallelJobsForImport() = (%v, %v), want (%v, %v)", - estimatedTime, parallelJobs, expectedTime, expectedJobs) + + if estimatedTime != expectedTime { + t.Errorf("calculateTimeTakenForImport() = (%v), want (%v)", estimatedTime, expectedTime) } } // validate the formula to calculate the import time for sharded table with 5 indexes -func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded(t *testing.T) { +func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithFiveIndexes_Sharded(t *testing.T) { // Define test data shardedTables := []SourceDBMetadata{ { @@ -1175,11 +1156,9 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithF shardedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } @@ -1195,8 +1174,8 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithF }, } // Call the function - estimatedTime, parallelJobs, err := - calculateTimeTakenAndParallelJobsForImport(shardedTables, sourceIndexMetadata, shardedLoadTimes, + estimatedTime, err := + calculateTimeTakenForImport(shardedTables, sourceIndexMetadata, shardedLoadTimes, indexImpacts, columnsImpact, SHARDED) if err != nil { t.Errorf("Unexpected error: %v", err) @@ -1205,16 +1184,15 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithF // Define expected results // Calculated as table0: 4.6 * ((1134 * 23) / 19) / 60 expectedTime := 106.0 - expectedJobs := int64(1) - if estimatedTime != expectedTime || parallelJobs != expectedJobs { - t.Errorf("calculateTimeTakenAndParallelJobsForImport() = (%v, %v), want (%v, %v)", - estimatedTime, parallelJobs, expectedTime, expectedJobs) + + if estimatedTime != expectedTime { + t.Errorf("calculateTimeTakenForImport() = (%v), want (%v)", estimatedTime, expectedTime) } } // validate the formula to calculate the import time for colocated table without index having 5 columns -func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated(t *testing.T) { +func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated(t *testing.T) { // Define test data colocatedTables := []SourceDBMetadata{ { @@ -1226,11 +1204,9 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } var indexImpacts []ExpDataLoadTimeIndexImpact // doesn't have any impact as there are no indexes @@ -1243,7 +1219,7 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho } // Call the function - estimatedTime, parallelJobs, err := calculateTimeTakenAndParallelJobsForImport(colocatedTables, + estimatedTime, err := calculateTimeTakenForImport(colocatedTables, sourceIndexMetadata, colocatedLoadTimes, indexImpacts, columnImpacts, COLOCATED) if err != nil { t.Errorf("Unexpected error: %v", err) @@ -1252,16 +1228,15 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho // Define expected results // Calculated as table0: 1 * ((1134 * 23) / 19) / 60 expectedTime := 23.0 - expectedJobs := int64(1) - if estimatedTime != expectedTime || parallelJobs != expectedJobs { - t.Errorf("calculateTimeTakenAndParallelJobsForImport() = (%v, %v), want (%v, %v)", - estimatedTime, parallelJobs, expectedTime, expectedJobs) + + if estimatedTime != expectedTime { + t.Errorf("calculateTimeTakenForImport() = (%v), want (%v)", estimatedTime, expectedTime) } } // validate the formula to calculate the import time for colocated table without index having 40 columns -func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated(t *testing.T) { +func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated(t *testing.T) { // Define test data colocatedTables := []SourceDBMetadata{ { @@ -1273,11 +1248,9 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } var indexImpacts []ExpDataLoadTimeIndexImpact // doesn't have any impact as there are no indexes @@ -1295,7 +1268,7 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho } // Call the function - estimatedTime, parallelJobs, err := calculateTimeTakenAndParallelJobsForImport(colocatedTables, + estimatedTime, err := calculateTimeTakenForImport(colocatedTables, sourceIndexMetadata, colocatedLoadTimes, indexImpacts, columnImpacts, COLOCATED) if err != nil { t.Errorf("Unexpected error: %v", err) @@ -1304,16 +1277,15 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho // Define expected results // Calculated as table0: 1.57 * ((1134 * 23) / 19) / 60 expectedTime := 36.0 - expectedJobs := int64(1) - if estimatedTime != expectedTime || parallelJobs != expectedJobs { - t.Errorf("calculateTimeTakenAndParallelJobsForImport() = (%v, %v), want (%v, %v)", - estimatedTime, parallelJobs, expectedTime, expectedJobs) + + if estimatedTime != expectedTime { + t.Errorf("calculateTimeTakenForImport() = (%v), want (%v)", estimatedTime, expectedTime) } } // validate the formula to calculate the import time for colocated table without index having 100 columns -func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated(t *testing.T) { +func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated(t *testing.T) { // Define test data colocatedTables := []SourceDBMetadata{ { @@ -1325,11 +1297,9 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } var indexImpacts []ExpDataLoadTimeIndexImpact // doesn't have any impact as there are no indexes @@ -1347,7 +1317,7 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho } // Call the function - estimatedTime, parallelJobs, err := calculateTimeTakenAndParallelJobsForImport(colocatedTables, + estimatedTime, err := calculateTimeTakenForImport(colocatedTables, sourceIndexMetadata, colocatedLoadTimes, indexImpacts, columnImpacts, COLOCATED) if err != nil { t.Errorf("Unexpected error: %v", err) @@ -1357,16 +1327,15 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho // multiplication factor: high MF of 160 columns ==> 4.13 // Calculated as table0: 4.13 * ((1134 * 23) / 19) / 60 expectedTime := 95.0 - expectedJobs := int64(1) - if estimatedTime != expectedTime || parallelJobs != expectedJobs { - t.Errorf("calculateTimeTakenAndParallelJobsForImport() = (%v, %v), want (%v, %v)", - estimatedTime, parallelJobs, expectedTime, expectedJobs) + + if estimatedTime != expectedTime { + t.Errorf("calculateTimeTakenForImport() = (%v), want (%v)", estimatedTime, expectedTime) } } // validate the formula to calculate the import time for colocated table without index having 250 columns -func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated(t *testing.T) { +func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated(t *testing.T) { // Define test data colocatedTables := []SourceDBMetadata{ { @@ -1378,11 +1347,9 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, - parallelThreads: sql.NullInt64{Int64: 1}, rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } var indexImpacts []ExpDataLoadTimeIndexImpact // doesn't have any impact as there are no indexes @@ -1400,7 +1367,7 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho } // Call the function - estimatedTime, parallelJobs, err := calculateTimeTakenAndParallelJobsForImport(colocatedTables, + estimatedTime, err := calculateTimeTakenForImport(colocatedTables, sourceIndexMetadata, colocatedLoadTimes, indexImpacts, columnImpacts, COLOCATED) if err != nil { t.Errorf("Unexpected error: %v", err) @@ -1410,10 +1377,9 @@ func TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWitho // multiplication factor: closest MF of 160 columns ==> (4.13/160 : x/250) ==> x = 6.45 // Calculated as table0: 6.45 * ((1134 * 23) / 19) / 60 expectedTime := 148.0 - expectedJobs := int64(1) - if estimatedTime != expectedTime || parallelJobs != expectedJobs { - t.Errorf("calculateTimeTakenAndParallelJobsForImport() = (%v, %v), want (%v, %v)", - estimatedTime, parallelJobs, expectedTime, expectedJobs) + + if estimatedTime != expectedTime { + t.Errorf("calculateTimeTakenForImport() = (%v), want (%v)", estimatedTime, expectedTime) } } From 947ac5a20ee33eae0f83afb8b7e7012c3c6681cd Mon Sep 17 00:00:00 2001 From: shaharuk-yb Date: Thu, 28 Nov 2024 13:33:35 +0530 Subject: [PATCH 3/4] fixing unit tests --- yb-voyager/src/migassessment/sizing_test.go | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/yb-voyager/src/migassessment/sizing_test.go b/yb-voyager/src/migassessment/sizing_test.go index d868fccd08..6852b0857f 100644 --- a/yb-voyager/src/migassessment/sizing_test.go +++ b/yb-voyager/src/migassessment/sizing_test.go @@ -913,9 +913,11 @@ func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithoutIndex_Colocat colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, + rowCount: sql.NullFloat64{Float64: 100000}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, + rowCount: sql.NullFloat64{Float64: 100000}, }, } var indexImpacts []ExpDataLoadTimeIndexImpact @@ -959,9 +961,11 @@ func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithOneIndex_Colocat colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1461}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 2009}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } @@ -1014,9 +1018,11 @@ func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithFiveIndexes_Colo colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1461}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 2009}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } //TODO: modify index impact with actual colocated data when it is available and adjust the calculations @@ -1060,9 +1066,11 @@ func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithoutIndex_Sharded shardedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } var indexImpacts []ExpDataLoadTimeIndexImpact @@ -1104,9 +1112,11 @@ func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithOneIndex_Sharded shardedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } indexImpacts := []ExpDataLoadTimeIndexImpact{ @@ -1156,9 +1166,11 @@ func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithFiveIndexes_Shar shardedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } @@ -1204,9 +1216,11 @@ func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithoutIndex5Columns colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } var indexImpacts []ExpDataLoadTimeIndexImpact // doesn't have any impact as there are no indexes @@ -1248,9 +1262,11 @@ func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithoutIndex40Column colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } var indexImpacts []ExpDataLoadTimeIndexImpact // doesn't have any impact as there are no indexes @@ -1297,9 +1313,11 @@ func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithoutIndex100Colum colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } var indexImpacts []ExpDataLoadTimeIndexImpact // doesn't have any impact as there are no indexes @@ -1347,9 +1365,11 @@ func TestCalculateTimeTakenForImport_ValidateImportTimeTableWithoutIndex250Colum colocatedLoadTimes := []ExpDataLoadTime{ { csvSizeGB: sql.NullFloat64{Float64: 19}, migrationTimeSecs: sql.NullFloat64{Float64: 1134}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, { csvSizeGB: sql.NullFloat64{Float64: 29}, migrationTimeSecs: sql.NullFloat64{Float64: 1657}, + rowCount: sql.NullFloat64{Float64: 100000, Valid: true}, }, } var indexImpacts []ExpDataLoadTimeIndexImpact // doesn't have any impact as there are no indexes From a50fa959681e6f92082f2191d1f8984047ffaee5 Mon Sep 17 00:00:00 2001 From: shaharuk-yb Date: Mon, 2 Dec 2024 12:17:56 +0530 Subject: [PATCH 4/4] removed unnecessary file, rebased with latest main --- yb-voyager/src/migassessment/test_report.json | 166 ------------------ 1 file changed, 166 deletions(-) delete mode 100644 yb-voyager/src/migassessment/test_report.json diff --git a/yb-voyager/src/migassessment/test_report.json b/yb-voyager/src/migassessment/test_report.json deleted file mode 100644 index 62f95dcf54..0000000000 --- a/yb-voyager/src/migassessment/test_report.json +++ /dev/null @@ -1,166 +0,0 @@ -{"Time":"2024-09-24T15:32:17.689916+05:30","Action":"start","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment"} -{"Time":"2024-09-24T15:32:17.690019+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_SuccessReadingSourceMetadata"} -{"Time":"2024-09-24T15:32:17.690029+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_SuccessReadingSourceMetadata","Output":"=== RUN TestGetSourceMetadata_SuccessReadingSourceMetadata\n"} -{"Time":"2024-09-24T15:32:17.690039+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_SuccessReadingSourceMetadata","Output":"time=\"2024-09-24T15:29:19+05:30\" level=warning msg=\"failed to close connection to sourceDB metadata\"\n"} -{"Time":"2024-09-24T15:32:17.690048+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_SuccessReadingSourceMetadata","Output":"--- PASS: TestGetSourceMetadata_SuccessReadingSourceMetadata (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690053+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_SuccessReadingSourceMetadata","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690059+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_QueryErrorIfTableDoesNotExistOrColumnsUnavailable"} -{"Time":"2024-09-24T15:32:17.690064+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_QueryErrorIfTableDoesNotExistOrColumnsUnavailable","Output":"=== RUN TestGetSourceMetadata_QueryErrorIfTableDoesNotExistOrColumnsUnavailable\n"} -{"Time":"2024-09-24T15:32:17.690068+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_QueryErrorIfTableDoesNotExistOrColumnsUnavailable","Output":"--- PASS: TestGetSourceMetadata_QueryErrorIfTableDoesNotExistOrColumnsUnavailable (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690072+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_QueryErrorIfTableDoesNotExistOrColumnsUnavailable","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690077+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_RowScanError"} -{"Time":"2024-09-24T15:32:17.690081+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_RowScanError","Output":"=== RUN TestGetSourceMetadata_RowScanError\n"} -{"Time":"2024-09-24T15:32:17.690085+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_RowScanError","Output":"--- PASS: TestGetSourceMetadata_RowScanError (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690089+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_RowScanError","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690093+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_NoRows"} -{"Time":"2024-09-24T15:32:17.690096+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_NoRows","Output":"=== RUN TestGetSourceMetadata_NoRows\n"} -{"Time":"2024-09-24T15:32:17.6901+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_NoRows","Output":"time=\"2024-09-24T15:29:19+05:30\" level=warning msg=\"failed to close connection to sourceDB metadata\"\n"} -{"Time":"2024-09-24T15:32:17.690108+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_NoRows","Output":"--- PASS: TestGetSourceMetadata_NoRows (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690122+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetSourceMetadata_NoRows","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690125+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithSizePlacedInColocated"} -{"Time":"2024-09-24T15:32:17.690128+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithSizePlacedInColocated","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_TableWithSizePlacedInColocated\n"} -{"Time":"2024-09-24T15:32:17.690131+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithSizePlacedInColocated","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_TableWithSizePlacedInColocated (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690134+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithSizePlacedInColocated","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690136+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_WithIndexes_ColocateAll"} -{"Time":"2024-09-24T15:32:17.690139+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_WithIndexes_ColocateAll","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_WithIndexes_ColocateAll\n"} -{"Time":"2024-09-24T15:32:17.690142+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_WithIndexes_ColocateAll","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_WithIndexes_ColocateAll (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690145+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_WithIndexes_ColocateAll","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690147+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededBySize"} -{"Time":"2024-09-24T15:32:17.69015+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededBySize","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededBySize\n"} -{"Time":"2024-09-24T15:32:17.690153+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededBySize","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededBySize (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690155+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededBySize","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690158+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededByCount"} -{"Time":"2024-09-24T15:32:17.69016+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededByCount","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededByCount\n"} -{"Time":"2024-09-24T15:32:17.690164+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededByCount","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededByCount (0.01s)\n"} -{"Time":"2024-09-24T15:32:17.69017+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_ColocatedLimitExceededByCount","Elapsed":0.01} -{"Time":"2024-09-24T15:32:17.690186+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_NoColocatedTables"} -{"Time":"2024-09-24T15:32:17.690189+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_NoColocatedTables","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_NoColocatedTables\n"} -{"Time":"2024-09-24T15:32:17.690192+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_NoColocatedTables","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_NoColocatedTables (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690194+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_NoColocatedTables","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690197+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithMoreThanThresholdIndexesAsSharded"} -{"Time":"2024-09-24T15:32:17.690199+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithMoreThanThresholdIndexesAsSharded","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_TableWithMoreThanThresholdIndexesAsSharded\n"} -{"Time":"2024-09-24T15:32:17.690206+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithMoreThanThresholdIndexesAsSharded","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_TableWithMoreThanThresholdIndexesAsSharded (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690209+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithMoreThanThresholdIndexesAsSharded","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690211+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithThresholdOrLessIndexesAsColocated"} -{"Time":"2024-09-24T15:32:17.690214+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithThresholdOrLessIndexesAsColocated","Output":"=== RUN TestShardingBasedOnTableSizeAndCount_TableWithThresholdOrLessIndexesAsColocated\n"} -{"Time":"2024-09-24T15:32:17.690222+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithThresholdOrLessIndexesAsColocated","Output":"--- PASS: TestShardingBasedOnTableSizeAndCount_TableWithThresholdOrLessIndexesAsColocated (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690224+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnTableSizeAndCount_TableWithThresholdOrLessIndexesAsColocated","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690227+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CanSupportOpsRequirement"} -{"Time":"2024-09-24T15:32:17.69023+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CanSupportOpsRequirement","Output":"=== RUN TestShardingBasedOnOperations_CanSupportOpsRequirement\n"} -{"Time":"2024-09-24T15:32:17.690232+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CanSupportOpsRequirement","Output":"--- PASS: TestShardingBasedOnOperations_CanSupportOpsRequirement (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690238+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CanSupportOpsRequirement","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690241+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CannotSupportOpsAndNeedsSharding"} -{"Time":"2024-09-24T15:32:17.690243+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CannotSupportOpsAndNeedsSharding","Output":"=== RUN TestShardingBasedOnOperations_CannotSupportOpsAndNeedsSharding\n"} -{"Time":"2024-09-24T15:32:17.690246+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CannotSupportOpsAndNeedsSharding","Output":"--- PASS: TestShardingBasedOnOperations_CannotSupportOpsAndNeedsSharding (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690249+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestShardingBasedOnOperations_CannotSupportOpsAndNeedsSharding","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690251+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_WithinLimit"} -{"Time":"2024-09-24T15:32:17.690254+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_WithinLimit","Output":"=== RUN TestCheckShardedTableLimit_WithinLimit\n"} -{"Time":"2024-09-24T15:32:17.690259+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_WithinLimit","Output":"--- PASS: TestCheckShardedTableLimit_WithinLimit (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690262+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_WithinLimit","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690264+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_LimitExceeded"} -{"Time":"2024-09-24T15:32:17.690267+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_LimitExceeded","Output":"=== RUN TestCheckShardedTableLimit_LimitExceeded\n"} -{"Time":"2024-09-24T15:32:17.69027+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_LimitExceeded","Output":"--- PASS: TestCheckShardedTableLimit_LimitExceeded (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690276+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCheckShardedTableLimit_LimitExceeded","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690279+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_CanSupportOps"} -{"Time":"2024-09-24T15:32:17.690283+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_CanSupportOps","Output":"=== RUN TestFindNumNodesNeededBasedOnThroughputRequirement_CanSupportOps\n"} -{"Time":"2024-09-24T15:32:17.690286+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_CanSupportOps","Output":"--- PASS: TestFindNumNodesNeededBasedOnThroughputRequirement_CanSupportOps (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690289+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_CanSupportOps","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690295+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_NeedMoreNodes"} -{"Time":"2024-09-24T15:32:17.690298+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_NeedMoreNodes","Output":"=== RUN TestFindNumNodesNeededBasedOnThroughputRequirement_NeedMoreNodes\n"} -{"Time":"2024-09-24T15:32:17.690301+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_NeedMoreNodes","Output":"--- PASS: TestFindNumNodesNeededBasedOnThroughputRequirement_NeedMoreNodes (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690303+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnThroughputRequirement_NeedMoreNodes","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690306+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_CanSupportTablets"} -{"Time":"2024-09-24T15:32:17.690308+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_CanSupportTablets","Output":"=== RUN TestFindNumNodesNeededBasedOnTabletsRequired_CanSupportTablets\n"} -{"Time":"2024-09-24T15:32:17.690311+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_CanSupportTablets","Output":"--- PASS: TestFindNumNodesNeededBasedOnTabletsRequired_CanSupportTablets (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690314+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_CanSupportTablets","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690316+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_NeedMoreNodes"} -{"Time":"2024-09-24T15:32:17.690319+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_NeedMoreNodes","Output":"=== RUN TestFindNumNodesNeededBasedOnTabletsRequired_NeedMoreNodes\n"} -{"Time":"2024-09-24T15:32:17.690323+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_NeedMoreNodes","Output":"--- PASS: TestFindNumNodesNeededBasedOnTabletsRequired_NeedMoreNodes (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690326+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindNumNodesNeededBasedOnTabletsRequired_NeedMoreNodes","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690328+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCores"} -{"Time":"2024-09-24T15:32:17.690331+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCores","Output":"=== RUN TestPickBestRecommendation_PickOneWithOptimalNodesAndCores\n"} -{"Time":"2024-09-24T15:32:17.690335+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCores","Output":"--- PASS: TestPickBestRecommendation_PickOneWithOptimalNodesAndCores (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690339+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCores","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690343+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCoresWhenSomeHasFailures"} -{"Time":"2024-09-24T15:32:17.690348+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCoresWhenSomeHasFailures","Output":"=== RUN TestPickBestRecommendation_PickOneWithOptimalNodesAndCoresWhenSomeHasFailures\n"} -{"Time":"2024-09-24T15:32:17.690351+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCoresWhenSomeHasFailures","Output":"--- PASS: TestPickBestRecommendation_PickOneWithOptimalNodesAndCoresWhenSomeHasFailures (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690354+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickOneWithOptimalNodesAndCoresWhenSomeHasFailures","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690356+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport"} -{"Time":"2024-09-24T15:32:17.690359+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport","Output":"=== RUN TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport\n"} -{"Time":"2024-09-24T15:32:17.690362+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport","Output":"--- PASS: TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690368+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestPickBestRecommendation_PickLastMaxCoreRecommendationWhenNoneCanSupport","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690373+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated"} -{"Time":"2024-09-24T15:32:17.690375+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated\n"} -{"Time":"2024-09-24T15:32:17.690378+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690387+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Colocated","Elapsed":0} -{"Time":"2024-09-24T15:32:17.69039+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated"} -{"Time":"2024-09-24T15:32:17.690392+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated\n"} -{"Time":"2024-09-24T15:32:17.690395+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690401+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Colocated","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690403+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated"} -{"Time":"2024-09-24T15:32:17.690406+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated\n"} -{"Time":"2024-09-24T15:32:17.690409+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690411+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Colocated","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690414+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded"} -{"Time":"2024-09-24T15:32:17.690416+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded\n"} -{"Time":"2024-09-24T15:32:17.690419+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690422+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex_Sharded","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690424+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded"} -{"Time":"2024-09-24T15:32:17.690427+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded\n"} -{"Time":"2024-09-24T15:32:17.69043+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690432+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithOneIndex_Sharded","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690435+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded"} -{"Time":"2024-09-24T15:32:17.69044+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded\n"} -{"Time":"2024-09-24T15:32:17.690444+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690446+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithFiveIndexes_Sharded","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690449+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated"} -{"Time":"2024-09-24T15:32:17.690454+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated\n"} -{"Time":"2024-09-24T15:32:17.690456+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690459+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex5Columns_Colocated","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690462+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated"} -{"Time":"2024-09-24T15:32:17.690464+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated\n"} -{"Time":"2024-09-24T15:32:17.690467+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.69047+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex40Columns_Colocated","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690472+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated"} -{"Time":"2024-09-24T15:32:17.690475+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated\n"} -{"Time":"2024-09-24T15:32:17.690481+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690484+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex100Columns_Colocated","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690487+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated"} -{"Time":"2024-09-24T15:32:17.690489+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated","Output":"=== RUN TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated\n"} -{"Time":"2024-09-24T15:32:17.690492+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated","Output":"--- PASS: TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690495+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestCalculateTimeTakenAndParallelJobsForImport_ValidateImportTimeTableWithoutIndex250Columns_Colocated","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690497+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_NoObjects"} -{"Time":"2024-09-24T15:32:17.6905+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_NoObjects","Output":"=== RUN TestGetReasoning_NoObjects\n"} -{"Time":"2024-09-24T15:32:17.690503+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_NoObjects","Output":"--- PASS: TestGetReasoning_NoObjects (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690505+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_NoObjects","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690508+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyColocatedObjects"} -{"Time":"2024-09-24T15:32:17.69051+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyColocatedObjects","Output":"=== RUN TestGetReasoning_OnlyColocatedObjects\n"} -{"Time":"2024-09-24T15:32:17.690513+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyColocatedObjects","Output":"--- PASS: TestGetReasoning_OnlyColocatedObjects (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690515+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyColocatedObjects","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690519+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyShardedObjects"} -{"Time":"2024-09-24T15:32:17.690522+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyShardedObjects","Output":"=== RUN TestGetReasoning_OnlyShardedObjects\n"} -{"Time":"2024-09-24T15:32:17.690525+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyShardedObjects","Output":"--- PASS: TestGetReasoning_OnlyShardedObjects (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.69053+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_OnlyShardedObjects","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690532+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_ColocatedAndShardedObjects"} -{"Time":"2024-09-24T15:32:17.690535+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_ColocatedAndShardedObjects","Output":"=== RUN TestGetReasoning_ColocatedAndShardedObjects\n"} -{"Time":"2024-09-24T15:32:17.690538+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_ColocatedAndShardedObjects","Output":"--- PASS: TestGetReasoning_ColocatedAndShardedObjects (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.69054+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_ColocatedAndShardedObjects","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690543+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_Indexes"} -{"Time":"2024-09-24T15:32:17.690545+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_Indexes","Output":"=== RUN TestGetReasoning_Indexes\n"} -{"Time":"2024-09-24T15:32:17.690548+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_Indexes","Output":"--- PASS: TestGetReasoning_Indexes (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690551+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetReasoning_Indexes","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690553+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetThresholdAndTablets"} -{"Time":"2024-09-24T15:32:17.690555+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetThresholdAndTablets","Output":"=== RUN TestGetThresholdAndTablets\n"} -{"Time":"2024-09-24T15:32:17.690558+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetThresholdAndTablets","Output":"--- PASS: TestGetThresholdAndTablets (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690561+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestGetThresholdAndTablets","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690563+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_RowsArePreferred"} -{"Time":"2024-09-24T15:32:17.690565+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_RowsArePreferred","Output":"=== RUN TestFindImportTimeFromExpDataLoadTime_RowsArePreferred\n"} -{"Time":"2024-09-24T15:32:17.690568+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_RowsArePreferred","Output":"--- PASS: TestFindImportTimeFromExpDataLoadTime_RowsArePreferred (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690571+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_RowsArePreferred","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690573+05:30","Action":"run","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_SizePreferredIfRowsAreSame"} -{"Time":"2024-09-24T15:32:17.690576+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_SizePreferredIfRowsAreSame","Output":"=== RUN TestFindImportTimeFromExpDataLoadTime_SizePreferredIfRowsAreSame\n"} -{"Time":"2024-09-24T15:32:17.690581+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_SizePreferredIfRowsAreSame","Output":"--- PASS: TestFindImportTimeFromExpDataLoadTime_SizePreferredIfRowsAreSame (0.00s)\n"} -{"Time":"2024-09-24T15:32:17.690584+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Test":"TestFindImportTimeFromExpDataLoadTime_SizePreferredIfRowsAreSame","Elapsed":0} -{"Time":"2024-09-24T15:32:17.690586+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Output":"PASS\n"} -{"Time":"2024-09-24T15:32:17.690591+05:30","Action":"output","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Output":"ok \tgithub.com/yugabyte/yb-voyager/yb-voyager/src/migassessment\t(cached)\n"} -{"Time":"2024-09-24T15:32:17.690595+05:30","Action":"pass","Package":"github.com/yugabyte/yb-voyager/yb-voyager/src/migassessment","Elapsed":0.001}