# insert launching_performance_test
average_time = TEST_DATA['performance_sum'] / TEST_DATA['application_count']
- MYSQL['query']['insert_launching_performance_test'] = "INSERT INTO launching_performance_test (build_image_id, average_time, test_date) SELECT %s, %s, FROM_UNIXTIME(UNIX_TIMESTAMP()) FROM DUAL WHERE NOT EXISTS ( SELECT * FROM launching_performance_test WHERE build_image_id=%s AND average_time=%s );" % (build_image_id, average_time, build_image_id, average_time)
+ tpk_dotnet_app_count = TEST_DATA['tpk_dotnet_app_count']
+ installed_dotnet_app_count = TEST_DATA['installed_dotnet_app_count']
+ launched_dotnet_app_count = TEST_DATA['launched_dotnet_app_count']
+ MYSQL['query']['insert_launching_performance_test'] = "INSERT INTO launching_performance_test (build_image_id, average_time, tpk_dotnet_app_count, installed_dotnet_app_count, launched_dotnet_app_count, test_date) SELECT %s, %s, %s, %s, %s, FROM_UNIXTIME(UNIX_TIMESTAMP()) FROM DUAL WHERE NOT EXISTS ( SELECT * FROM launching_performance_test WHERE build_image_id=%s AND average_time=%s );" % (build_image_id, average_time, tpk_dotnet_app_count, installed_dotnet_app_count, launched_dotnet_app_count, build_image_id, average_time)
# MYSQL['query']['insert_launching_performance_test'] = "INSERT INTO launching_performance_test (build_image_id, average_time, test_date) VALUES (%s, %s, FROM_UNIXTIME(UNIX_TIMESTAMP()) );" % (build_image_id, average_time)
mysql_excute_query(MYSQL['connection'], MYSQL['cursor'], MYSQL['query']['insert_launching_performance_test'])
MYSQL['query']['insert_launching_memory_object'] = "INSERT INTO launching_memory_object (launching_memory_usage_test_id, launching_memory_usage_id, build_image_id, application_info_id, object_name, pcode_pdata) VALUES (%s, %s, %s, %s, '%s', %s);" % (launching_memory_usage_test_id, launching_memory_usage_id, build_image_id, application_info_id, object_name, pcode_pdata)
mysql_excute_query(MYSQL['connection'], MYSQL['cursor'], MYSQL['query']['insert_launching_memory_object'])
+ BINARY_DATA = TEST_DATA['dotnet_binary']
+ # insert dotnet_binary_count
+ all_binary_count = BINARY_DATA['binary_count']['all_binary_count']
+ selective_aot_dll_count = BINARY_DATA['binary_count']['selective_aot_dll_count']
+ full_aot_dll_count = BINARY_DATA['binary_count']['full_aot_dll_count']
+ MYSQL['query']['insert_dotnet_binary_count'] = "INSERT INTO dotnet_binary_count (build_image_id, all_binary_count, selective_aot_dll_count, full_aot_dll_count) SELECT %s, %s, %s, %s FROM DUAL WHERE NOT EXISTS ( SELECT * FROM dotnet_binary_count WHERE build_image_id=%s );" % (build_image_id, all_binary_count, selective_aot_dll_count, full_aot_dll_count, build_image_id)
+ mysql_excute_query(MYSQL['connection'], MYSQL['cursor'], MYSQL['query']['insert_dotnet_binary_count'])
+
+ # insert dotnet_binary_summary
+ binary_summary_list = BINARY_DATA['binary_summary']
+ for binary_summary in binary_summary_list:
+ category = binary_summary['category']
+ original_size = binary_summary['original_size']
+ selective_aot_size = binary_summary['selective_aot_size']
+ full_aot_size = binary_summary['full_aot_size']
+ MYSQL['query']['insert_dotnet_binary_summary'] = "INSERT INTO dotnet_binary_summary (build_image_id, category, original_size, selective_aot_size, full_aot_size) SELECT %s, '%s', %s, %s, %s FROM DUAL WHERE NOT EXISTS ( SELECT * FROM dotnet_binary_summary WHERE build_image_id=%s );" % (build_image_id, category, original_size, selective_aot_size, full_aot_size, build_image_id)
+ mysql_excute_query(MYSQL['connection'], MYSQL['cursor'], MYSQL['query']['insert_dotnet_binary_summary'])
+
+ # insert dotnet_binary_info
+ binary_info_list = BINARY_DATA['binary_info']
+ for binary_info in binary_info_list:
+ binary_name = binary_info['binary_name']
+ category = binary_info['category']
+ binary_dir = binary_info['binary_dir']
+ binary_type = binary_info['binary_type']
+ MYSQL['query']['insert_dotnet_binary_info'] = "INSERT INTO dotnet_binary_info (binary_name, category, binary_dir, binary_type) SELECT '%s', '%s', '%s', '%s' FROM DUAL WHERE NOT EXISTS ( SELECT * FROM dotnet_binary_info WHERE binary_name='%s' AND category='%s' );" % (binary_name, category, binary_dir, binary_type, binary_name, category)
+ mysql_excute_query(MYSQL['connection'], MYSQL['cursor'], MYSQL['query']['insert_dotnet_binary_info'])
+
+ # get dotnet_binary_info
+ binary_info_ids = {}
+ MYSQL['query']['select_dotnet_binary_info'] = "SELECT id, category, binary_name FROM dotnet_binary_info;"
+ mysql_excute_query(MYSQL['connection'], MYSQL['cursor'], MYSQL['query']['select_dotnet_binary_info'])
+
+ row = MYSQL['cursor'].fetchone()
+ while row is not None:
+ if row['category'] not in binary_info_ids:
+ binary_info_ids[row['category']] = {}
+ binary_info_ids[row['category']][row['binary_name']] = row['id']
+ row = MYSQL['cursor'].fetchone()
+ print 'binary_info_ids: ', binary_info_ids
+
+ # insert dotnet_binary_size
+ binary_size_list = BINARY_DATA['binary_size']
+ for binary_size_info in binary_size_list:
+ binary_name = binary_size_info['binary_name']
+ category = binary_size_info['category']
+ binary_size = binary_size_info['binary_size']
+ dotnet_binary_info_id = binary_info_ids[category][binary_name]
+ MYSQL['query']['insert_dotnet_binary_size'] = "INSERT INTO dotnet_binary_size (dotnet_binary_info_id, build_image_id, binary_size)" \
+ "SELECT %s, %s, %s FROM DUAL WHERE NOT EXISTS ( SELECT * FROM dotnet_binary_size WHERE build_image_id=%s AND dotnet_binary_info_id=%s );" \
+ % (dotnet_binary_info_id, build_image_id, binary_size, build_image_id, dotnet_binary_info_id)
+ mysql_excute_query(MYSQL['connection'], MYSQL['cursor'], MYSQL['query']['insert_dotnet_binary_size'])
+
+ # insert dotnet_binary_aot_dll
+ binary_aot_dll_list = BINARY_DATA['binary_aot_dll']
+ for binary_aot_dll in binary_aot_dll_list:
+ binary_name = binary_aot_dll['binary_name']
+ aot_dll_name = binary_aot_dll['aot_dll_name']
+ category = binary_aot_dll['category']
+ original_binary_size = binary_aot_dll['original_binary_size']
+ aot_binary_size = binary_aot_dll['aot_binary_size']
+ is_selective_aot = binary_aot_dll['is_selective_aot']
+ size_comparative_percentage = binary_aot_dll['size_comparative_percentage']
+ dotnet_binary_info_id = binary_info_ids[category][binary_name]
+ MYSQL['query']['insert_dotnet_binary_aot_dll'] = "INSERT INTO dotnet_binary_aot_dll "\
+ + "(dotnet_binary_info_id, build_image_id, aot_dll_name, is_selective_aot, original_binary_size, aot_binary_size, size_comparative_percentage) "\
+ "SELECT %s, %s, '%s', %s, %s, %s, %s FROM DUAL WHERE NOT EXISTS ( SELECT * FROM dotnet_binary_aot_dll WHERE build_image_id=%s AND dotnet_binary_info_id=%s );" \
+ % (dotnet_binary_info_id, build_image_id, aot_dll_name, is_selective_aot, original_binary_size, aot_binary_size, size_comparative_percentage, build_image_id, dotnet_binary_info_id)
+ mysql_excute_query(MYSQL['connection'], MYSQL['cursor'], MYSQL['query']['insert_dotnet_binary_aot_dll'])
MYSQL['cursor'].close()
MYSQL['connection'].close()