usnistgov / trec_eval

Evaluation software used in the Text Retrieval Conference
232 stars 49 forks source link

fix segmentation fault error #26

Closed yuki617 closed 4 years ago

yuki617 commented 4 years ago

Changed the data type of extern variables like te_num_trec_measures, te_num_trec_measure_nicknames, te_num_rel_info_format, te_num_results_format, te_num_form_inter_procs from long to int to avoid segmentation fault error when running script.

isoboroff commented 4 years ago

I'm having trouble understanding why this can cause a segmentation fault. What's the architecture, compiler, OS? Is the script something you can share or cut out something to reproduce?

yuki617 commented 4 years ago

Good afternoon Ian, I was using Ubuntu for OS, gnu-gcc for compiler and x86_64-linux for architecture. The script I used is ''trec_eval -m rbp.p=0.5 qrels_file run_file". But even if I used "trec_eval -h qrels_file run_file", it still gave me segmentation fault error. I found the problem might be those global variables like te_num_trec_measures are defined in measure.c as an int, if we used data type long to declare them in trec_eval.c, they cannot be recognized anymore because of the type change. Therefore, it caused segmentation fault(core dumped). I also checked the trec_eval.c file in other released versions of trec_eval, they are declared as int, so I felt that might be the case. Does this make sense? PLease correct me if you think there's another reason for the segmentation fault. Thanks a lot for your patience and time. Best Regards, Yuqi Liu

isoboroff commented 4 years ago

Could you please attach the run and qrels file?

yuki617 commented 4 years ago

Sorry for the late reply. Here are the qrels and run files. The run file is not a txt format, but git only allows me to upload txt files. Please remove the .txt in the run file name. active_learning.txt qrels.covid-round3.txt Thank you!

Santosh-Gupta commented 4 years ago

I tried

"trec_eval -m rbp.p=0.5 qrels_file run_file"

But got

trec_eval: illegal measure 'rbp'