sled icon indicating copy to clipboard operation
sled copied to clipboard

Segfault during heavy write workload

Open nkconnor opened this issue 4 years ago • 4 comments

I received a segfault after about 3 hours of heavy concurrent inserts. The workload was 8 threads reading parquet files using the parquet crate and doing inserts into the default sled database.

  1. expected result
  2. actual result
  3. sled version

master

  1. rustc version

latest nightly

  1. operating system

Ubuntu 20.04

  1. minimal code sample

8 threads using db insert with UUID key and [u8: 8] value

nkconnor avatar Feb 14 '21 12:02 nkconnor

Thanks for the report! Once I'm done with the pointer swizzling refactor I'll try to reproduce this. Do you have access to the core for getting a stacktrace, by any chance?

spacejam avatar Feb 14 '21 16:02 spacejam

Unfortunately I do not. I was on the fence on whether it was worth posting an issue because I have so little to offer right now. My schedule isn't going to be any less hairy for another few months or I'd offer to get more involved in this.

It was a very small program with few dependencies, namely rayon, sled, uuid, and parquet.

nkconnor avatar Feb 15 '21 00:02 nkconnor

no worries at all! it's more important to know that something exists, although it should always be expected that the master branch will be buggier than a release since I haven't subjected to as much burn-in testing myself.

For your uuid keys, are you storing them as 16 raw bytes or as the larger string representation?

spacejam avatar Feb 15 '21 06:02 spacejam

16 bytes from hex Uuid::as_bytes

nkconnor avatar Feb 15 '21 11:02 nkconnor