[m-users.] explaining index use

Daniels, Marcus G mdaniels at lanl.gov
Thu Jul 21 13:31:11 AEST 2016


Hi,

I have a large fact table (millions of entries) and several modes for its use.   I'm not econfident I am getting optimal use of the indices.
Is there a technique like with most SQL databases where one can EXPLAIN the query to see what plan is used?
The way I read the goals it would happen in an order I expect, but the performance isn't good.
I can't afford to make modes for all possible combinations.  The fact table would take weeks to compile and hundreds of gigabytes of RAM (for the C compiler).
Because of the size of the table I put it in a shared library, but then I have trouble with deep profiling:

#0  0x00002aad782b33c1 in __strlen_sse2_pminub () from /usr/lib64/libc.so.6
#1  0x00002aaaaaaf9028 in MR_write_string (fp=fp at entry=0x5ece40, ptr=0x0) at mercury_deep_profiling.c:1631
#2  0x00002aaaaaaf970a in MR_write_out_module_proc_reps_start (procrep_fp=0x5ece40,
    module_layout=0x2aabc2eac6e0 <mercury__sharedVertex__sharedVertex_fact_table_hash_table_3_4825_data+3360>)
    at mercury_deep_profiling.c:817
#3  0x00002aab490a68bf in mercury__sharedVertex__write_out_proc_statics () from ./libsharedVertex.so
#4  0x0000000000410da1 in ?? ()
#5  0x00002aaaaaafa00e in MR_write_out_profiling_tree () at mercury_deep_profiling.c:479

Thanks for any suggestions,

Marcus
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurylang.org/archives/users/attachments/20160721/e95f1b1b/attachment.html>


More information about the users mailing list