日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

fuse java_java中的Fuse文件系统 - JVM错误双重免费或损坏

發布時間:2025/3/19 windows 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 fuse java_java中的Fuse文件系统 - JVM错误双重免费或损坏 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我正在使用jnr-fuse庫(https://github.com/SerCeMan/jnr-fuse)在java中編寫Fuse-Filesystem,它在內部使用JNR進行本機訪問。

文件系統作為Amazon S3存儲桶的前端,基本上允許用戶將其存儲桶作為普通存儲設備安裝。

在重新處理我的read方法時,我遇到了以下JVM錯誤:

*** Error in `/usr/local/bin/jdk1.8.0_65/bin/java': double free or corruption (!prev): 0x00007f3758953d80 ***

嘗試將文件從fuse-filesystem復制到本地FS時總會發生錯誤,通常是在第二次調用read方法時(對于第二個128kByte數據塊)

cp /tmp/fusetest/benchmark/benchmarkFile.large /tmp

有問題的閱讀方法是:

public int read(String path, Pointer buf, @size_t long size, @off_t long offset, FuseFileInfo fi) {

LOGGER.debug("Reading file {}, offset = {}, read length = {}", path, offset, size);

S3fsNodeInfo nodeInfo;

try {

nodeInfo = this.dbHelper.getNodeInfo(S3fsPath.fromUnixPath(path));

} catch (FileNotFoundException ex) {

LOGGER.error("Read called on non-existing node: {}", path);

return -ErrorCodes.ENOENT();

}

try {

// *** important part start

InputStream is = this.s3Helper.getInputStream(nodeInfo.getPath(), offset, size);

byte[] data = new byte[is.available()];

int numRead = is.read(data, 0, (int) size);

LOGGER.debug("Got {} bytes from stream, putting to buffer", numRead);

buf.put(offset, data, 0, numRead);

return numRead;

// *** important part end

} catch (IOException ex) {

LOGGER.error("Error while reading file {}", path, ex);

return -ErrorCodes.EIO();

}

}

使用的輸入流實際上是緩沖區上的ByteArrayInputStream,我用它來減少與S3的http通信。

我現在在單線程模式下運行保險絲,以避免任何與并發相關的問題。

有趣的是,我已經有一個沒有進行任何內部緩存的工作版本,但其他方面與此處顯示的完全相同。

不幸的是我并沒有真正進入JVM內部,所以我不確定如何找到底層 - 正常的調試沒有產生任何結果,因為實際錯誤似乎發生在C端。

這里是上述命令觸發的讀操作的完整控制臺輸出:

2016-02-29 02:08:45,652 DEBUG s3fs.fs.CacheEnabledS3fs [main] - Reading file /benchmark/benchmarkFile.large, offset = 0, read length = 131072

unique: 7, opcode: READ (15), nodeid: 3, insize: 80, pid: 8297

read[0] 131072 bytes from 0 flags: 0x8000

2016-02-29 02:08:46,024 DEBUG s3fs.fs.CachedS3Helper [main] - Getting data from cache - path = /benchmark/benchmarkFile.large, offset = 0, length = 131072

2016-02-29 02:08:46,025 DEBUG s3fs.fs.CachedS3Helper [main] - Path /benchmark/benchmarkFile.large not yet in cache, add it

2016-02-29 02:08:57,178 DEBUG s3fs.fs.CachedS3Helper [main] - Path /benchmark/benchmarkFile.large found in cache!

read[0] 131072 bytes from 0

unique: 7, success, outsize: 131088

2016-02-29 02:08:57,179 DEBUG s3fs.fs.CachedS3Helper [main] - Starting actual cache read for path /benchmark/benchmarkFile.large

2016-02-29 02:08:57,179 DEBUG s3fs.fs.CachedS3Helper [main] - Reading data from cache block 0, blockOffset = 0, length = 131072

2016-02-29 02:08:57,179 DEBUG s3fs.fs.CacheEnabledS3fs [main] - Got 131072 bytes from stream, putting to buffer

2016-02-29 02:08:57,180 DEBUG s3fs.fs.CacheEnabledS3fs [main] - Reading file /benchmark/benchmarkFile.large, offset = 131072, read length = 131072

unique: 8, opcode: READ (15), nodeid: 3, insize: 80, pid: 8297

read[0] 131072 bytes from 131072 flags: 0x8000

2016-02-29 02:08:57,570 DEBUG s3fs.fs.CachedS3Helper [main] - Getting data from cache - path = /benchmark/benchmarkFile.large, offset = 131072, length = 131072

2016-02-29 02:08:57,570 DEBUG s3fs.fs.CachedS3Helper [main] - Path /benchmark/benchmarkFile.large found in cache!

2016-02-29 02:08:57,570 DEBUG s3fs.fs.CachedS3Helper [main] - Starting actual cache read for path /benchmark/benchmarkFile.large

2016-02-29 02:08:57,571 DEBUG s3fs.fs.CachedS3Helper [main] - Reading data from cache block 0, blockOffset = 131072, length = 131072

2016-02-29 02:08:57,571 DEBUG s3fs.fs.CacheEnabledS3fs [main] - Got 131072 bytes from stream, putting to buffer

read[0] 131072 bytes from 131072

unique: 8, success, outsize: 131088

*** Error in `/usr/local/bin/jdk1.8.0_65/bin/java': double free or corruption (!prev): 0x00007fcaa8b30c80 ***

總結

以上是生活随笔為你收集整理的fuse java_java中的Fuse文件系统 - JVM错误双重免费或损坏的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 黄色一级免费大片 | 三级爱爱 | 色综合精品 | 午夜精品影院 | 大尺度做爰呻吟舌吻网站 | 欧美美女性生活视频 | 一区二区激情视频 | 国产淫视 | 毛片a| 欧美精品一级 | 强伦轩人妻一区二区电影 | 黄av资源| 99精品欧美一区二区蜜桃免费 | 日本a视频在线观看 | 成人动漫h在线观看 | 欧美区日韩区 | 永久免费在线播放 | 免费观看国产精品视频 | 网友自拍咪咪爱 | 超碰激情在线 | 日本公妇乱淫免费视频一区三区 | 黑人巨大猛烈捣出白浆 | 国产成年视频 | 成人性视频在线 | 欧美视频一区二区在线观看 | 午夜网站在线 | 天堂va蜜桃一区二区三区 | たちの熟人妻av一区二区 | 97伊人久久 | 97欧美视频| 蜜桃av中文字幕 | 日韩淫片| aa成人| 日出白浆视频 | 夜夜骑狠狠干 | 国产精品视频看看 | 久久国内视频 | 在线精品免费视频 | 苍井空亚洲精品aa片在线播放 | 亚洲色图第1页 | 黄色视屏在线免费观看 | 国产嫩草影院久久久 | 免费二区| 亚洲国产视频一区二区三区 | 国产一区二区播放 | 手机看片日本 | 午夜一二区| 一区二区三区四区在线播放 | 男女啪啪资源 | 高h奶汁双性受1v1 | 传媒av在线 | 99re6在线观看 | 婷婷色婷婷开心五月四房播播 | 午夜福利电影一区 | 91丨porny丨中文 | 怎么可能高潮了就结束漫画 | 国产亚洲精品成人无码精品网站 | 九九热精品在线视频 | 少妇又色又紧又黄又刺激免费 | 欧美一级黄色片网站 | 天天摸天天做天天爽 | 91天堂在线视频 | 日本欧美久久久久免费播放网 | 综合网婷婷 | 91久久久久久久久久久久久 | 麻豆视频二区 | 高清在线一区二区三区 | 美女被c出水 | 污导航在线 | 国产精品久久久久久久天堂 | 亚洲午夜电影网 | 午夜在线不卡 | 偷拍久久久| 色小姐综合网 | 精品视频免费在线观看 | 五十路japanese55丰满 | 欧美精品在线免费观看 | 久久久国产一区 | 一本不卡| 天天草天天草 | 日韩一区二区三区电影 | 一级特黄妇女高潮2 | 日本japanese极品少妇 | 久久精品九九 | 色综合久久88色综合天天 | 国产精品久久免费视频 | 国产成人精品网站 | 久久精品国产亚洲AV高清综合 | 欧美日韩成人精品 | 久久亚洲免费视频 | 少妇紧身牛仔裤裤啪啪 | 四虎少妇做爰免费视频网站四 | 五月天丁香婷 | 少妇精品久久久久久久久久 | 狠狠干快播 | 中文字幕无码精品亚洲35 | 136fldh导航福利微拍 | 热99在线 | 精品亚洲aⅴ无码一区二区三区 |