@@ -208,6 +208,7 @@ def _loader_dict(cluster, buckets, overRidePattern=None,
208208 key_prefix = key_prefix or bucket .loadDefn .get ("key_prefix" , "test_docs-" )
209209 key_size = key_size or bucket .loadDefn .get ("key_size" , 20 )
210210 key_type = key_type or bucket .loadDefn .get ("key_type" , "SimpleKey" )
211+ doc_size = workloads [i % len (workloads )].get ("doc_size" , 256 )
211212 model = model or bucket .loadDefn .get ("model" , "Hotel" )
212213 mockVector = mockVector or bucket .loadDefn .get ("mockVector" , False )
213214 base64 = base64 or bucket .loadDefn .get ("base64" , False )
@@ -216,16 +217,20 @@ def _loader_dict(cluster, buckets, overRidePattern=None,
216217 continue
217218 if collection == "_default" and scope == "_default" and skip_default :
218219 continue
219- per_coll_ops = bucket .loadDefn .get ("ops" )// (len (bucket .scopes [scope ].collections .keys ()) - 1 )
220+ if bucket .loadDefn .get ("ops" ) and bucket .loadDefn .get ("ops" ) not in [None , "None" ]:
221+ per_coll_ops = bucket .loadDefn .get ("ops" )// (len (bucket .scopes [scope ].collections .keys ()) - 1 )
222+ else :
223+ per_coll_ops = None
224+ JavaDocLoaderUtils .log .info (f"Loading { per_coll_ops } ops for { bucket .name + scope + collection } " )
220225 loader = SiriusCouchbaseLoader (
221226 server_ip = cluster .master .ip , server_port = cluster .master .port ,
222227 username = "Administrator" , password = "password" ,
223228 bucket = bucket ,
224229 scope_name = scope , collection_name = collection ,
225- key_prefix = key_prefix , key_size = key_size , doc_size = 256 ,
230+ key_prefix = key_prefix , key_size = key_size , doc_size = doc_size ,
226231 key_type = key_type , value_type = valType ,
227- create_percent = pattern [ "create" ], read_percent = pattern [ "read" ], update_percent = pattern [ "update" ] ,
228- delete_percent = pattern [ "delete" ], expiry_percent = pattern [ "expiry" ] ,
232+ create_percent = pattern . get ( "create" , 0 ), read_percent = pattern . get ( "read" , 0 ), update_percent = pattern . get ( "update" , 0 ) ,
233+ delete_percent = pattern . get ( "delete" , 0 ), expiry_percent = pattern . get ( "expiry" , 0 ) ,
229234 create_start_index = bucket .create_start , create_end_index = bucket .create_end ,
230235 read_start_index = bucket .read_start , read_end_index = bucket .read_end ,
231236 update_start_index = bucket .update_start , update_end_index = bucket .update_end ,
@@ -276,17 +281,20 @@ def perform_load(cluster, buckets, wait_for_load=True,
276281 if collection == "_default" and scope == "_default" and skip_default :
277282 continue
278283 loader = loader_map [bucket .name + scope + collection ]
279- loader .create_doc_load_task ()
284+ result , json_response = loader .create_doc_load_task ()
285+ if not result :
286+ JavaDocLoaderUtils .log .critical ("Failed to create doc load task: %s" % json_response )
287+ return False
280288 JavaDocLoaderUtils .doc_loading_tm .add_new_task (loader )
281289 tasks .append (loader )
282-
283290 if wait_for_load :
284291 JavaDocLoaderUtils .wait_for_doc_load_completion (cluster , tasks , wait_for_stats )
285292 else :
286293 return tasks
287294
288295 if validate_data :
289296 JavaDocLoaderUtils .data_validation (cluster , skip_default = skip_default )
297+ return []
290298
291299 @staticmethod
292300 def load_sift_data (cluster = None , buckets = None , overRidePattern = None , skip_default = True ,
@@ -318,6 +326,7 @@ def load_sift_data(cluster=None, buckets=None, overRidePattern=None, skip_defaul
318326 key_prefix = bucket .loadDefn .get ("key_prefix" )
319327 key_size = bucket .loadDefn .get ("key_size" )
320328 key_type = bucket .loadDefn .get ("key_type" )
329+ doc_size = workload .get ("doc_size" , 256 )
321330 model = bucket .loadDefn .get ("model" )
322331 mockVector = bucket .loadDefn .get ("mockVector" )
323332 base64 = bucket .loadDefn .get ("base64" )
@@ -332,7 +341,7 @@ def load_sift_data(cluster=None, buckets=None, overRidePattern=None, skip_defaul
332341 username = "Administrator" , password = "password" ,
333342 bucket = bucket ,
334343 scope_name = scope , collection_name = collection ,
335- key_prefix = key_prefix , key_size = key_size , doc_size = 256 ,
344+ key_prefix = key_prefix , key_size = key_size , doc_size = doc_size ,
336345 key_type = key_type , value_type = valType ,
337346 create_percent = pattern ["create" ], read_percent = pattern ["read" ], update_percent = pattern ["update" ],
338347 delete_percent = pattern ["delete" ], expiry_percent = pattern ["expiry" ],
@@ -380,7 +389,7 @@ def load_data(cluster, buckets=None, overRidePattern=None,
380389 create_end = override_num_items or bucket .loadDefn .get ("num_items" ),
381390 bucket = bucket )
382391
383- JavaDocLoaderUtils .perform_load (cluster = cluster ,
392+ return JavaDocLoaderUtils .perform_load (cluster = cluster ,
384393 buckets = buckets ,
385394 overRidePattern = overRidePattern ,
386395 validate_data = validate_data ,
@@ -389,21 +398,6 @@ def load_data(cluster, buckets=None, overRidePattern=None,
389398 mutate = mutate ,
390399 suppress_error_table = suppress_error_table ,
391400 track_failures = track_failures )
392- if update :
393- for bucket in buckets :
394- JavaDocLoaderUtils .generate_docs (doc_ops = ["update" ],
395- update_start = 0 ,
396- update_end = override_num_items or bucket .loadDefn .get ("num_items" ),
397- bucket = bucket )
398- JavaDocLoaderUtils .perform_load (cluster = cluster ,
399- buckets = buckets ,
400- overRidePattern = {"create" : 0 , "read" : 0 , "update" : 100 , "delete" : 0 , "expiry" : 0 },
401- validate_data = False ,
402- wait_for_load = wait_for_load ,
403- wait_for_stats = wait_for_stats ,
404- mutate = mutate ,
405- suppress_error_table = suppress_error_table ,
406- track_failures = track_failures )
407401
408402class DocLoaderUtils (object ):
409403 log = logger .get ("test" )
0 commit comments