Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
0831fd61
Commit
0831fd61
authored
Feb 08, 2006
by
konstantin@mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Apply the diskdata patch by Jonas.
parent
7452faa5
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
2 deletions
+13
-2
storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.cpp
storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.cpp
+13
-2
No files found.
storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.cpp
View file @
0831fd61
...
@@ -370,7 +370,6 @@ void AsyncFile::openReq(Request* request)
...
@@ -370,7 +370,6 @@ void AsyncFile::openReq(Request* request)
const
int
mode
=
S_IRUSR
|
S_IWUSR
|
const
int
mode
=
S_IRUSR
|
S_IWUSR
|
S_IRGRP
|
S_IWGRP
|
S_IRGRP
|
S_IWGRP
|
S_IROTH
|
S_IWOTH
;
S_IROTH
|
S_IWOTH
;
retry:
if
(
flags
&
FsOpenReq
::
OM_CREATE_IF_NONE
){
if
(
flags
&
FsOpenReq
::
OM_CREATE_IF_NONE
){
if
((
theFd
=
::
open
(
theFileName
.
c_str
(),
new_flags
,
mode
))
!=
-
1
)
{
if
((
theFd
=
::
open
(
theFileName
.
c_str
(),
new_flags
,
mode
))
!=
-
1
)
{
close
(
theFd
);
close
(
theFd
);
...
@@ -449,9 +448,21 @@ void AsyncFile::openReq(Request* request)
...
@@ -449,9 +448,21 @@ void AsyncFile::openReq(Request* request)
}
}
if
(
size
!=
0
)
if
(
size
!=
0
)
{
{
int
err
=
errno
;
#ifdef O_DIRECT
if
((
new_flags
&
O_DIRECT
)
&&
off
==
0
)
{
ndbout_c
(
"error on first write(%d), disable O_DIRECT"
,
err
);
new_flags
&=
~
O_DIRECT
;
close
(
theFd
);
theFd
=
::
open
(
theFileName
.
c_str
(),
new_flags
,
mode
);
if
(
theFd
!=
-
1
)
continue
;
}
#endif
close
(
theFd
);
close
(
theFd
);
unlink
(
theFileName
.
c_str
());
unlink
(
theFileName
.
c_str
());
request
->
error
=
err
no
;
request
->
error
=
err
;
return
;
return
;
}
}
off
+=
request
->
par
.
open
.
page_size
;
off
+=
request
->
par
.
open
.
page_size
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment