gparker / vowpal_wabbit

John Langford's original release of Vowpal Wabbit -- a fast online learning algorithm
http://hunch.net/~vw/
Other
57 stars 0 forks source link

test 9: fails to run: terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::program_options::multiple_occurrences> >' #2

Closed yarikoptic closed 13 years ago

yarikoptic commented 13 years ago

Built on Debian system with boost 1.42.0-4+b1:

$> ./RunTests  
Testing vw: ../vw
RunTests: '-d' to see diff output
RunTests: '-o' to force overwrite references
RunTests: '-e' to abort on first failure
RunTests: test 1: stdout OK
RunTests: test 1: stderr OK
RunTests: test 2: stdout OK
RunTests: test 2: stderr OK
RunTests: test 2: predict OK
RunTests: test 3: stdout OK
RunTests: test 3: stderr OK
RunTests: test 4: stdout OK
RunTests: test 4: stderr OK
RunTests: test 5: stdout OK
RunTests: test 5: stderr OK
RunTests: test 6: stdout OK
RunTests: test 6: stderr OK
RunTests: test 6: predict OK
RunTests: test 7: stdout OK
RunTests: test 7: stderr OK
RunTests: test 8: stdout OK
RunTests: test 8: stderr OK
RunTests: test 8: FAILED: predict(0002c.predict) != ref(pred-sets/ref/0002c.predict):
sh: line 1: 18583 Aborted                 ( ../vw --lda 100 --lda_alpha 0.01 --lda_rho 0.01 --lda_D 1000 -b 13 --minibatch 128 train-sets/wiki1K.dat ) > stdout.tmp 2> stderr.tmp
RunTests: test 9: '../vw --lda 100 --lda_alpha 0.01 --lda_rho 0.01 --lda_D 1000 -b 13 --minibatch 128 train-sets/wiki1K.dat' failed: status=134
./RunTests  13,45s user 4,48s system 148% cpu 12,082 total

$> cat stderr.tmp
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::program_options::multiple_occurrences> >'
  what():  multiple occurrences
JohnLangford commented 13 years ago

I can't replicate the bug on my system. I suspect it's a boost version issue. You're using 1.42.0 and I'm using 1.40.0. If you put a '-d' just before 'train-sets/wiki1K.dat' for test 9, does it work?

-John

On 05/17/2011 11:51 AM, yarikoptic wrote:

Built on Debian system with boost 1.42.0-4+b1:

$>  ./RunTests
Testing vw: ../vw
RunTests: '-d' to see diff output
RunTests: '-o' to force overwrite references
RunTests: '-e' to abort on first failure
RunTests: test 1: stdout OK
RunTests: test 1: stderr OK
RunTests: test 2: stdout OK
RunTests: test 2: stderr OK
RunTests: test 2: predict OK
RunTests: test 3: stdout OK
RunTests: test 3: stderr OK
RunTests: test 4: stdout OK
RunTests: test 4: stderr OK
RunTests: test 5: stdout OK
RunTests: test 5: stderr OK
RunTests: test 6: stdout OK
RunTests: test 6: stderr OK
RunTests: test 6: predict OK
RunTests: test 7: stdout OK
RunTests: test 7: stderr OK
RunTests: test 8: stdout OK
RunTests: test 8: stderr OK
RunTests: test 8: FAILED: predict(0002c.predict) != ref(pred-sets/ref/0002c.predict):
sh: line 1: 18583 Aborted                 ( ../vw --lda 100 --lda_alpha 0.01 --lda_rho 0.01 --lda_D 1000 -b 13 --minibatch 128 train-sets/wiki1K.dat )>  stdout.tmp 2>  stderr.tmp
RunTests: test 9: '../vw --lda 100 --lda_alpha 0.01 --lda_rho 0.01 --lda_D 1000 -b 13 --minibatch 128 train-sets/wiki1K.dat' failed: status=134
./RunTests  13,45s user 4,48s system 148% cpu 12,082 total

$>  cat stderr.tmp
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::program_options::multiple_occurrences>  >'
   what():  multiple occurrences
JohnLangford commented 13 years ago

This looks like a Boost bug to me, which surprises me a bit---I expected Boost to be pretty stable. We could imagine tweaking the arguments to get around the bug, but this is easiest if someone with an existing install (Yaroslav/Bharath?) can fiddle with the bits in parse_args.

The other alternative of course is to just disable the test.

-John

On 05/19/2011 09:35 AM, Yaroslav Halchenko wrote:

I can't replicate the bug on my system. I suspect it's a boost version issue. You're using 1.42.0 and I'm using 1.40.0. If you let me know if you ever decide to install a chroot/VM with Debian and need help ;)

