Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to customize pg_treeline page allocation? #117

Open
1 of 3 tasks
Warmchay opened this issue Jan 25, 2024 · 2 comments
Open
1 of 3 tasks

How to customize pg_treeline page allocation? #117

Warmchay opened this issue Jan 25, 2024 · 2 comments

Comments

@Warmchay
Copy link

Thanks for your incredible work!

I want to test treeline on my own, and I make a ycsbr scripts as follows:

record_size_bytes: 1024

load:
  num_records: 2000000
  distribution:
    type: linspace
    start_key: 1
    step_size: 1

run:
- num_requests: 6000000
  read:
    proportion_pct: 50
    distribution:
      type: zipfian    
      theta: 0.99
      salt: 12345
  update:
    proportion_pct: 50
    distribution:
      type: zipfian    
      theta: 0.99
      salt: 12345

And I test it by run_custom on rocksdbtreelinepg_treeline and leanstore, it runs smoothly on rocksdb, but others have different bugs.

  • treeline

    • The fallocate on Ubuntu 22.04 is not supported, after changing to posix_fallocate is work.
  • leanstore

    • It prints errors as:

      Error opening counter cycle
      Error opening counter cycle
      Error opening counter cycle
      Error opening counter cycle
      Error opening counter cycle
      Error opening counter cycle
      0x7f840c006858
      -------------------------------------------------------------------------------------
      Going out of memory !
  • pg_treeline

    • The error is:

      Page full. Current size: 4
      run_custom: /home/zoris/2024/github/treeline/page_grouping/manager_load.cc:206: std::pair<long unsigned int, tl::pg::SegmentInfo> tl::pg::Manager::LoadIntoNewSegment(uint32_t, const tl::pg::Segment&, tl::pg::Key): Assertion `result.ok()' failed.
    • I wonder how to adjust page size, in the db_path, it has 5 sf files as prefix, while other db has more files, but I couldn't find the correspoinding code.

@Yeath98
Copy link

Yeath98 commented Jul 15, 2024

Could you tell me how to run run_custom, when I execute“./run_custom”, it tells me to add configuration files, but I don't know how to add parameters after the instruction to run, and what these configuration files are.thx。

@Warmchay
Copy link
Author

You could check the scripts directory, which have some testing cases could be used for reference, for example:

../../build/bench/run_custom \

According to your needs, choose one of them to test, but I'm not sure they could run successfully or not, best luck to you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants