The sound distributed version control system

#368 [PANIC, CORRUPTION] True lies

Closed on March 1, 2021
tankf33der on February 27, 2021

I dont have energy to find duplicates or set correct titles, i am working in raw consciousness flow mode.

latest pijul and backend.

Since all scenario below OK on smaller input, lets count this corruption.

$ pijul init p1
$ cd p1
$ pijul chann rename main m
$ pijul chann switch m
$ pijul chann
* m
$ pijul fork main
$ tar -xJf ../linux2x/kernel/linux-2.0.1.tar.xz --strip-components=1
$ pijul add -r * # 1sec
$ pijul rec -am"." #2sec
$ tar -xJf ../linux2x/kernel/linux-2.0.40.tar.xz --strip-components=1
$ pijul add -r * # 1 sec
$ pijul rec -am"." # XXX, 5min
$ pijul diff --short
# OK, empty
$ pijul debug
# OK, output
$ RUST_BACKTRACE=1 pijul channel switch main
thread 'main' panicked at 'assertion failed: txn.del_revtree(inode, Some(file_id))?', /home/mpech/pijul/libpijul/src/pristine/mod.rs:1614:13
stack backtrace:
   0: std::panicking::begin_panic
             at /build/rust/src/rustc-1.49.0-src/library/std/src/panicking.rs:521:12
   1: libpijul::pristine::del_tree_with_rev
             at /home/mpech/pijul/libpijul/src/pristine/mod.rs:1614:13
   2: libpijul::output::output::kill_dead_files
             at /home/mpech/pijul/libpijul/src/output/output.rs:412:9
   3: libpijul::output::output::output_repository
             at /home/mpech/pijul/libpijul/src/output/output.rs:75:9
   4: libpijul::output::output::output_repository_no_pending
             at /home/mpech/pijul/libpijul/src/output/output.rs:39:5
   5: libpijul::MutTxnTExt::output_repository_no_pending
             at /home/mpech/pijul/libpijul/src/lib.rs:278:9
   6: pijul::commands::reset::Reset::reset::{{closure}}
             at /home/mpech/pijul/pijul/src/commands/reset.rs:154:21
   7: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /build/rust/src/rustc-1.49.0-src/library/core/src/future/mod.rs:80:19
   8: pijul::commands::reset::Reset::switch::{{closure}}
             at /home/mpech/pijul/pijul/src/commands/reset.rs:34:9
   9: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /build/rust/src/rustc-1.49.0-src/library/core/src/future/mod.rs:80:19
  10: pijul::commands::channel::Channel::run::{{closure}}
             at /home/mpech/pijul/pijul/src/commands/channel.rs:66:17
  11: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /build/rust/src/rustc-1.49.0-src/library/core/src/future/mod.rs:80:19
  12: pijul::run::{{closure}}
             at /home/mpech/pijul/pijul/src/main.rs:195:41
  13: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /build/rust/src/rustc-1.49.0-src/library/core/src/future/mod.rs:80:19
  14: pijul::main::{{closure}}
             at /home/mpech/pijul/pijul/src/main.rs:137:21
  15: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /build/rust/src/rustc-1.49.0-src/library/core/src/future/mod.rs:80:19
  16: tokio::park::thread::CachedParkThread::block_on::{{closure}}
             at /home/mpech/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.2.0/src/park/thread.rs:263:54
  17: tokio::coop::with_budget::{{closure}}
             at /home/mpech/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.2.0/src/coop.rs:121:9
  18: std::thread::local::LocalKey<T>::try_with
             at /build/rust/src/rustc-1.49.0-src/library/std/src/thread/local.rs:272:16
  19: std::thread::local::LocalKey<T>::with
             at /build/rust/src/rustc-1.49.0-src/library/std/src/thread/local.rs:248:9
  20: tokio::coop::with_budget
             at /home/mpech/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.2.0/src/coop.rs:114:5
  21: tokio::coop::budget
             at /home/mpech/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.2.0/src/coop.rs:98:5
  22: tokio::park::thread::CachedParkThread::block_on
             at /home/mpech/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.2.0/src/park/thread.rs:263:31
  23: tokio::runtime::enter::Enter::block_on
             at /home/mpech/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.2.0/src/runtime/enter.rs:151:13
  24: tokio::runtime::thread_pool::ThreadPool::block_on
             at /home/mpech/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.2.0/src/runtime/thread_pool/mod.rs:71:9
  25: tokio::runtime::Runtime::block_on
             at /home/mpech/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.2.0/src/runtime/mod.rs:452:43
  26: pijul::main
             at /home/mpech/pijul/pijul/src/main.rs:130:1
  27: core::ops::function::FnOnce::call_once
             at /build/rust/src/rustc-1.49.0-src/library/core/src/ops/function.rs:227:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
$
pmeunier on February 27, 2021

i am working in raw consciousness flow mode.

Seems efficient enough to me! This isn’t a duplicate, thanks a lot!

pmeunier added a change on March 1, 2021
IVFOZZFZQLXBRXPKKR4YHCNZGNVIPG67NJICAGISDU6CMOHTQHBAC
main
pmeunier on March 1, 2021

I just replicated this \o/ and fixed it! Thanks!

pmeunier closed this discussion on March 1, 2021