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

rdsn core.aio test failed when using config-test-posix-aio.ini #295

Open
vagetablechicken opened this issue Feb 28, 2019 · 0 comments
Open

Comments

@vagetablechicken
Copy link
Contributor

在build机上编译时遇到使用posix-aio作为aio_provider时测试失败的问题。
运行:
./dsn.core.tests --gtest_filter=core.aio config-test-posix-aio.ini
错误日志:
E2019-02-28 11:49:39.890 (1551325779890758008 2d09) client.io-thrd.11529: native_aio_provider.posix.cpp:187:aio_internal(): file op failed, err = 22 (Invalid argument). On FreeBSD, you may need to load aio kernel module by running 'sudo kldload aio'.

测试了c3build01,c3build03,c4build04三台,均为gcc4.8.2,c3build01和03的glibc2.12,c4build04 glibc2.17。

c3build01,c3build03都遇到这个问题,c4build04测试成功。
问题在于aio_read/aio_write调用时期。
c3build03能跑通测试aio的简单实例,在rdsn框架下将TEST(core,aio)替换为aio简单实例,也会得到Invalid argument错误。strace系统调用,aio简单实例可以trace到open("tmp", O_RDWR|O_CREAT, 0666) = 3 这样的信息,rdsn的dsn.core.tests却不能trace到相关信息,没有办法进行下一步调试。

c3build03编译得到的dsn.core.tests拷贝到c4build04上却可以测试通过。

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

1 participant