Skip to content

Commit b95b3aa

Browse files
committed
probable fix
1 parent 8ec644e commit b95b3aa

File tree

5 files changed

+12
-8
lines changed

5 files changed

+12
-8
lines changed

web/server/codechecker_server/api/product_server.py

+2
Original file line numberDiff line numberDiff line change
@@ -395,6 +395,7 @@ def addProduct(self, product):
395395
codechecker_api_shared.ttypes.ErrorCode.GENERAL,
396396
msg)
397397

398+
# Check if the database is already in use by another product.
398399
db_in_use = self.__server.get_if_database_in_use(product.connection)
399400
if db_in_use:
400401
LOG.error("Database '%s' is already in use by another product!",
@@ -403,6 +404,7 @@ def addProduct(self, product):
403404
codechecker_api_shared.ttypes.ErrorCode.DATABASE,
404405
"Database is already in use by another product!")
405406

407+
# Add database before letting product connect to it
406408
if self.add_product_support(product):
407409
LOG.info("Database support added successfully.")
408410

web/server/codechecker_server/server.py

+2
Original file line numberDiff line numberDiff line change
@@ -939,6 +939,8 @@ def get_if_database_in_use(self, product):
939939
self.cfg_sess_private.commit()
940940
self.cfg_sess_private.close()
941941

942+
# remove the first 16 charecters because in query it is
943+
# included in the path string
942944
dynamic_list = [
943945
d[16:] if d.endswith('.sqlite') else d
944946
for d in dynamic_list

web/tests/functional/products/test_config_db_share.py

+1-4
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ def create_test_product(product_name, product_endpoint):
160160
username_b64='',
161161
password_b64='',
162162
database=os.path.join(self.test_workspace_secondary,
163-
'data_test.sqlite')))
163+
'data.sqlite')))
164164

165165
product_cfg = create_test_product('producttest_second',
166166
'producttest_second')
@@ -178,9 +178,6 @@ def create_test_product(product_name, product_endpoint):
178178
with self.assertRaises(RequestFailed):
179179
self._pr_client_2.addProduct(product_cfg)
180180

181-
# self.assertTrue(self._pr_client_2.addProduct(product_cfg),
182-
# "Cannot create product on secondary server.")
183-
184181
# Product name full string match.
185182
products = self._pr_client_2.getProducts('producttest_second', None)
186183
self.assertEqual(len(products), 1)

web/tests/functional/store/test_store.py

+4-2
Original file line numberDiff line numberDiff line change
@@ -72,10 +72,12 @@ def setup_class(self):
7272

7373
server_access['viewer_product'] = 'store_limited_product'
7474
codechecker.add_test_package_product(server_access, TEST_WORKSPACE,
75-
report_limit=2)
75+
report_limit=2,
76+
database_name='store_limited')
7677

7778
server_access['viewer_product'] = 'store_test'
78-
codechecker.add_test_package_product(server_access, TEST_WORKSPACE)
79+
codechecker.add_test_package_product(server_access, TEST_WORKSPACE,
80+
database_name='store_test')
7981

8082
# Extend the checker configuration with the server access.
8183
codechecker_cfg.update(server_access)

web/tests/libtest/codechecker.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -733,7 +733,8 @@ def start_server_proc(event, server_cmd, checking_env):
733733

734734
def add_test_package_product(server_data, test_folder, check_env=None,
735735
protocol='http', report_limit=None,
736-
user_permissions=None):
736+
user_permissions=None,
737+
database_name="data.sqlite"):
737738
"""
738739
Add a product for a test suite to the server provided by server_data.
739740
Server must be running before called.
@@ -781,7 +782,7 @@ def add_test_package_product(server_data, test_folder, check_env=None,
781782
else:
782783
# SQLite databases are put under the workspace of the appropriate test.
783784
add_command += ['--sqlite',
784-
os.path.join(test_folder, 'data.sqlite')]
785+
os.path.join(test_folder, database_name)]
785786

786787
print(' '.join(add_command))
787788

0 commit comments

Comments
 (0)