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

db_test: ./util/posix_logger.h:139: virtual void rocksdb::PosixLogger::Logv(const char*, __va_list_tag*): Assertion `sz == write_size' failed. #95

Closed
brooksbp opened this issue Mar 8, 2014 · 4 comments

Comments

@brooksbp
Copy link

brooksbp commented Mar 8, 2014

Every once in a while, this assertion is randomly hit in different DBTest(s).

==== Test DBTest.Randomized
db_test: ./util/posix_logger.h:139: virtual void rocksdb::PosixLogger::Logv(const char*, __va_list_tag*): Assertion `sz == write_size' failed.
Aborted (core dumped)

The 'bt' from 'gdb db_test core' doesn't appear to be useful:

[New LWP 5134]
[New LWP 5133]
Core was generated by `./db_test'.
Program terminated with signal SIGABRT, Aborted.
#0  0x00002ba5b10d3f79 in ?? ()
(gdb) info threads
  Id   Target Id         Frame 
  2    LWP 5133          0x00002ba5b118ad27 in ?? ()
* 1    LWP 5134          0x00002ba5b10d3f79 in ?? ()
(gdb) bt
#0  0x00002ba5b10d3f79 in ?? ()
#1  0x00002ba5b10d7388 in ?? ()
#2  0x0000000000000020 in ?? ()
#3  0x0000000000000000 in ?? ()

'info proc mappings' shows the 'bt' frames in "/lib/x86_64-linux-gnu/libc-2.19.so" space.

I will modify the code to perror when the assertion condition is not true--fwrite errors out.

Any other suggestions how to debug why fwrite may be erroring? Thx

@brooksbp
Copy link
Author

brooksbp commented Mar 8, 2014

Machine info:

4 core processor, 8 GB memory
1 TB WD Blue HDD
Linux wave 3.13.0-8-generic #28-Ubuntu SMP Tue Feb 11 17:55:27 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
gcc (Ubuntu 4.8.2-16ubuntu6) 4.8.2
libc6 2.19-0ubuntu2

@brooksbp
Copy link
Author

brooksbp commented Mar 9, 2014

Took about 11 runs to hit it again:

==== Test DBTest.UniversalCompactionCompressRatio1
==== Test DBTest.UniversalCompactionCompressRatio2
sz != write_size: Bad file descriptor
db_test: ./util/posix_logger.h:143: virtual void rocksdb::PosixLogger::Logv(const char*, __va_list_tag*): Assertion `sz == write_size' failed.

I have roughly 800 GB free of the 1 TB disk, so I wouldn't think that running out of disk space would be the issue.

@igorcanadi
Copy link
Collaborator

We have a fix coming out, thanks for reporting @brooksbp

@igorcanadi
Copy link
Collaborator

Fixed by 6c66bc0

Nazgolze pushed a commit to Nazgolze/rocksdb-1 that referenced this issue Sep 21, 2021
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