ldbc / ldbc_snb_interactive_v1_impls

Reference implementations for LDBC Social Network Benchmark's Interactive workload.
https://ldbcouncil.org/benchmarks/snb-interactive
Apache License 2.0
97 stars 85 forks source link

Create validation parameters with only IC results, excluding IS results #396

Closed Ask-sola closed 1 year ago

Ask-sola commented 1 year ago

Hello, I used the neo4j implementation to create validation parameters, and generated over 40 parameters using the default configuration. However, without exception, they are all parameters and results of IC, without the parameter results of IS.

Ask-sola commented 1 year ago

I adjusted the number of generated parameters to 1000, however, I noticed that only IS1, IS2, and IS3 had parameter results generated. On the other hand, I used the generated parameters for cross validation, but I found that even if I set some of the comlex queries to false, they still perform these validations and record errors. How can I only run validation for some queries?

Ask-sola commented 1 year ago

I tried to control it during the generation process, for example, I only generated ic8 and all IS statements, but I found that I only got the results of ic8 without any IS parameters.

Ask-sola commented 1 year ago

It seems that if I don't obtain the parameters for update, I won't be able to obtain the results for IS. However, the database I used for testing cannot perform the update class operation and only implements the main IS query. May I ask how I should complete the verification in this situation?

szarnyasg commented 1 year ago

1) To trigger the short queries, you need to enable the update operations. 2) A further trick is that you need to run a lot of operations. For example, the validation data set linked in the README of the repository has 150,038 operations for SF10. 3) If you turn off a complex query by setting e.g. ldbc.snb.interactive.LdbcQuery1_enable = false, then that query should be off and it should not occur in the workload. 4) The table describing how {IC, IS} queries trigger further IS queries is given in the specification: https://ldbcouncil.org/ldbc_snb_docs/ldbc-snb-specification.pdf#page=78

Screenshot 2023-08-11 at 08 06 03

There are a few related issues (#207 and #370) but they don't provide much more context than what I wrote above.

Ask-sola commented 1 year ago

Sorry, it seems that I have some expression issues.

  1. Although I enabled the update operation, the generated IS still only contains IS1, IS2, and IS3, and is not generated for IS4-7. This is also reflected in the provided data
  2. Although I have already set the settings in the validate.properties configuration file, such as ldbc. snb. interactive. LdbcQuery1 enable=false However, I can still see the appearance of IC1 during the execution process, which is what confuses me.
szarnyasg commented 1 year ago

How many operations do you run?

On Fri, Aug 11, 2023 at 10:17 AM Ask-sola @.***> wrote:

Sorry, it seems that I have some expression issues.

  1. Although I enabled the update operation, the generated IS still only contains IS1, IS2, and IS3, and is not generated for IS4-7. This is provided in theThe https://pub-383410a98aef4cb686f0c7601eddd25f.r2.dev/interactive-v1/validation_params-sf0.1-sf10.tar.zst data in also looks the same.
  2. Although I have already set the settings in the validate.properties configuration file, such as ldbc. snb. interactive. LdbcQuery1 enable=false However, I can still see the appearance of IC1 during the execution process, which is what confuses me.

— Reply to this email directly, view it on GitHub https://github.com/ldbc/ldbc_snb_interactive_impls/issues/396#issuecomment-1674370835, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAKWPMLNPU6R4353WCO336DXUXS7VANCNFSM6AAAAAA3MJZGR4 . You are receiving this because you commented.Message ID: @.***>

Ask-sola commented 1 year ago

I set the number to "operation_count=10000" and Validation_parameters_size=1000

szarnyasg commented 1 year ago

Run more (100k+) operations to ensure all operations get cancelled.

Ask-sola commented 1 year ago

This seems to have no effect. I set it to 140000 and turned off update. However, the first time the program ran, it seemed that it had attempted to execute update and generated an error (I printed the error statement myself and changed all updates to incorrect syntax to avoid accidental execution of updates. The error did not affect subsequent runs, but only recorded an error) image image image

szarnyasg commented 1 year ago

I have never seen this issue: https://www.google.com/search?q="databaseexception%3A+record+fetch+failed" I'm out of ideas. Please investigate this with a fresh database instance.

Ask-sola commented 1 year ago

Okay, thank you for your answer