treeline icon indicating copy to clipboard operation
treeline copied to clipboard

How to customize `pg_treeline` page allocation?

Open Warmchay opened this issue 1 year ago • 2 comments

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.

  • [x] 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.

Warmchay avatar Jan 25 '24 05:01 Warmchay

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。

Yeath98 avatar Jul 15 '24 07:07 Yeath98

You could check the scripts directory, which have some testing cases could be used for reference, for example: https://github.com/mitdbg/treeline/blob/fcc220ea54beb3c951c80b9a2815ecb4292ef0be/scripts/autotuning/run.sh#L34 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.

Warmchay avatar Jul 16 '24 06:07 Warmchay