kaknikhil commented on code in PR #594: URL: https://github.com/apache/madlib/pull/594#discussion_r1115121420
########## src/ports/postgres/modules/graph/test/wcc.sql_in: ########## @@ -276,3 +276,82 @@ SELECT graph_wcc_num_cpts( SELECT assert(relative_error(num_components, 3) < 0.00001, 'Weakly Connected Components: Incorrect largest component value.' ) FROM count_table WHERE user_id1=1; + +-- Warm Start + +-- Without grouping +DROP TABLE IF EXISTS wcc_non_warm_start_out, wcc_non_warm_start_out_summary; +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_non_warm_start_out'); + +DROP TABLE IF EXISTS wcc_warm_start_out, wcc_warm_start_out_summary, wcc_warm_start_out_message; +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_warm_start_out', NULL, 1); + +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start summary table.') +FROM wcc_warm_start_out_summary; +SELECT assert(nodes_to_update > 0, + 'Weakly Connected Components: Warm start incorrect nodes_to_update.' + ) FROM wcc_warm_start_out_summary; +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start message table.') +FROM wcc_warm_start_out_message; + +SELECT assert(nodes_to_update > 0, Review Comment: This seems to be doing the exact same thing as line 291. Did we mean to query a different table here ? ########## src/ports/postgres/modules/graph/test/wcc.sql_in: ########## @@ -276,3 +276,82 @@ SELECT graph_wcc_num_cpts( SELECT assert(relative_error(num_components, 3) < 0.00001, 'Weakly Connected Components: Incorrect largest component value.' ) FROM count_table WHERE user_id1=1; + +-- Warm Start + +-- Without grouping +DROP TABLE IF EXISTS wcc_non_warm_start_out, wcc_non_warm_start_out_summary; +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_non_warm_start_out'); + +DROP TABLE IF EXISTS wcc_warm_start_out, wcc_warm_start_out_summary, wcc_warm_start_out_message; +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_warm_start_out', NULL, 1); + +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start summary table.') +FROM wcc_warm_start_out_summary; +SELECT assert(nodes_to_update > 0, + 'Weakly Connected Components: Warm start incorrect nodes_to_update.' + ) FROM wcc_warm_start_out_summary; +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start message table.') +FROM wcc_warm_start_out_message; + +SELECT assert(nodes_to_update > 0, + 'Weakly Connected Components: Incorrect nodes to update count.' + ) FROM wcc_warm_start_out_summary; + +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_warm_start_out', NULL, 1, True); + +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start summary table.') +FROM wcc_warm_start_out_summary; +SELECT assert(nodes_to_update > 0, + 'Weakly Connected Components: Warm start incorrect nodes_to_update.' + ) FROM wcc_warm_start_out_summary; +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start message table.') +FROM wcc_warm_start_out_message; + +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_warm_start_out', NULL, 2, True); + +SELECT assert(nodes_to_update = 0, + 'Weakly Connected Components: Warm start incorrect nodes_to_update.' + ) FROM wcc_warm_start_out_summary; + +SELECT assert(count(*) < 0.00001, 'Weakly Connected Components: Different warm start result.') +FROM wcc_non_warm_start_out w1, wcc_warm_start_out w2 +WHERE w1.id = w2.id AND w1.component_id != w2.component_id; + +SELECT assert(relative_error(count(*), 4) < 0.00001, + 'Weakly Connected Components: Warm start incorrect component_id.' + ) FROM wcc_warm_start_out +WHERE component_id = 992147483657; + +-- With grouping +DROP TABLE IF EXISTS wcc_non_warm_start_out, wcc_non_warm_start_out_summary; +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_non_warm_start_out', 'user_id'); + +DROP TABLE IF EXISTS wcc_warm_start_out, wcc_warm_start_out_summary, wcc_warm_start_out_message; +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_warm_start_out', 'user_id', 2); + +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start summary table.') +FROM wcc_warm_start_out_summary; +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start message table.') +FROM wcc_warm_start_out_message; + +SELECT assert(nodes_to_update > 0, + 'Weakly Connected Components: Incorrect nodes to update count.' + ) FROM wcc_warm_start_out_summary; + +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_warm_start_out', 'user_id', 2, True); + +SELECT assert(count(*) < 0.00001, 'Weakly Connected Components: Different warm start result.') +FROM wcc_non_warm_start_out w1, wcc_warm_start_out w2 +WHERE w1.id = w2.id AND w1.user_id = w2.user_id AND w1.component_id != w2.component_id; + +SELECT assert(relative_error(count(0), 4) < 0.00001, Review Comment: This should be count(*) and not count(0), right ? count(0) will always return 1 ########## src/ports/postgres/modules/graph/test/wcc.sql_in: ########## @@ -276,3 +276,82 @@ SELECT graph_wcc_num_cpts( SELECT assert(relative_error(num_components, 3) < 0.00001, 'Weakly Connected Components: Incorrect largest component value.' ) FROM count_table WHERE user_id1=1; + +-- Warm Start + +-- Without grouping +DROP TABLE IF EXISTS wcc_non_warm_start_out, wcc_non_warm_start_out_summary; +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_non_warm_start_out'); + +DROP TABLE IF EXISTS wcc_warm_start_out, wcc_warm_start_out_summary, wcc_warm_start_out_message; +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_warm_start_out', NULL, 1); + +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start summary table.') +FROM wcc_warm_start_out_summary; +SELECT assert(nodes_to_update > 0, + 'Weakly Connected Components: Warm start incorrect nodes_to_update.' + ) FROM wcc_warm_start_out_summary; +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start message table.') +FROM wcc_warm_start_out_message; + +SELECT assert(nodes_to_update > 0, + 'Weakly Connected Components: Incorrect nodes to update count.' + ) FROM wcc_warm_start_out_summary; + +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_warm_start_out', NULL, 1, True); + +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start summary table.') +FROM wcc_warm_start_out_summary; +SELECT assert(nodes_to_update > 0, + 'Weakly Connected Components: Warm start incorrect nodes_to_update.' + ) FROM wcc_warm_start_out_summary; +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start message table.') +FROM wcc_warm_start_out_message; + +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_warm_start_out', NULL, 2, True); + +SELECT assert(nodes_to_update = 0, + 'Weakly Connected Components: Warm start incorrect nodes_to_update.' + ) FROM wcc_warm_start_out_summary; + +SELECT assert(count(*) < 0.00001, 'Weakly Connected Components: Different warm start result.') +FROM wcc_non_warm_start_out w1, wcc_warm_start_out w2 +WHERE w1.id = w2.id AND w1.component_id != w2.component_id; + +SELECT assert(relative_error(count(*), 4) < 0.00001, + 'Weakly Connected Components: Warm start incorrect component_id.' + ) FROM wcc_warm_start_out +WHERE component_id = 992147483657; + +-- With grouping +DROP TABLE IF EXISTS wcc_non_warm_start_out, wcc_non_warm_start_out_summary; +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_non_warm_start_out', 'user_id'); + +DROP TABLE IF EXISTS wcc_warm_start_out, wcc_warm_start_out_summary, wcc_warm_start_out_message; +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_warm_start_out', 'user_id', 2); + +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start summary table.') +FROM wcc_warm_start_out_summary; +SELECT assert(count(*) > 0, 'Weakly Connected Components: Empty warm start message table.') +FROM wcc_warm_start_out_message; + +SELECT assert(nodes_to_update > 0, + 'Weakly Connected Components: Incorrect nodes to update count.' + ) FROM wcc_warm_start_out_summary; + +SELECT weakly_connected_components('v2',NULL,'e2',NULL,'wcc_warm_start_out', 'user_id', 2, True); + +SELECT assert(count(*) < 0.00001, 'Weakly Connected Components: Different warm start result.') Review Comment: Should this instead be `count(*) = 0` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@madlib.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org