put a '-d' just before 'train-sets/wiki1K.dat' for test 9, does it work? -d had no effect, but it seems that I have to get rid of --lda_D or --lda to make it run... to me it smells like a boost bug, or it is not? Here is the protocol of trying removing different arguments

$> ../vw --lda 100 --lda_alpha 0.01 --lda_rho 0.01 --lda_D 1000 -b 13 --minibatch 128 train-sets/wiki1K.dat terminate called after throwing an instance of 'boost::exception_detail::clone_implboost::exception_detail::error_info_injector' what(): multiple occurrences zsh: abort ../vw --lda 100 --lda_alpha 0.01 --lda_rho 0.01 --lda_D 1000 -b 13 --minibatc

$> ../vw --lda 100 --lda_alpha 0.01 --lda_rho 0.01 --lda_D 1000 -b 13 --minibatch 128 -d train-sets/wiki1K.dat terminate called after throwing an instance of 'boost::exception_detail::clone_implboost::exception_detail::error_info_injector' what(): multiple occurrences zsh: abort ../vw --lda 100 --lda_alpha 0.01 --lda_rho 0.01 --lda_D 1000 -b 13 --minibatc

$> ../vw --lda 100 --lda_alpha 0.01 --lda_rho 0.01 -b 13 --minibatch 128 train-sets/wiki1K.dat using no cache Reading from train-sets/wiki1K.dat num sources = 1 Num weight bits = 13 learning rate = 10 initial_t = 1 power_t = 0.5 learning_rate set to 10 average since example example current current current loss last counter weight label predict features 0.000000 0.000000 3 3.0 unknown 0.0000 38 0.000000 0.000000 6 6.0 unknown 0.0000 14 0.000000 0.000000 11 11.0 unknown 0.0000 32 0.000000 0.000000 22 22.0 unknown 0.0000 2 0.000000 0.000000 44 44.0 unknown 0.0000 166 0.000000 0.000000 87 87.0 unknown 0.0000 29 0.000000 0.000000 174 174.0 unknown 0.0000 17 0.000000 0.000000 348 348.0 unknown 0.0000 2 0.000000 0.000000 696 696.0 unknown 0.0000 143

finished run number of examples = 1000 weighted example sum = 1000 weighted label sum = 0 average loss = 0 best constant = 1 total feature number = 87919

$> ../vw --lda 100 --lda_alpha 0.01 --lda_D 1000 -b 13 --minibatch 128 train-sets/wiki1K.dat terminate called after throwing an instance of 'boost::exception_detail::clone_implboost::exception_detail::error_info_injector' what(): multiple occurrences zsh: abort ../vw --lda 100 --lda_alpha 0.01 --lda_D 1000 -b 13 --minibatch 128

$> ../vw --lda 100 --lda_rho 0.01 --lda_D 1000 -b 13 --minibatch 128 -d train-sets/wiki1K.dat terminate called after throwing an instance of 'boost::exception_detail::clone_implboost::exception_detail::error_info_injector' what(): multiple occurrences zsh: abort ../vw --lda 100 --lda_rho 0.01 --lda_D 1000 -b 13 --minibatch 128 -d

$> ../vw --lda_alpha 0.01 --lda_rho 0.01 --lda_D 1000 -b 13 --minibatch 128 train-sets/wiki1K.dat using no cache Reading from train-sets/wiki1K.dat num sources = 1 Num weight bits = 13 learning rate = 10 initial_t = 1 power_t = 0.5 learning_rate set to 10 average since example example current current current loss last counter weight label predict features 0.000000 0.000000 3 3.0 unknown 0.0000 38 0.000000 0.000000 6 6.0 unknown 0.0000 14 0.000000 0.000000 11 11.0 unknown 0.0000 32 0.000000 0.000000 22 22.0 unknown 0.0000 2 0.000000 0.000000 44 44.0 unknown 0.0000 166 0.000000 0.000000 87 87.0 unknown 0.0000 29 0.000000 0.000000 174 174.0 unknown 0.0000 17 0.000000 0.000000 348 348.0 unknown 0.0000 2 0.000000 0.000000 696 696.0 unknown 0.0000 143

finished run number of examples = 1000 weighted example sum = 1000 weighted label sum = 0 average loss = 0 best constant = 1 total feature number = 87919

yarikoptic commented 13 years ago

What a terrible bug report I composed then -- even haven't mentioned the version of VW

if I build 5.1 now with libboost 1.46.1 -- I do not experience that crash ... but some tests fail... let me see if master behaves differently -- yeap, all tests pass with minor fuzz! So, closing this issue -- seems to be resolved with libboost update and using current master of VW. I will upload current master into Debian. Cheers