Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Gpdb
提交
6d1ae0c9
G
Gpdb
项目概览
Greenplum
/
Gpdb
通知
7
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gpdb
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
6d1ae0c9
编写于
7月 05, 2000
作者:
T
Tom Lane
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix typo (extraneous semicolon) in fd.c patch to avoid excess seeks.
Now it skips useless SEEK_CUR 0 calls too, as intended.
上级
98fe6703
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
17 addition
and
9 deletion
+17
-9
src/backend/storage/file/fd.c
src/backend/storage/file/fd.c
+17
-9
未找到文件。
src/backend/storage/file/fd.c
浏览文件 @
6d1ae0c9
...
...
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/storage/file/fd.c,v 1.6
1 2000/06/15 04:10:00 momjian
Exp $
* $Header: /cvsroot/pgsql/src/backend/storage/file/fd.c,v 1.6
2 2000/07/05 21:10:05 tgl
Exp $
*
* NOTES:
*
...
...
@@ -809,11 +809,13 @@ FileWrite(File file, char *buffer, int amount)
FileAccess
(
file
);
returnCode
=
write
(
VfdCache
[
file
].
fd
,
buffer
,
amount
);
if
(
returnCode
>
0
)
{
if
(
returnCode
>
0
)
{
VfdCache
[
file
].
seekPos
+=
returnCode
;
/* mark the file as needing fsync */
VfdCache
[
file
].
fdstate
|=
FD_DIRTY
;
}
else
/* mark the file as needing fsync */
VfdCache
[
file
].
fdstate
|=
FD_DIRTY
;
}
else
VfdCache
[
file
].
seekPos
=
FileUnknownPos
;
return
returnCode
;
...
...
@@ -832,6 +834,8 @@ FileSeek(File file, long offset, int whence)
switch
(
whence
)
{
case
SEEK_SET
:
if
(
offset
<
0
)
elog
(
ERROR
,
"FileSeek: invalid offset: %ld"
,
offset
);
VfdCache
[
file
].
seekPos
=
offset
;
break
;
case
SEEK_CUR
:
...
...
@@ -844,9 +848,12 @@ FileSeek(File file, long offset, int whence)
default:
elog
(
ERROR
,
"FileSeek: invalid whence: %d"
,
whence
);
break
;
}
}
}
else
switch
(
whence
)
{
else
{
switch
(
whence
)
{
case
SEEK_SET
:
if
(
offset
<
0
)
elog
(
ERROR
,
"FileSeek: invalid offset: %ld"
,
offset
);
...
...
@@ -854,8 +861,8 @@ FileSeek(File file, long offset, int whence)
VfdCache
[
file
].
seekPos
=
lseek
(
VfdCache
[
file
].
fd
,
offset
,
whence
);
break
;
case
SEEK_CUR
:
if
(
(
offset
!=
0
)
||
(
VfdCache
[
file
].
seekPos
==
FileUnknownPos
));
VfdCache
[
file
].
seekPos
=
lseek
(
VfdCache
[
file
].
fd
,
offset
,
whence
);
if
(
offset
!=
0
||
VfdCache
[
file
].
seekPos
==
FileUnknownPos
)
VfdCache
[
file
].
seekPos
=
lseek
(
VfdCache
[
file
].
fd
,
offset
,
whence
);
break
;
case
SEEK_END
:
VfdCache
[
file
].
seekPos
=
lseek
(
VfdCache
[
file
].
fd
,
offset
,
whence
);
...
...
@@ -864,6 +871,7 @@ FileSeek(File file, long offset, int whence)
elog
(
ERROR
,
"FileSeek: invalid whence: %d"
,
whence
);
break
;
}
}
return
VfdCache
[
file
].
seekPos
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录